SqlServer 命令方式備份與還原


1.備份一個bak文件,其中database_name為數據庫名,目錄路徑需要存在。這是完整備份。

BACKUP DATABASE [database_name]
TO DISK='D:\database_name.bak'

2.檢查備份文件的邏輯信息,主要為LogicName,一個是數據文件mdf,一個是日志文件ldf

RESTORE FILELISTONLY
FROM DISK = 'D:\database_name.bak';

image

3.還原數據庫

RESTORE DATABASE [database_name]
FROM DISK='D:\database_name.bak'

若還原到本地,且改名的需求,可用以下命令,其中Move后的字符串,為第二部中查詢到的邏輯名LogicName

RESTORE DATABASE [database_name]
FROM DISK='D:\database_name.bak'
WITH
MOVE 'database_name' TO 'C:\Program Files\Microsoft SQL Server\MSSQL11.MSSQLSERVER\MSSQL\DATA\new_database_name.mdf',
MOVE 'database_name_log' TO 'C:\Program Files\Microsoft SQL Server\MSSQL11.MSSQLSERVER\MSSQL\DATA\new_database_name_log.ldf',
STATS = 10,REPLACE

其他幾個常用命令

--脫庫,使數據庫離線,不會有其他鏈接上來
ALTER DATABASE [database_name] SET OFFLINE WITH ROLLBACK IMMEDIATE
--掛載,是數據庫重新上線
ALTER DATABASE [database_name] SET ONLINE  
--當數據庫顯示正在恢復中,是用該命令可恢復正常
RESTORE DATABASE [database_name] WITH RECOVERY
--當數據庫顯示單用戶,該命令修改為多用戶正常模式
ALTER DATABASE [database_name] SET MULTI_USER

差異備份

BACKUP DATABASE [database_name]
TO DISK='D:\database_name_diff.bak'
WITH DIFFERENTIAL

鏡像備份

BACKUP DATABASE [database_name]
TO DISK='D:\database_name_mirror1.bak'
MIRROR
TO DISK='D:\database_name_mirror2.bak'
WITH FORMAT


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM