加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > MsSql教程 > 正文

SqlServer2000中附加数据库的时候出现错误9003的解决

发布时间:2020-12-12 13:50:06 所属栏目:MsSql教程 来源:网络整理
导读:SQL 2000,附加数据库的时候出现错误提示:“错误9003:LSN(39:431:1)无效,该LSN是传递给数据库’XXX’中的日志扫描操作的”,如图: 出现这个错误一般是因为此数据库有损坏,导致不能做数据库的附件操作。 解决步骤: 停止SQL Server服务器,将旧数据库文件

SQL 2000,附加数据库的时候出现错误提示:“错误9003:LSN(39:431:1)无效,该LSN是传递给数据库’XXX’中的日志扫描操作的”,如图:


这里写图片描述


出现这个错误一般是因为此数据库有损坏,导致不能做数据库的附件操作。


解决步骤:


  1. 停止SQL Server服务器,将旧数据库文件和相应的日志文件拷贝到其他地方以备份
  2. 启动SQL Server服务器,新建一个全新的和旧数据库同名的数据库
  3. 停止SQL Server服务器,将旧数据库的mdf和ldf文件覆盖新的mdf和ldf文件
  4. 再启动SQL Server服务器,这个时候数据库应该处于置疑状态
  5. 查询分析器中执行以下语句:

use master
go

sp_configure 'allow updates',1
reconfigure with override
go

update sysdatabases set status= 32768 where name = '数据库名'

6.再执行如下语句:


dbcc rebuild_log('数据库名','新的ldf文件的绝对路径') 
-- 你会看到一个消息 - Warning: The log for database '数据库名' has been rebuilt.(注意,这里的 '新的ldf文件的绝对路径'是一个不存在的文件,待会它会自己建立)

use master
go

sp_configure 'allow updates',0
go

7 . 既然数据库有损坏,我们就还需要检查错误和修复错误,具体方法见此文:检测和修复SQL数据库错误


其实不进行检查错误和修复错误,本文进行完第六步已经可以重启服务看到我们希望得到的效果了,数据库已经可以附加了。万分感谢 王小喜 大神的分享,本文原文链接为盆盆罐罐

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读