专注于互联网--专注于架构

最新标签
网站地图
文章索引
Rss订阅

首页 »数据库 » sqlserver数据库:Sql Server 2000附加数据库出现1813错误的解 »正文

sqlserver数据库:Sql Server 2000附加数据库出现1813错误的解

来源: 发布时间:星期六, 2009年1月3日 浏览:103次 评论:0
="t18">今天进行了操作

数据库xxzx_discuz因生成大量日志使日志文件'xxzx_discuz_Log.LDF' 占满了磁盘所有空间使网站WebSite无法正常使用数据库

自己图省事分离数据库xxzx_discuz后直接删除'xxzx_discuz_Log.LDF' (文件太大无法存放到回收站)重新附件到SQL Server时出现两个提示:
------------------------------------------------------------------------------------------------------------------------------
SQL Server 企业管理器
---------------------------
为日志文件指定文件名不正确
将创建新日志文件
要继续吗?
---------------------------
是(Y) 否(N)
------------------------------------------------------------------------------------------------------------------------------
Microsoft SQL-DMO (ODBC SQLState: 42000)
---------------------------
1813: 未能打开新数据库 'xxzx_discuz'CREATE DATABASE 将终止
设备激活物理文件名 'S:\Program Files\Microsoft SQL Server\MSSQL\data\xxzx_discuz_Log.LDF' 可能有误
---------------------------
确定
------------------------------------------------------------------------------------------------------------------------------

从而无法将数据库正常附加到SQL Server 2000正常情况下这样操作是没有问题SQL Server会重新生成日志文件但是的前出现了磁盘空间不足日志文件不完整从而造成了无法正常附加

解决办法如下(从网上找来):

0.备份数据文件'xxzx_discuz_Log.MDF'
1.新建个同名数据库'xxzx_discuz'

2.再停掉sqlserver服务(注意不要分离数据库)
3.用原数据库数据文件'xxzx_discuz_Log.MDF' 覆盖掉新建数据库



4.再重启sqlserver服务
5.此时打开企业管理器时会出现置疑先不管执行下面语句(注意修改其中数据库名)

6.完成后般就可以访问数据库中数据了这时,数据库本身般还有问题,解决办法是:利用数据库脚本创建个新数据库,然后通过DTS将数据导进去就行了.
SQL代码
    =dp-sql>
  1. =alt>usemaster
  2. ="">go
  3. =alt>sp_configure=>'allowupdates',1reconfigure=keyword>withoverride
  4. ="">go
  5. =alt>=keyword>updatesysdatabases=keyword>status=32768=keyword>where=keyword>name==>'置疑数据库名'
  6. ="">go
  7. =alt>sp_dboption=>'置疑数据库名',=>'singleuser',=>'true'
  8. ="">go
  9. =alt>dbcccheckdb(=>'置疑数据库名')
  10. ="">go
  11. =alt>=keyword>updatesysdatabases=keyword>status=28=keyword>where=keyword>name==>'置疑数据库名'
  12. ="">go
  13. =alt>sp_configure=>'allowupdates',0reconfigure=keyword>withoverride
  14. ="">go
  15. =alt>sp_dboption=>'置疑数据库名',=>'singleuser',=>'false'
  16. ="">go




特别注意最后步中介绍说明“这时,数据库本身般还有问题,解决办法是:利用数据库脚本创建个新数据库,然后通过DTS将数据导进去就行了

参考文章:Sql Server附加数据库出现1813解决思路方法
0

相关文章

读者评论

发表评论

  • 昵称:
  • 内容: