SqlServer数据库提⽰“tempdb”的⽇志已满问题解决⽅案执⾏sql 语句,中间没有⽤到临时表
提⽰服务器: 消息 9002,级别 17,状态 2,⾏ 1
数据库 'tempdb' 的⽇志已满。请备份该数据库的事务⽇志以释放⼀些⽇志空间。
⽹上了下解决⽅案,⼤体是扩⼤临时库的⽇志⽂件的⼤⼩解决的
解决过程:
查看了下数据库的属性,是⾃动增长,不指定⽂件⼤⼩上限。
在⽹上Google了很久,试了些⽅法都不⾏;数据库所在磁盘还有很⼤的可⽤空间,试着下重药了。
直接把tempdb的数据⽂件和⽇志⽂件的⼤⼩改为3000M,
问题解决。
记录⼀下清空⽇志的命令:
DUMP TRANSACTION dbname WITH NO_LOG
截断事务⽇志命令:
BACKUP LOG dbname WITH NO_LOG
收缩⽇志操作:
sqlserver备份表语句右键点数据库-属性-所有任务-收缩数据库-⽂件-选择⽂件-确定。
虽然⽤清空⽇志命令清空了tempdb的⽇志,但是不能解决问题。于是扩⼤tempdb的数据⽂件和⽇志⽂件的⼤⼩,
ALTER DATABASE [tempdb] MODIFY FILE (NAME = N'templog', MAXSIZE = UNLIMITED)
ALTER DATABASE [tempdb] MODIFY FILE (NAME = N'templog', FILEGROWTH = 10%)
ALTER DATABASE [tempdb] MODIFY FILE (NAME = N'templog ', SIZE = 1000)
ALTER DATABASE [tempdb] MODIFY FILE (NAME = N'tempdev ', SIZE = 1000)
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论