当前位置: 首页 > 图文教程 > 数据库 > MYSQL > QA里执行sp_attach_db出现错误1813

MYSQL
MYSQL初学者扫盲
PHP+MYSQL网站开发基础知识
网站主机教程(7):网站主机的数据库技术
PHP基础教程(2):PHP安装
PHP+MySQL教程(1):MYSQL简介
PHP+MySQL教程(2):连接MYSQL数据库
PHP+MySQL教程(3):创建数据库和表
PHP+MySQL教程(4):MySQL Insert Into
PHP+MySQL教程(5):MySQL Select
PHP+MySQL教程(6):MySQL Where子句
PHP+MySQL教程(7):MySQL Order By关键词
PHP+MySQL教程(8):MySQL Update
PHP+MySQL教程(9):MySQL Delete From
PHP+MySQL教程(10):Database ODBC
PHP+AJAX教程(5):AJAX MySQL数据库实例
32位的MySQL数据库迁移到64位的MySQL数据库
MYSQL教程:MYSQL数据值类型(data type)
MYSQL教程:MYSQL列类型(column type)
MYSQL数据库教程:唯一编号
MYSQL教程:MYSQL字符集支持

MYSQL 中的 QA里执行sp_attach_db出现错误1813


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2010-01-04   浏览: 138 ::
收藏到网摘: n/a

  在QA里执行sp_attach_db或者sp_attach_single_file_db,出现提示:错误1813:未能打开新数据库’dbname’,create database 将终止。设备激活错误。物理文件名’d:sql servermssqldatadbname _log.ldf’可能有误!

  后来到baidu里找到相关的方法,不错,问题解决了。

  按下面的步骤处理:

  1.新建一个同名的数据库2.再停掉sqlserver服务(注意不要分离数据库)

  3.用原数据库的数据文件覆盖掉这个新建的数据库4.再重启sqlserver服务

  5.此时打开企业管理器时会出现置疑,先不管,执行下面的语句(注意修改其中的数据库名)6.完成后一般就可以访问数据库中的数据了。这时,数据库本身一般还有问题,解决办法是:利用数据库的脚本创建一个新的数据库,然后通过DTS将数据导进去就行了

  use master

  go

  sp_configure ’allow updates’,1 reconfigure with override

  go

  update sysdatabases set status =32768 where name=’置疑的数据库名’

  go

  sp_dboption ’置疑的数据库名’, ’single user’, ’true’

  go

  dbcc checkdb(’置疑的数据库名’)

  go

  update sysdatabases set status =28 where name=’置疑的数据库名’

  go

  sp_configure ’allow updates’, 0 reconfigure with override

  go

  sp_dboption ’置疑的数据库名’, ’single user’, ’false’

  go