数据库

位置:IT落伍者 >> 数据库 >> 浏览文章

利用SQL Server复制技术实现数据同步更新[2]


发布日期:2018年11月26日
 
利用SQL Server复制技术实现数据同步更新[2]

事务在不断增大的时候如何缩小日志

当数据如在频繁修改或者删除的同时事务的日志就会不断的增加甚至超过了碰盘的大小这时候就不能因此而直接删除了事务日志的LDF文件否则可能会带来很大的麻烦为了避免这种情况我们需要有如下的操作

()尽量避免tempdb 日志与用户数据库日志放在同一磁盘上tempdb 数据库和事务日志具有足够的空间来处理索引操作不能在索引操作完成之前截断 tempdb 事务日志

()通过执行下列命令来缩小事务日志

DBCC SHRINKDATABASE

DBCC SHRINKFILE

操作会立即尝试将物理日志文件收缩为所要求的大小

如果虚拟日志文件中的逻辑日志未超出 target_size 标记则释放 target_size 标记之后的虚拟日志文件并成功完成 DBCC 语句不显示任何信息

如果虚拟日志中的逻辑日志超出了 target_size 标记SQL server Database Engine 将释放尽可能多的空间并显示一个信息性消息该消息告诉您必须执行什么操作来从文件尾部的虚拟日志中删除逻辑日志执行完该操作后可以重新发出 DBCC 语句以释放剩余的空间

DBCC SHRINKFILE 语句还显示一个信息性消息指出它不能释放所要求的全部空间并告诉您可以执行 BACKUP LOG 语句来释放剩余的空间

事务日志的还原

事务日志在还原的时候可以选择三种恢复模式简单模式完整模式和大容量日志模式

简单恢复模式:

此模式简略地记录大多数事务所记录的信息只是为了确保在系统崩溃或还原数据备份之后数据库的一致性

由于旧的事务已提交已不再需要其日志因而日志将被截断截断日志将删除备份和还原事务日志但是这种简化是有代价的在灾难事件中有丢失数据的可能没有日志备份数据库只可恢复到最近的数据备份时间如果您使用的是 sql server Enterprise Edition需要考虑此问题此外该模式不支持还原单个数据页

完整恢复模式:

此模式完整地记录了所有的事务并保留所有的事务日志记录直到将它们备份在 sql server Enterprise Edition 中完整恢复模式能使数据库恢复到故障时间点

大容量日志恢复模式:

此模式简略地记录大多数大容量操作(例如索引创建)完整地记录其他事务

大容量日志恢复提高大容量操作的性能常用作完整恢复模式的补充大容量日志恢复模式支持所有的恢复形式但是有一些限制备份包含大容量日志记录操作的日志时需要访问数据库内的所有数据文件如果数据文件不可访问则无法备份最后的事务日志而且该日志中所有已提交的操作都将丢失

[] []

               

上一篇:利用SQL Server复制技术实现数据同步更新[1]

下一篇:关于SQL Server数据库备份和恢复特性介绍