数据库 'tempdb' 的日志已满。请备份该数据库的

系统 2938 0

sql2000/2005 数据处理量大的时候,程序会报
“数据库 'tempdb' 的日志已满。请备份该数据库的事务日志以释放一些日志空间”

这时你可以收缩一下数据库日志或者清空一下(如果日志文件不很重要的话)

清空事务日志命令:
DUMP TRANSACTION dbname WITH NO_LOG

截断事务日志命令:
BACKUP LOG dbname WITH NO_LOG
收缩日志操作:
1、右键点数据库-属性-所有任务-收缩数据库-文件-选择文件

2、此方法要求您重新启动 SQL Server。

  1. 停止 SQL Server。打开命令提示符,然后键入以下命令启动 SQL Server:

    sqlservr -c -f

    -c -f 参数使 SQL Server 以最小配置模式启动,让数据文件的 tempdb 大小为 1 MB,日志文件的 tempdb 为 0.5 MB。

    注意 :如果使用 SQL Server 命名实例,必须切换到适当的文件夹 ( Program Files\Microsoft SQL Server\MSSQL$instance name\Binn ),并使用 -s 开关 (-s%instance_name%)。
  2. 用查询分析器连接到 SQL Server,然后运行下列 Transact-SQL 命令:
                  ALTER DATABASE tempdb MODIFY FILE
    
       (NAME = 'tempdev', SIZE = target_size_in_MB) 
    
       --Desired target size for the data file
    
    
    
       ALTER DATABASE tempdb MODIFY FILE
    
       (NAME = 'templog', SIZE = target_size_in_MB)
    
       --Desired target size for the log file
                
  3. 通过在命令提示符窗口中按 Ctrl-C 停止 SQL Server,将 SQL Server 作为服务重新启动,然后验证 Tempdb.mdf 和 Templog.ldf 文件的大小。

此方法的局限是它只能对默认的 tempdb 逻辑文件 tempdev templog 进行操作。如果将其他文件添加到了 tempdb ,您可以在将 SQL Server 作为服务重新启动后收缩它们。在启动过程中将重新创建所有 tempdb 文件;因此,它们是空的并可删除。要删除 tempdb 中的其他文件,请使用带有 REMOVE FILE 选项的 ALTER DATABASE 命令。

数据库 'tempdb' 的日志已满。请备份该数据库的事务日志以释放一些日志空间


更多文章、技术交流、商务合作、联系博主

微信扫码或搜索:z360901061

微信扫一扫加我为好友

QQ号联系: 360901061

您的支持是博主写作最大的动力,如果您喜欢我的文章,感觉我的文章对您有帮助,请用微信扫描下面二维码支持博主2元、5元、10元、20元等您想捐的金额吧,狠狠点击下面给点支持吧,站长非常感激您!手机微信长按不能支付解决办法:请将微信支付二维码保存到相册,切换到微信,然后点击微信右上角扫一扫功能,选择支付二维码完成支付。

【本文对您有帮助就好】

您的支持是博主写作最大的动力,如果您喜欢我的文章,感觉我的文章对您有帮助,请用微信扫描上面二维码支持博主2元、5元、10元、自定义金额等您想捐的金额吧,站长会非常 感谢您的哦!!!

发表我的评论
最新评论 总共0条评论