批處理(bat)實現SQLServer資料庫備份與還原
備份資料庫.bat
@echo off
set path=%path%;C:\Program Files (x86)\Microsoft SQL Server\80\Tools\Binn
echo 資料庫備份開始
osql.exe -S 127.0.0.1 -U sa -P 123456 -i sqlserverbackup.sql -o c:\backup\sqlserverbackup.out
echo 資料庫備份完成
pause
sqlserverbackup.sql
DECLARE @name varchar(50)
DECLARE @datetime char(14)
DECLARE @path varchar(255)
DECLARE @bakfile varchar(255)
set @name='DataSample'
set @datetime=CONVERT(char(8),getdate(),112) + REPLACE(CONVERT(char(8),getdate(),108),':','')
set @path='c:\backup\'
set @bakfile=@path+''+@name+'_'+'bak_'+@datetime+'.BAK'
backup database @name to disk=@bakfile with name=@name
go
還原資料庫.bat
@echo off
echo 開始還原資料庫
net start "mssqlserver"
osql -U sa -P 123456 -i c:\backup\sqlserverrestore.sql -o c:\backup\sqlserverrestore.out
echo 還原資料庫完成
pause
sqlserverrestore.sql
declare @dumpfile varchar(50)
declare @msg varchar(70)
select @dumpfile = 'c:\backup\DataSample_bak_20170718145556.BAK'
select @msg=convert(char(26),getdate(),9)
print @msg
restore DATABASE DataSample from disk=@dumpfile
if (@@ERROR <> 0 )
begin
select @msg=convert(char(26),getdate(),9)+'-----還原資料失敗或出現異常'
print @msg
end
else
begin
select @msg=convert(char(26),getdate(),9)+'-----資料庫還原完畢'
print @msg
end
declare @dumpfile varchar(50)
declare @msg varchar(70)
select @dumpfile = 'c:\backup\DataSample_bak_20170718161443.BAK'
select @msg=convert(char(26),getdate(),9)
print @msg
----同一個備份檔案還原成不同名稱資料庫
RESTORE DATABASE DataSample1
FROM disk=@dumpfile
WITH RECOVERY,
MOVE 'DataSample' TO 'D:\MyData\DataSample1.mdf',
MOVE 'DataSample_Log' TO 'D:\MyData\DataSample1_Log.ldf'
if (@@ERROR <> 0 )
begin
select @msg=convert(char(26),getdate(),9)+'-----還原資料失敗或出現異常'
print @msg
end
else
begin
select @msg=convert(char(26),getdate(),9)+'-----資料庫還原完畢'
print @msg
end
相關文章
- sqlserver資料庫的備份還原SQLServer資料庫
- sqlserver資料庫備份,還原操作SQLServer資料庫
- 經典資料庫備份與還原處理(轉鄒建)資料庫
- mysql資料庫-備份與還原實操MySql資料庫
- 【Mongodb】資料庫備份與還原MongoDB資料庫
- 華納雲 sqlserver資料庫備份及還原的方法SQLServer資料庫
- 達夢資料庫的備份與還原資料庫
- 「MySQL」資料庫備份和還原MySql資料庫
- 「Oracle」Oracle 資料庫備份還原Oracle資料庫
- MySQL的資料備份與還原MySql
- Mysql備份和還原資料庫-mysqldumpMySql資料庫
- 資料庫單表備份還原shell資料庫
- Oracle資料庫備份還原詳解XKUSOracle資料庫
- java mysql 資料庫備份和還原操作JavaMySql資料庫
- 詳解SQL Server 2012資料庫備份與還原的教程SQLServer資料庫
- Centos-Mysql複製備份還原資料庫CentOSMySql資料庫
- 資料庫的備份和還原不成功資料庫
- Sqlserver資料庫使用 .bak 檔案還原資料庫SQLServer資料庫
- SqlServer資料庫恢復備份資料的方法SQLServer資料庫
- Mysql資料備份和還原MySql
- 雲伺服器mysql備份與還原資料庫命令詳解伺服器MySql資料庫
- bat 批處理字串操作BAT字串
- SQL Server2019資料庫備份與還原指令碼,資料庫可批量備份SQLServer資料庫指令碼
- golang實現mysql資料庫備份GolangMySql資料庫
- 陪玩系統原始碼中mysql資料庫備份還原的實現程式碼原始碼MySql資料庫
- [SQLServer]NetCore中將SQLServer資料庫備份為Sql指令碼SQLServerNetCore資料庫指令碼
- BMMySQL定時備份資料庫(全庫備份)的實現meuMySql資料庫
- bat批處理常用指令碼BAT指令碼
- SQLServer資料庫日誌太大處理方式SQLServer資料庫
- Ubuntu Desktop: 備份與還原Ubuntu
- 實現MySQL資料庫的實時備份MySql資料庫
- SQLSERVER完整資料庫還原(完整恢復模式)SQLServer資料庫模式
- mssql sqlserver 快速表備份和表還原的方法SQLServer
- Sqlserver關於校驗和_備份還原的CHECKSUMSQLServer
- sql運算元據庫(2)--->DQL、資料庫備份和還原SQL資料庫
- windows 批處理備份目錄指令碼Windows指令碼
- KOSQL Server2019資料庫備份與還原指令碼(批量備份)zrbSQLServer資料庫指令碼
- 恆訊科技:雲伺服器資料備份與還原伺服器
- Redis 通過 RDB 方式進行資料備份與還原Redis