--數據庫備份到指定文件夾命令
BACKUP DATABASE TestDATABASE TO DISK = 'C:\Backup\TestDB_Backup.bak'
--獲取數據庫的獨占訪問權
ALTER DATABASE TestDATABASE SET OFFLINE WITH ROLLBACK IMMEDIATE
--通過.bak文件恢復數據庫的SQL語句
USE master
RESTORE DATABASE TestDATABASE
FROM DISK = 'C:\Backup\TestDB_Backup.bak'
//這里可以不用系統會自動替換
WITH REPLACE,
--注意:這里MOVE后面的兩個值來自之前第二步查詢的LogicalName,TO后面的值是需要恢復的數據庫文件及日志文件
MOVE 'data1' TO 'C:\Program Files\Microsoft SQL Server\MSSQL10_50.MSSQLSERVER\MSSQL\DATA\TestDATABASE.mdf',
MOVE 'log' TO 'C:\Program Files\Microsoft SQL Server\MSSQL10_50.MSSQLSERVER\MSSQL\DATA\TestDATABASE_log.ldf'
GO
--上面部分代碼已經通過.bak文件恢復了數據庫,下面這句代碼將數據庫的獨占訪問權釋放
ALTER DATABASE TestDATABASE SET ONLINE
數據庫還原后,如果用戶名和登錄名都已經存在,一定要綁定用戶名和登錄名。
use TestDATABASE
go
sp_change_users_login 'update_one', 'dbyxdowndata','dbyxdowndata'