MSSQL精确清算LOG是删除MSSQL数据库的事务日志文件的一种快速有效的方法。已使用的事务日志文件会占用很大的空间,如果不及时清算,会占据非常大的空间,所以MSSQL精确清算LOG很重要。下面介绍扼要的MSSQL精确清算LOG的步骤:
**1. 在履行清算之前,先备份数据库**
最重要的一步是备份现有的数据库以避免出现意外。清算事务日志时需要用到两个备份:FULL与LOG。FULL用于备份全部数据库,LOG用于备份当前事务日志中的所有事务。
“`sql
BACKUP DATABASE dbname TO DISK=’C:\backup.bak’ WITH FORMAT, INIT;
GO
BACKUP LOG dbname TO DISK=’C:\backup.trn’ WITH FORMAT, INIT;
GO
**2. 履行DBCC SHRINKFILE**
使用DBCC SHRINKFILE可以精确清算LOG文件。通过指定表空间id和文件id来进行指定文件的清算,清算的文件用Truncate_only参数来指定,这里一定要要保证当前的LOG文件不会被重新生成,只有在这类情况下才能够履行DBCC SHRINKFILE,以精确清算LOG文件。
```sqlDBCC SHRINKFILE(dbname_LOG, Truncate_only)
GO
**3. 检查文件会不会被清算**
使用CHECKPOINT来检查文件会不会被清算,检查方法是履行完CHECKPOINT命令后,查看MSSQL的实例,看看在日志文件的整体使用量中,会不会有文件被删除空间。
“`sql
CHECKPOINT
GO
**4. 日志复制到另外一实例**
开发测试时经常常需要从日志文件复制到另外一实例,为了安全起见,一定要要采取备份进行复制,首先,要在要复制到实例上履行RESTORE LOG 命令。
```sqlRESTORE LOG dbname FROM DISK='C:\backup.trn' WITH REPLACE, NOUNLOAD;
GO
本文扼要介绍了MSSQL精确清算LOG的方法,步骤是在清算之前备份数据库,履行DBCC SHRINKFILE,检查会不会有文件被清算,并且把日志文件复制到另外一实例,以便进行开发测试。一定要采取备份进行复制,以确保安全性。MSSQL精确清算LOG是快速、安全、有效的清算事务日志文件的方法,建议在使用MSSQL数据库时定期履行清算,以免空间被日志文件占用。
本文来源:https://www.yuntue.com/post/203652.html | 云服务器网,转载请注明出处!

微信扫一扫打赏
支付宝扫一扫打赏