【问题标题】:Why does SQL Server 2012 create single user databases by default?为什么 SQL Server 2012 默认创建单用户数据库?
【发布时间】:2013-07-16 07:13:07
【问题描述】:

当我创建数据库时 - 它以(单个用户)的身份创建:

  1. 为什么这是我的默认设置?我的设置里有吗?
  2. 如何将现有数据库从单个更改为多个?

【问题讨论】:

    标签: sql sql-server database sql-server-2012


    【解决方案1】:

    每当您创建一个新数据库时,您得到的是model 数据库的副本,因此听起来您的model 数据库已设置为单用户。

    当发出CREATE DATABASE 语句时,通过复制model 数据库的内容来创建数据库的第一部分。然后用空页填充新数据库的其余部分。

    如果您修改 model 数据库,之后创建的所有数据库都将继承这些更改。例如,您可以设置权限或数据库选项,或添加表、函数或存储过程等对象。

    (我的重点)

    要将数据库更改回并发使用,run

    ALTER DATABASE <dbName> set multi_user
    

    &lt;dbName&gt; 替换为要更改的数据库的名称。

    【讨论】:

      【解决方案2】:

      试试这个:

      默认情况下,它将处于多用户模式。

      在某些情况下,您可能必须使用启动选项-m 在单用户模式下启动 SQL Server 实例。例如,您可能想要更改服务器配置选项或恢复损坏的主数据库或其他系统数据库。这两个操作都需要在单用户模式下启动 SQL Server 实例。

      将数据库从多用户更改为单用户:

      ALTER DATABASE TEST_DB SET SINGLE_USER WITH ROLLBACK IMMEDIATE;
      

      将数据库从单用户更改为多用户:

      ALTER DATABASE TEST_DB SET MULTI_USER WITH ROLLBACK IMMEDIATE;
      

      【讨论】:

        猜你喜欢
        • 2017-12-23
        • 2019-08-09
        • 2013-09-20
        • 1970-01-01
        • 1970-01-01
        • 2014-04-25
        • 1970-01-01
        • 1970-01-01
        • 2021-10-11
        相关资源
        最近更新 更多