• SQL系统数据库的文件迁移


    移动master数据库

    master 数据库记录 SQL Server 系统的所有系统级信息。这包括实例范围的元数据(例如登录帐户)、端点、链接服务器和系统配置设置。master 数据库还记录所有其他数据库是否存在以及这些数据库文件的位置。另外,master 还记录 SQL Server 的初始化信息。因此,如果 master 数据库不可用,则 SQL Server 无法启动。在 SQL Server 2005 中,系统对象不再存储在 master 数据库中,而是存储在 Resource 数据库中。

    1.启动到单用户模式
    NET START MSSQLSERVER /f /T3608

    修改启动参数(配置管理器-高级标签-启动参数)
    -dC: ewmaster.mdf;
    -eC:Program FilesMicrosoft SQL ServerMSSQL.1MSSQLLOGERRORLOG;
    -lC: ewmastlog.ldf;
    -eC: ewERRORLOG

    2.移动master数据库
    ALTER DATABASE master MODIFY FILE( NAME = master , FILENAME = 'C: ewmaster.mdf')
    ALTER DATABASE master MODIFY FILE( NAME = mastlog , FILENAME = 'C: ewmasterlog.ldf')

    3.移动资源数据库
    ALTER DATABASE mssqlsystemresource MODIFY FILE (NAME=data, FILENAME='C: ewmssqlsystemresource.mdf')
    ALTER DATABASE mssqlsystemresource MODIFY FILE (NAME=log, FILENAME='C: ewmssqlsystemresource.ldf')

    4.停止SQL Server
    5.移动数据库文件到目标
    6.启动SQL Server
    7.验证
    SELECT name, physical_name AS CurrentLocation, state_desc
    FROM sys.master_files
    WHERE database_id = DB_ID('master');


    移动model数据库
    model 数据库用作在 SQL Server 实例上创建的所有数据库的模板。因为每次启动 SQL Server 时都会创建 tempdb,所以 model 数据库必须始终存在于 SQL Server 系统中。

    1.移动路径

    ALTER DATABASE model MODIFY FILE( NAME = modeldev , FILENAME = 'C: ewmodel.mdf')
    ALTER DATABASE model MODIFY FILE( NAME = modellog , FILENAME = 'C: ewmodellog.ldf')


    移动msdb数据库
    msdb 数据库由 SQL Server 代理用来计划警报和作业

    1.移动路径
    ALTER DATABASE msdb MODIFY FILE( NAME = msdbdata , FILENAME = 'C: ewmsdbdata.mdf')
    ALTER DATABASE msdb MODIFY FILE( NAME = msdblog , FILENAME = 'C: ewmsdblog.ldf')


    移动tempdb
    由于每次启动 MSSQLSERVER 服务时都会重新创建 tempdb,因此不需要从物理意义上移动数据和日志文件。将在步骤 3 中重新启动服务时创建这些文件。重新启动服务后,tempdb 才继续在当前位置发挥作用。


    1.确定当前位置
    SELECT name, physical_name
    FROM sys.master_files
    WHERE database_id = DB_ID('tempdb');
    GO

    2.使用 ALTER DATABASE 更改每个文件的位置

    ALTER DATABASE tempdb MODIFY FILE (NAME = tempdev, FILENAME = c: ew empdb.mdf');

    ALTER DATABASE tempdb MODIFY FILE (NAME = templog, FILENAME = 'c: ew emplog.ldf');


    3.停止并重新启动 SQL Server。

    4.验证文件更改。
    SELECT name, physical_name
    FROM sys.master_files
    WHERE database_id = DB_ID('tempdb');

    5、还原 master service key 密锁 

    BACKUP SERVICE MASTER KEY TO FILE = 'path_to_file' ENCRYPTION BY PASSWORD = 'password' 

    RESTORE SERVICE MASTER KEY FROM FILE = 'path_to_file' DECRYPTION BY PASSWORD = 'password' [FORCE]

  • 相关阅读:
    PHP学习之字符串
    PHP学习之常量
    PHP之数据类型
    AngularJS学习之Select(选择框)
    Angular JS 学习之Http
    PHP之echo/print
    Angular JS 学习之服务(Service)
    Angular JS 学习之过滤器
    git打包
    gdb分析core文件
  • 原文地址:https://www.cnblogs.com/loudon/p/3174862.html
Copyright © 2020-2023  润新知