怎么清空sqlserver的日志文件 如何备份sql server 2008日志文件?
如何备份sql server 2008日志文件?
在SQL Server7.0和SQL Server2000中,这个可以用下面的命令打开系统:
DBCClog({dbid|dbname},[,type{0|1|2|3|4}])
参数:
Dbid同问dbname-任一数据库的ID或名字
type-输出结果的类型:
0-最少信息(operation,context,transactionid)
1-更多信息(pro3flags,tags,rowlength)
2-的很详细点的信息(procontextname,indexname,pageid,slotid)
3-每种不能操作的全部信息
4-每种你的操作的全部信息算上该事务的16进制信息
默认type0
要查看MSATER数据库的事务日志是可以用以上命令:
DBCClog(master)
释放日志空间
1.清空日志
DUMPTRANSACTION库名WITHoh,no_LOG
2.截住事务日志:
BACKUP LOG数据库名WITHno,no_LOG
3.向内收缩数据库文件(如果不高压缩,数据库的文件肯定不会越小
企业管理器--右键你要压缩后的数据库--所有任务--急剧收缩数据库--向内收缩文件
--选择日志文件--在收缩里你选择急剧收缩至XXM,这里会能提供一个不能向内收缩到的小于M数,真接键入这个数,可以确定就可以了
--选择数据文件--在收缩里你选收缩至XXM,这里会决定一个不能急剧收缩到的小于M数,直接再输入这个数,考虑就可以了
也这个可以用SQL语句来完成
--向内收缩数据库
DBCCSHRINKDATABASE(客户资料)
--快速收缩重新指定数据文件,1是文件号,可以按照这个语句去查询到:select*acrosssysfiles
DBCC SHRINKFILE(1)
4.是为选择最大化的缩小日志文件(假如是sql7.0,这步只有在网上查询讲器中接受)
a.只是分离数据库:
企业管理器--服务器--数据库--右键--分离出来数据库
b.在我的电脑中删除掉LOG文件
c.附加数据库:
企业管理器--服务器--数据库--右键--附带数据库
此法将生成气体新的LOG,大小仅有500多K
或用代码:
下面的示例分离pubs,然后把将pubs中的一个文件附加到当前服务器。
a.只是分离
b.彻底删除日志文件
c.再叠加
,
@physnamec:ProgramFilesMicrosoftSQL
5.目的是以后能手动收缩,做追加设置:
企业管理器--服务器--右键数据库--属性--选项--选择
SQL Server事务日志的几个常用操作?
我们知道,SQL Server事务日志通常是单独记录所有事务对数据库所做的修改,要是系统再次出现故障,它将蓝月帝国最新数据的仅有来源。日志的操作常有200以内几个应用:
一、事务日志文件LDF的全部丢失
当我们不小彻底删除或者LDF文件丢失的时候,数据库只只剩下MDF文件,此时直接附带MDF是根本无法恢复数据库的,那我们好不好才能完全恢复数据库呢?我们是可以把SQL Server的日志文件分为两种形式:一类是无活动事务的日志,另一类是有活动事务的日志,我们三个据两种情况来通过数据库恢复。
1、无活动事务的日志复原
当文件并没有突然发生活动性的日志,我们就可以不会容易的借用MDF文件就是可以然后重新恢复数据库了,具体操作方法追加:
1)数据库要不然没有日志,都会处在不容质疑的状态,我们先是可以企业管理器中在对应数据库中再点击右键,然后再在“所有任务”下中,选择“分离数据库”把数据库并且只是分离
2)用来MDF文件叠加数据库生成沉淀新的日志文件,后用企业管理器中数据库点击右键选择“所有任务”下的“额外数据库”把数据库附加上。
这样的就可以不直接可以恢复好数据库了,而要是数据库的日志文件中多含活动事务,利用此方法就不能可以恢复数据库,所以我得使用下面的方法。
2、有活动事务的日志复原
当日志不可能发生了事务的记录,全部丢失的时候,我们采用追加的方法来实现方法:
1)空白文档一个同名的数据库,如原数据库名为MYDB,然后开始SQL Server服务器,再把数据库主数据MDF文件移走,然后把重起SQL Server服务器,新建一个同名作品的数据库MYDB,接着再开始SQL Server服务器,把移走的MDF文件再遍布出去,然后再重启动SQL Server服务器,在系统默认的情况下,系统表是不不能被直接修改的,我们需要启动以下语句才这个可以,在可以查询讲器中,你选择Master数据库,然后把不能执行:
Sp_configureallowupdates,1
Reconfigure With Override
随即正常运行100元以内语句,把Sysdatabases表中MYDB数据库的status属性设为‘37268',把MYDB数据库设置为及时模式。
setupsysdatabasessetstatus32768wherename'MYDB'
后再再把数据库MYDB可以设置为单用户模式,然后再重新启动SQL Server服务器,并把数据库MYDB设为单用户模式
Sp_dboptionMYDB,singleuser,true
版权声明:本文内容由互联网用户自发贡献,本站不承担相关法律责任.如有侵权/违法内容,本站将立刻删除。