日期:2011-05-02 15:22:00 来源:本站整理
sqlserver日记文件总结及充满处理[MSSQL防范]
本文“sqlserver日记文件总结及充满处理[MSSQL防范]”是由七道奇为您精心收集,来源于网络转载,文章版权归文章作者所有,本站不对其观点以及内容做任何评价,请读者自行判断,以下是其具体内容:
交易日记(Transaction logs)是数据库构造中非常重要但又常常被忽视的部份.由于它并不像数据库中的schema那样活泼,因此很少有人关注交易日记.
交易日记是针对数据库改变所做的记录,它可以记录针对数据库的任何操作,并将记录后果保存在独立的文件中.关于任何每一个交易历程,交易日记都有非常全面的记录,按照这些记录可以将数据文件恢复成交易前的状况.从交易行动开始,交易日记就处于记录状况,交易历程中对数据库的任何操作都在记录范围,直到用户点击提交或撤退后才完毕记录.每个数据库都拥有至少一个交易日记以及一个数据文件.
出于性能上的考虑,sql server将用户的窜改存入缓存中,这些改变会当即写入交易日记,但不会当即写入数据文件.交易日记会通过一个标志点来肯定某个交易能否已将缓存中的数据写入数据文件.当SQL Server重启后,它会查看日记中最新的标志点,并将这个标志点背面的交易记录抹去,因为这些交易记录并没有真正的将缓存中的数据写入数据文件.这可以避免那些中止的交易改正数据文件.
保护交易日记
因为很多人常常忘记交易日记,因此它也会给系统带来一些问题.随着系统的不断运行,日记记录的内容会越来越多,日记文件的体积也会越来越大,终究招致可用磁盘空间不足.除非平常工作中常常对日记举行清理,不然日记文件终究会侵犯分区内的全部可用空间.日记的默许配置为不限容量,假如以这种配置工作,它就会不断膨胀,终究也会占据全部可用空间.这两种情形城市招致数据库终止工作.
对交易日记的平常备份工作可以有效的避免日记文件过度损耗磁盘空间.备份历程会将日记中不再需求的部份截除.截除的办法是首先把旧记录标志为非活动状况,然后将新日记覆盖到往日记的位置上,这样便可以避免交易日记的体积不断膨胀.假如无法对日记举行常常性的备份工作,最好将数据库设置为"简单恢复情势".在这种情势下,系统会强迫交易日记在每次记录标志点时,自动举行截除操作,以新日记覆盖往日记.
截除历程发生在备份或将旧标志点标为非活动状况时,它使得旧的交易记录可以被覆盖,但这并不会削减交易日记实际占用的磁盘空间.就算不再利用日记,它仍然会占据一定的空间.因此在保护时,还需求对交易日记举行紧缩.紧缩交易日记的办法是删除非活动记录,从而削减日记文件所占用的物理硬盘空间.
通过利用DBCC SHRINKDATABASE语句可以紧缩当前数据库的交易日记文件,DBCC SHRINKFILE语句用来紧缩指定的交易日记文件,别的也可以在数据库中激活自动紧缩操作.当紧缩日记时,首先会将旧记录标志为非活动状况,然后将带有非活动标志的记录完好删除.按照所利用的紧缩方法的差别,你大概不会当即看到后果.在抱负情形下,紧缩工作应当选在系统不是非常繁忙的时段举行,不然有大概影响数据库性能.
恢复数据库
交易记录备份可以用来将数据库恢复到某一指定状况,但交易记录备份本身不足以完成恢复数据库的任务,还需求备份的数据文件参与恢复工作.恢复数据库时,首先举行的是数据文件的恢复工作.在整个数据文件恢复完成前,不要将其设为完成状况,不然交易日记就不会被恢复.当数据文件恢复完成,系统会通过交易日记的备份将数据库恢复成用户但愿的状况.假如在数据库最后一次备份后,存在多个日记文件的备份,备份程序会按照它们成立的时间顺次将其恢复.
另一种被称为log shipping的历程可以供应更强的数据库备份本领.当log shipping配置好后,它可以将数据库整个复制到另一台服务器上.在这种情形下,交易日记也会按期发送到备份服务器上供恢复数据利用.这使得服务器一向处于热备份状况,当数据发生改变时它也随之更新.另一个服务器被称作监督(monitor)服务器,可以用来监督按规按时间隔断发送的shipping信号.假如在规按时间内没有收到信号,监督服务器会将这一事件记录到事件日记.这种机制使得log shipping常常成为灾难恢复筹划中利用的筹划.
本新闻共3页,当前在第1页??1??2??3
以上是“sqlserver日记文件总结及充满处理[MSSQL防范]”的内容,如果你对以上该文章内容感兴趣,你可以看看七道奇为您推荐以下文章:
sqlserver索引的原理及索引成立的注意事项小结
sqlserver数据库主键的生成方法小结(sqlserver,mysql)
sqlserver主键计划的注意点
CREATE FUNCTION sqlserver用户定义函数
利用cmd号令行窗口操作SqlServer的办法
sqlserver bcp(数据导入导出工具)普通用法与号令详解
重命名SQLServer数据库的办法
利用SqlBulkCopy时应注意Sqlserver表中利用缺省值的列
sqlserver中将varchar范例转换为int型再举行排序的办法
sqlserver 改正列名及表名的sql语句
SQLServer顶用T—SQL号令查询一个数据库中有哪些表的sql语句
sqlserver 脚本和批处理指令小结
以上是“sqlserver日记文件总结及充满处理[MSSQL防范]”的内容,如果你对以上该文章内容感兴趣,你可以看看七道奇为您推荐以下文章:
本文地址: | 与您的QQ/BBS好友分享! |
评论内容只代表网友观点,与本站立场无关!
评论摘要(共 0 条,得分 0 分,平均 0 分)
查看完整评论