none
不能在sqlserver 2012中按照这个步骤来迁移数据库? RRS feed

  • 问题

  • 假如我需要将一个数据库从一块磁盘迁移到另外一块磁盘
    在sqlserver 2008 R2中
    Step1:
    ALTER DATABASE WISON SET OFFLINE
    Step2:
    Move the file
    Step3:
    USE MASTER;
    GO
    ALTER DATABASE WISON
    MODIFY FILE
    (
        NAME = WISON,
        FILENAME = N'D:\DBDATA\WISON.MDF'
    );
    GO

    GO
    ALTER DATABASE WISON
    MODIFY FILE
    (
        NAME = WISON_LOG,
        FILENAME = N'D:\DBDATA\WISON_LOG.LDF'
    );
    GO
    Step4:
    ALTER DATABASE WISON SET ONLINE



    是没有任何问题的.
    但是在SQLServer 2012中到online的时候就报错了.
    Msg 5120, Level 16, State 101, Line 2
    Unable to open the physical file "D:\DBDATA\wison.mdf". Operating system error 5: "5(Access is denied.)".
    Msg 5120, Level 16, State 101, Line 2
    Unable to open the physical file "D:\DBDATA\wison_log.LDF". Operating system error 5: "5(Access is denied.)".
    Msg 5181, Level 16, State 5, Line 2
    Could not restart database "wison". Reverting to the previous status.
    Msg 5069, Level 16, State 1, Line 2
    ALTER DATABASE statement failed.


    是怎么回事呢?

    If you haven't all the things you want,be grateful for the things you don't have that you didn't want.


    • 已编辑 Wison-Ho 2012年8月16日 5:56
    2012年8月16日 5:56

答案

  • 错误提示看, 是权限问题, 选执行一下 xp_fixeddrives, 看看列出出的结果中有没有 D 盘, 如果有话, 那说明是目录或者文件上的权限有问题

    如果列不出的话, 说明 SQL Server访问不了D盘, 是磁盘或者磁盘的权限得有问题

    2012年8月16日 9:41

全部回复