数据同步方式 利用SQL Server复制技术实现数据同步更新[2]
利用SQL Server复制技术实现数据同步更新[2]
二 事务在不断增大的时候如何缩小日志
当数据如在频繁修改或者删除的同时 事务的日志就会不断的增加 甚至超过了碰盘的大小 这时候就不能因此而直接删除了事务日志的LDF文件 否则可能会带来很大的麻烦 为了避免这种情况 我们需要有如下的操作
( )尽量避免tempdb 日志与用户数据库日志放在同一磁盘上 tempdb 数据库和事务日志具有足够的空间来处理索引操作 不能在索引操作完成之前截断 tempdb 事务日志
( )通过执行下列命令来缩小事务日志
DBCC SHRINKDATABASE DBCC SHRINKFILE
操作会立即尝试将物理日志文件收缩为所要求的大小
![数据同步方式 利用SQL Server复制技术实现数据同步更新[2]](http://img.zhputi.com/uploads/ac62/ac628f57b819380156a63763de1917b525307.jpg)
如果虚拟日志文件中的逻辑日志未超出 target_size 标记 则释放 target_size 标记之后的虚拟日志文件 并成功完成 DBCC 语句 不显示任何信息
如果虚拟日志中的逻辑日志超出了 target_size 标记 SQL server Database Engine 将释放尽可能多的空间并显示一个信息性消息 该消息告诉您必须执行什么操作来从文件尾部的虚拟日志中删除逻辑日志 执行完该操作后 可以重新发出 DBCC 语句以释放剩余的空间
DBCC SHRINKFILE 语句还显示一个信息性消息 指出它不能释放所要求的全部空间 并告诉您可以执行 BACKUP LOG 语句来释放剩余的空间
三 事务日志的还原
事务日志在还原的时候可以选择三种恢复模式 简单模式 完整模式和大容量日志模式
简单恢复模式:
此模式简略地记录大多数事务 所记录的信息只是为了确保在系统崩溃或还原数据备份之后数据库的一致性
由于旧的事务已提交 已不再需要其日志 因而日志将被截断 截断日志将删除备份和还原事务日志 但是 这种简化是有代价的 在灾难事件中有丢失数据的可能 没有日志备份 数据库只可恢复到最近的数据备份时间 如果您使用的是 sql server Enterprise Edition 需要考虑此问题 此外 该模式不支持还原单个数据页
完整恢复模式:
此模式完整地记录了所有的事务 并保留所有的事务日志记录 直到将它们备份 在 sql server Enterprise Edition 中 完整恢复模式能使数据库恢复到故障时间点
大容量日志恢复模式:
此模式简略地记录大多数大容量操作(例如 索引创建) 完整地记录其他事务
大容量日志恢复提高大容量操作的性能 常用作完整恢复模式的补充 大容量日志恢复模式支持所有的恢复形式 但是有一些限制 备份包含大容量日志记录操作的日志时 需要访问数据库内的所有数据文件 如果数据文件不可访问 则无法备份最后的事务日志 而且该日志中所有已提交的操作都将丢失
lishixinzhi/Article/program/SQLServer/201311/22417