##### 簡要介紹 SQL Server提供了“分離/附加”數據庫、“備份/還原”數據庫、複製數據庫等多種數據庫的備份和恢復方法。這裏介紹一種學習中常用的“分離/附加”方法,類似於大家熟悉的“文件拷貝”方法,即把數據庫文件(.MDF)和對應的日誌文件(.LDF)拷貝到其它磁盤上作備份,然後把這兩個文件再拷貝到任何需要這個數據庫的系統之中。比如,在實驗教學過程中,同學們常常想把自己在學校實驗室計算機中創建的數據庫搬遷到自己的計算機中而不想重新創建該數據庫,就可以使用這種簡單的方法。但由於數據庫管理系統的特殊性,需要利用SQL Server提供的工具才能完成以上工作,而直接的文件拷貝是行不通的。
這個方法涉及到SQL Server分離數據庫和附加數據庫這兩個互逆操作工具。
1、分離數據庫就是將某個數據庫(如student_Mis)從SQL Server數據庫列表中刪除,使其不再被SQL Server管理和使用,但該數據庫的文件(.MDF)和對應的日誌文件(.LDF)完好無損。分離成功後,我們就可以把該數據庫文件(.MDF)和對應的日誌文件(.LDF)拷貝到其它磁盤中作爲備份保存。
2、附加數據庫就是將一個備份磁盤中的數據庫文件(.MDF)和對應的日誌文件(.LDF)拷貝到需要的計算機,並將其添加到某個SQL Server數據庫服務器中,由該服務器來管理和使用這個數據庫。
分離
使用SSMS工具分離數據庫
- 展開”數據庫“,右擊需要分離的數據庫,選擇“任務”,在任務中選擇“分離”。
- 進入“分離數據庫”界面,點擊確定。
- 分離成功後,數據庫會從數據庫實例中分離出去。
使用SQL方式分離數據庫
- 在SSMS工具欄中單擊“新建查詢”,打開“SQL編輯器”窗口
- 輸入創建SQL代碼
EXEC sp_detach_db school --使用系統過程分離數據庫
- 點擊“分析”按鈕,或按住Ctrl+F5,對SQL代碼進行語法分析,確保SQL語句語法正確。
- 點擊“執行”按鈕,或按住F5,執行SQL代碼。
- 執行成功後,刷新一下,可以看到,數據庫已經被分離出去了。
附加
使用SSMS工具附加數據庫
- 右擊“數據庫”,選擇“附加”。
- 進入“附加數據庫”界面,點擊“添加”按鈕。
- 在文件選擇對話框中添加需要附加的數據庫的主要數據文件(.mdf文件),點擊確定。
- 此時,“附加數據庫”界面中會顯示出該數據庫的相關數據庫文件,確認無誤後,點擊確定即可附加數據庫。
- 在“對象資源管理器”中,展開“數據庫”,可以看到數據庫附加成功。
使用SQL方式附加數據庫
- 在SSMS工具欄中單擊“新建查詢”,打開“SQL編輯器”窗口
- 輸入創建SQL代碼
附加方式一:
EXEC sp_attach_db --使用系統過程附加數據庫
@dbname='schoolDB',
@filename1='E:\Microsoft SQL Server\MSSQL11.MSSQLSERVER\MSSQL\DATA\schoolDB.mdf',
@filename2='E:\Microsoft SQL Server\MSSQL11.MSSQLSERVER\MSSQL\DATA\schoolDB_log.ldf'
附加方式二:
--以附加的方式創建數據庫
USE master
GO
CREATE DATABASE schoolDB
ON
(FILENAME='E:\Microsoft SQL Server\MSSQL11.MSSQLSERVER\MSSQL\DATA\schoolDB.mdf'),
(FILENAME='E:\Microsoft SQL Server\MSSQL11.MSSQLSERVER\MSSQL\DATA\schoolDB_log.ldf')
FOR ATTACH
- 點擊“分析”按鈕,或按住Ctrl+F5,對SQL代碼進行語法分析,確保SQL語句語法正確。
- 點擊“執行”按鈕,或按住F5,執行SQL代碼。
- 執行成功後,刷新一下,可以看到,數據庫已經被附加成功。