如何在SQLserver系统数据库中存放用户数据库公共信息的是?

在SQLserver系统数据库中存放用户数据库公共信息的是master还是model

是 master 哦

不知道你这个问题是否已经解决, 如果还没有解决的话:
  • 这篇文章:sqlserver2008创建数据库报错:无法获得数据库'model'上的排他锁 也许能够解决你的问题,你可以看下
  • 除此之外, 这篇博客: sqlserver 移动用户及系统数据库文件位置方法中的 三、 master系统数据库 部分也许能够解决你的问题, 你可以仔细阅读以下内容或者直接跳转源博客中阅读:

    比较复杂,也容易出问题,没事最好别移,换操作系统盘符可能还比较简单。

    1. 关闭sqlserver实例

    2. 更改启动参数路径

    “SQL Server配置管理器” -> “SQL Server服务”节点 -> 右击SQL Server实例(MSSQL2016) -> 选择“属性” -> 单击“启动参数”。

    可以看到默认指定了3个参数,每个参数后紧跟文件路径(没有空格):

    • -d:datafile
    • -e:errorlogfile
    • -l:logfile

    修改对应参数后内容,指定master库数据和日志文件新路径

    -dC:\Program Files\Microsoft SQL Server\MSSQL10.MSSQLSERVER\DATA\master.mdf
    -eC:\Program Files\Microsoft SQL Server\MSSQL10.MSSQLSERVER\Log\ERRORLOG
    -lC:\Program Files\Microsoft SQL Server\MSSQL10.MSSQLSERVER\DATA\mastlog.ldf

    3. 移动master库数据文件和日志文件到新目录

    注意errorlogfile如果更改了位置可以不移动,会重新生成

    4. 启动 SQL Server 实例服务

    5. 检查文件移动后位置

    SELECT name,physical_name,state_desc FROM sys.master_files WHERE database_id = DB_ID(N'master');

     


如果你已经解决了该问题, 非常希望你能够分享一下解决方案, 写成博客, 将相关链接放在评论区, 以帮助更多的人 ^-^