1. 程式人生 > >SQLServer附加資料庫失敗

SQLServer附加資料庫失敗

在匯入資料庫時我們有時會遇到錯誤,常見的兩種錯誤的解決辦法在這裡作一作總結:

一、升級問題

在SQLServer2014中附加資料庫時失敗,在附加資料庫的時候卻提示無法升級資料庫,錯誤539。點選訊息詳情之後能夠看到如下錯誤:


附加資料庫 對於 伺服器“PC-20160315”失敗。  (Microsoft.SqlServer.Smo)
有關幫助資訊,請單擊: http://go.microsoft.com/fwlink?ProdName=Microsoft+SQL+Server&ProdVer=12.0.2000.8+((SQL14_RTM).140220-1752)&EvtSrc=Microsoft.SqlServer.Management.Smo.ExceptionTemplates.FailedOperationExceptionText&EvtID=附加資料庫+Server&LinkId=20476
------------------------------
其他資訊
執行 Transact-SQL 語句或批處理時發生了異常。 (Microsoft.SqlServer.ConnectionInfo)
------------------------------
無法升級資料庫 'jspjiaoshidanganxns',因為此版本的 SQL Server 不支援該資料庫的非釋出版本(539)。不能開啟與此版本的 sqlservr.exe 不相容的資料庫。必須重新建立該資料庫。
無法開啟新資料庫 'jspjiaoshidanganxns'。CREATE DATABASE 中止。 (Microsoft SQL Server,錯誤: 950)
有關幫助資訊,請單擊: http://go.microsoft.com/fwlink?ProdName=Microsoft%20SQL%20Server&EvtSrc=MSSQLServer&EvtID=950&LinkId=20476



出現這種問題主要是由於資料庫版本不一致,具體來說是由於要匯入的資料庫檔案版本太低,不能適應新版本軟體,對於這種問題,我們只需將需要匯入的資料庫檔案先匯入較低版本比如2005或者2008版本的資料庫,使用分離技術後然後再到回到SQLServer2014版本,注意在匯入時計算機的位數要一致,然後再匯入到2014版本中即可。

下面就讓我們來看看具體的做法:

1、先將要安裝的資料庫檔案複製到裝有SQLServer2005或者SQLServer2008的作業系統中,然後進行匯入,其具體過程如下圖所示現將如下檔案拷貝至擁有SQLServer2005/2008的作業系統:                    

圖1

2、匯入資料庫:開啟SQLServer2005後右鍵選中“資料庫,會出現下拉列表,然後選中“附加”

            

 圖2

3、點選“附加”按鈕之後,我們能夠看到出現如下介面

                                                                                          圖3

4、點選“新增”按鈕,開啟要匯入的資料庫,然後點選確定按鈕,出現如下圖所示結果,我們能夠清楚地看到資料庫已經匯入到SQLServer2005中

                                                              

                                                                                                           圖4

5、選中已經匯入的資料庫,如下所選中的檔案,右鍵點選,出現下拉列表,選中“任務->分離”,之後出現如下介面,點選確定:

                                                                                                                                       圖5

6、點選確定之後出現如下圖所示介面,之前匯入的檔案已經不見,此時已經完成了轉化的工作:

                                                                                       

                                                                                                                  圖6

7、接下來我們只需將分理處的檔案拷貝到自己所使用的環境,也就是裝有SQLServer2014版本的作業系統,繼續進行匯入工作,如下圖所示:

                                                                     

                                                                                                       圖7

8、點選“附加”之後,我們能夠看到和SQLServer2005一樣的匯入介面,如下圖所示

                                                                                                                        圖8

9、按照SQLServer2005匯入的方法匯入即可,這樣我們就完成了附加資料庫時由於版本不一致導致的出錯問題,即資料庫的升級問題。

注:

以下是查詢到的Sql Server2012以前的微軟所有 Sql Server資料庫的內部版本號列表: (Sql Server2012資料庫的內部版本號為 706)

Target SQL Server Version

Source SQL Server Version

Internal Database Version

SQL Server 2008 R2

SQL Server 2008 R2

665

SQL Server 2008

661

SQL Server 2005 with vardecimal enabled

612

SQL Server 2005

611

SQL Server 2000

539

SQL Server 2008

SQL Server 2008

661

SQL Server 2005 with vardecimal enabled

612

SQL Server 2005

611

SQL Server 2000

539

SQL Server 2005 SP2+

SQL Server 2005 with vardecimal enabled

612

SQL Server 2005

611

SQL Server 2000

539

SQL Server 7

515

SQL Server 2005

SQL Server 2005

611

SQL Server 2000

539

SQL Server 7

515

SQL Server 2000

SQL Server 2000

539

SQL Server 7

515

SQL Server 7

SQL Server 7

515

通過以上表,我們就可以很快理解這個錯誤提示了。如果要檢視Sql Server的內部版本號,也可以通過下面的Sql句來檢視: 

SELECT DATABASEPROPERTYEX('MASTER','VERSION')

二、許可權問題

在匯入資料庫時,出現如下所示問題

                              

                                                                                               圖1

這是由於許可權問題,即Windows系統許可權與SQLServer資料庫之間的許可權,對於這種問題,我們有以下解決辦法

(一):修改許可權

1、對於jspjiaoshidanganxns_Data.MDF的資料庫檔案,右鍵選中點選屬性,選擇TAB標籤“安全”,如下圖所示,選中“Authentiated Users”點選編輯按鈕:

                                       

                                                                                           圖2

2、接著出現如下所示介面,賦予使用者完全控制命令,點選“應用”,“確認”按鈕

                                               

                                                                                              圖3

3、對於jspjiaoshidanganxns_Log.LDF檔案同樣使用上述方法進行操作,然後進行匯入即可順利完成

(二)複製到SQLServer資料資料夾

1、如下圖所示將需要匯入的資料庫複製到DATA資料夾下,其路徑為安裝路徑下的:G:\SQL Server2014\Program Files\Microsoft SQL Server\MSSQL12.MSSQLSERVER\MSSQL\DATA

2、接著進行匯入即可順利完成匯入工作

以上就是SQLServer附加時常見的問題

相關推薦

SQLServer附加資料庫失敗

在匯入資料庫時我們有時會遇到錯誤,常見的兩種錯誤的解決辦法在這裡作一作總結:一、升級問題在SQLServer2014中附加資料庫時失敗,在附加資料庫的時候卻提示無法升級資料庫,錯誤539。點選訊息詳情之後能夠看到如下錯誤:附加資料庫 對於 伺服器“PC-20160315”失敗

SQLSERVER還原資料庫失敗:錯誤: 3154的解決辦法

      前幾天將公司原有的.net程式遷移到新的伺服器,往新伺服器匯入sql server 的備份檔案的時候,出現了"SQLSERVER還原資料庫失敗:錯誤: 3154"的提示,百度了下找到了解決辦法,特此將這次解決方法記錄到部落格裡.也方便大家檢視.

sqlserver2008附加資料庫失敗,無法升級資料庫,因為它是隻讀的

1.將要附加的檔案拷貝到 SQL Server 預設的 Data 目錄,此時附加就會成功; 2.在登入驗證時,選擇“Windows身份驗證”,而不是“SQL Server身份驗證”,即便你的登入帳號

SQL Server2014附加資料庫失敗,無法開啟物理檔案 作業系統錯誤,拒絕訪問

在SQL Server 2014上附加低版本資料庫時收到錯誤提示 無法開啟物理檔案************,作業系統錯誤5:"5(拒絕訪問。)",(MicrosoftSQL  Server, 錯誤:5120) 進入控制面板->服務,找到SQL Server例項服

關於SqlServer2012,附加資料庫 失敗的一個解決辦法

今天,做一個刪除資料庫的實驗,但一不小心就把自己之前建好的資料庫給刪掉了!!!(裡面所有資料。。over) 問題是沒有做過備份!!不過這一次很幸運的,我把mdf和ldf兩個檔案前兩天才拷到U盤裡了,想想應該是可以恢復的吧,就著手試試。 但是,there is 啊 big p

如何備份和附加你的sqlserver 2014資料庫檔案

前言 當我們對自己的程式進行復制和備份時,一定別忘了對資料庫進行備份。昨天小編圖省事轉載了一篇資料庫備份和恢復的部落格,然而今天一試根本看不懂,遂自己寫了一篇。 正文 備份 <1>

ORACLE重灌之後恢復資料庫,相當於sqlserver附加資料庫

在開發機器上經常會遇到重灌系統的問題,重灌之前如果ORACLE沒有及時備份的話重灌之後就糾結了,資料還原很頭疼。 各種娘中只能找到一些ORACLE安裝與重灌系統前目錄相同的解決辦法,目錄不同就沒招了。 我用的是oracle11G。老版的應該相似。 經過我的嘗試,找到了幾個關鍵點,現在分享出來。 1、控

附加資料庫對於伺服器****失敗

這個問題 其實網上一搜索 大把的答案!我這裡貼出來只為自己 方便以後檢視 以免到時候又得網上搜索了。 錯誤資訊: 附加資料庫對於伺服器****失敗 ->  其他資訊:執行Transact-SQL語句或批處理時發生了異常。    ->無法開啟屋裡檔案"..\..

ASP.NET附加資料庫檔案的方式,如何釋出到IIS7而不導致SQLServer出錯

VS2010為ASP.NET開發提供了極便利的方式,尤其是支援直接把資料庫檔案放到專案檔案加APP_DATA下,並且整合SQL Server Management Studio的各種操作資料視窗。以及把資料庫聯接字串寫入配置檔案web.config中。如下所示: <co

站長篇----遠端連線資料庫失敗的解決方法

前言 遠端連線資料出錯,報: host “XXXXXXXXXXXX” is not allowed to connect to this MySql server unable to authentic SSH tunnel: Invalid user

ERROR 2003 (HY000): Can't connect to MySQL server on '192.168.0.10' (111) 客戶端連線 centos 7 mysql 資料庫失敗

參考 https://stackoverflow.com/questions/1673530/error-2003-hy000-cant-connect-to-mysql-server-on-127-0-0-1-111 排查了 /etc/my.cnf 裡面的 bin

SqlServer壓縮資料庫日誌

declare @dbName varchar(20)--資料庫名稱 declare @dbNamelog varchar(20)--資料庫日誌檔名稱 --替換成自己的檔名稱 select @dbName='dbname' select @dbNamelog='dbname_log' declar

(轉)SQLServer查詢資料庫各種歷史記錄

          原文地址https://www.cnblogs.com/seusoftware/p/4826958.html   在SQL Server資料庫中,從登陸開始,然後做了什麼操作,以及資料庫

SQLServer資料庫型別對應Java中資料型別

SQL Server 型別 JDBC 型別 (java.sql.Types) Java 語言型別 bigint BIGINT long timestamp binary

SQLServer 斷開資料庫連線

資料庫名:test1   1. 查詢資料庫當前連線 select * from master.sys.sysprocesses where dbid = db_id('test1')      2. 斷開指定連線 語法:kill spid號 如: ki

SQLServer資料庫行鎖

行鎖使用注意事項 1、ROWLOCK行級鎖確保在使用者取得被更新的行,到該行進行更新,這段時間內不被其它使用者所修改。因而行級鎖即可保證資料的一致性,又能提高資料操作的併發性。 2、ROWLOCK告訴SQL Server只使用行級鎖,ROWLOCK語法可以使用在SELECT,UPDATE和DELETE語句

navicat連線本地VMware Workstation Pro中虛擬機器(ubuntu 16)中的mysql資料庫失敗

1.檢視虛擬機器ip 2.以管理員身份開啟命令列視窗,出現下圖說明虛擬機器允許外部訪問 ping 192.168.31.128 3.telnet用於遠端管理連線主機,檢視虛擬主機是否可以被遠端連線 telnet 192.168

Microsoft SQL Server Management Studio 附加資料庫時出錯。有關詳細資訊,請單擊……

在製作畢業設計的作業時,需要連線SQL資料庫,在附加.mdf資料庫檔案時,出現了這個錯誤。於是上網查閱。我列出幾個解決辦法:基本上都是許可權問題,或者認證方式以及版本問題。 1.找到.mdf檔案,右擊,屬性——安全——編輯——新增——高階——立即查詢——選中everyone——確定,然

MS SqlServer 通過資料庫日誌檔案找回已刪除的記錄

1.建立演示資料(建立資料庫資料表新增基礎資料) 1.1 建立資料庫 1.2 建立資料表 1.3填充資料 1.4做資料庫完整備份   2.模擬誤刪除、記錄操作時間、備份資料庫日誌 2.1刪除資料並記錄操作時間   2.2立即進行日誌備份  

java連線OA信用盤平臺搭建Mysql資料庫失敗

無法連線到資料庫:OA信用盤平臺搭建《企娥21717 93408》可能是因為匯入的mysql-connector-java-x.x.xx.jar版本過低,無資料庫版本不匹配。解決辦法:下載最新的包匯入即可mysql的時區錯誤問題: The server time zone value 'Öйú±ê׼ʱ¼