1.但数据库日志文件太大时,可以先备份再用下面的语句压缩。
Sample:
Use BranchDB
alter database BranchDB set RECOVERY SIMPLE
--DBCC Shrinkfile(BranchDB_log,NOTRUNCATE)
DBCC Shrinkfile(BranchDB_log,TRUNCATEONLY)
alter database BranchDB set RECOVERY Full
2. 对多个服务器上的数据库日志压缩。
1).创建一个服务器列表文件 servers.txt,内容如下: DBServer1 DBServer2 DBServer3
2). 创建一个执行命令 sqlcmd.bat, 内容如下(注意参数的大小写):
for /f "tokens=*" %%a in (servers.txt) do (
sqlcmd.exe -S %%a -d BranchDB -i C:\ShrinkLogs\shrinkScript.sql )
pause:
rem 其中C:\ShrinkLogs\shrinkScript.sql内容包含要执行的sql语句,此处用
其他: 远程备份多个机器上的同名数据库命令,批处理内容包含以下内容即可:
Set OutPutFolder=\\DBBakServer\DBBackup\
Set OutFile=_TestDB.bak
for /f "tokens=*" %%a in (servers.txt)
do (
sqlcmd.exe -S %%a -Q "Backup database TestDB to disk = N'%OutPutFolder%%%a_%OutFile%'"
)
说明:具体命令参数可以查看sqlcmd命令的帮助,比如需要用户名秘密之类。