sa  附加不了数据库怎么回事, 老报5123错误

解决方案 »

  1.   

    这样试试:1.新建一个同名的数据库(数据文件与原来的要一致)2.再停掉sql server(注意不要分离数据库)3.用原数据库的数据文件覆盖掉这个新建的数据库4.再重启sql server5.此时打开企业管理器时会出现置疑,先不管,执行下面的语句(注意修改其中的数据库名)6.完成后一般就可以访问数据库中的数据了,这时,数据库本身一般还要问题,解决办法是,利用
    数据库的脚本创建一个新的数据库,并将数据导进去就行了.USE MASTER
    GOSP_CONFIGURE 'ALLOW UPDATES',1 RECONFIGURE WITH OVERRIDE
    GOUPDATE SYSDATABASES SET STATUS =32768 WHERE NAME='置疑的数据库名'
    Gosp_dboption '置疑的数据库名', 'single user', 'true'
    GoDBCC CHECKDB('置疑的数据库名') 
    Goupdate sysdatabases set status =28 where name='置疑的数据库名'
    Gosp_configure 'allow updates', 0 reconfigure with override
    Go sp_dboption '置疑的数据库名', 'single user', 'false'
    Go
      

  2.   

    你先不用sa用户附加,选中windows集成验证模式进行附加,然后重新连接数据库附加试试
      

  3.   

    5123错误,当试图打开或创建物理文件 ''%2!'' 时,CREATE FILE 遇到操作系统错误 %1!。说明是操作系统问题,很可能是权限问题,检查磁盘空间是否足够、附加的数据库文件属性设置(是否只读)肯安全性设置(是否没有设置控制权限)是否正确ps:一楼的方法别乱试,据我估计成功率不到0.001%
      

  4.   

    看看 Sqlserver  的补丁是否打全
      

  5.   

    看看数据库的版本是否一致,比如是否开发版和企业版。另外,将mdf和ldf放到$:\Program Files\Microsoft SQL Server\MSSQL$.MSSQLSERVER\MSSQL\data目录下进行附加试试。