數據庫 備份后 無法還原 解決辦法(SQLSERVER)

          有時候完全備份, 當還原的時候說不時數據庫文件不讓還原, 解決辦法:
                  可以直接復制數據庫文件, xxx.mdf 和  xxx.ldf
           
                  用 sp_attach_db  存儲過程 就能搞定.
           
          示例  
            下面的示例將   pubs   中的兩個文件附加到當前服務器。  
             
            EXEC   sp_attach_db   @dbname   =   N'pubs',    
                  @filename1   =   N'c:\Program   Files\Microsoft   SQL   Server\MSSQL\Data\pubs.mdf',    
                  @filename2   =   N'c:\Program   Files\Microsoft   SQL   Server\MSSQL\Data\pubs_log.ldf'  
           
           
          N表示Unicode的含義,就象類型中有varchar和nvarchar一樣,一個Unicode字符占兩個字節.使用N'的情況主要是在雙字節系統環境中強制系統對每個字符用Unicode標準來解釋,否則如果你的數據庫.mdf文件是中文名而又不加N'的話,數據庫加載后名稱可能就變成亂碼,因為系統按單字節處理字符造成!
           
           
          ............................................................
           
           
          如果確認是SQL   SERVER無法啟動,請按照下面步驟操作:  
            1.重裝SQL   SERVER(注意要保留原來數據庫的數據庫文件,日志文件可不要)  
            2.在SQL   Analysis中用sp_attach_db將數據庫加到服務器  
             
            sp_attach_db用法:  
            sp_attach_db  
            將數據庫附加到服務器。  
             
            語法  
            sp_attach_db   [   @dbname   =   ]   'dbname'  
                    ,   [   @filename1   =   ]   'filename_n'   [   ,...16   ]  
             
            參數  
            [@dbname   =]   'dbname'  
             
            要附加到服務器的數據庫的名稱。該名稱必須是唯一的。dbname   的數據類型為   sysname,默認值為   NULL。    
             
            [@filename1   =]   'filename_n'  
             
            數據庫文件的物理名稱,包括路徑。filename_n   的數據類型為   nvarchar(260),默認值為   NULL。最多可以指定   16   個文件名。參數名稱以   @filename1   開始,遞增到   @filename16。文件名列表至少必須包括主文件,主文件包含指向數據庫中其它文件的系統表。該列表還必須包括數據庫分離后所有被移動的文件。  
             
            返回代碼值  
            0(成功)或   1(失敗)  
             
            結果集  
            無  
             
            注釋  
            只應對以前使用顯式   sp_detach_db   操作從數據庫服務器分離的數據庫執行   sp_attach_db。如果必須指定多于   16   個文件,請使用帶有   FOR   ATTACH   子句的   CREATE   DATABASE。  
             
            如果將數據庫附加到的服務器不是該數據庫從中分離的服務器,并且啟用了分離的數據庫以進行復制,則應該運行   sp_removedbreplication   從數據庫刪除復制。  
             
            權限  
            只有   sysadmin   和   dbcreator   固定服務器角色的成員才能執行本過程。  

          posted on 2009-04-06 12:18 胡鵬 閱讀(1943) 評論(0)  編輯  收藏 所屬分類: 數據庫工具 and 軟件

          導航

          <2009年4月>
          2930311234
          567891011
          12131415161718
          19202122232425
          262728293012
          3456789

          統計

          常用鏈接

          留言簿(3)

          隨筆分類

          隨筆檔案

          agile

          搜索

          最新評論

          閱讀排行榜

          評論排行榜

          主站蜘蛛池模板: 沂南县| 密云县| 奉化市| 霍林郭勒市| 马边| 黄骅市| 定南县| 文登市| 新宁县| 邹平县| 宁夏| 抚顺市| 安新县| 嘉黎县| 郎溪县| 苏尼特右旗| 古浪县| 渑池县| 定州市| 隆昌县| 萍乡市| 青神县| 宿迁市| 高唐县| 兴海县| 深州市| 明光市| 华容县| 从化市| 罗定市| 江安县| 巧家县| 和田市| 琼结县| 康乐县| 丁青县| 清镇市| 邳州市| 长春市| 五家渠市| 赫章县|