需求

安装数据库时,将字符集安装成了“SQL_Latin1_General_CP1_CI_AS”,现在需要将其更改为“Chinese_PRC_CI_AS”。

方法

重新生成系统数据库 ,然后还原配置信息。

局限

重新生成 master、model、msdb 和 tempdb 系统数据库时,将删除这些数据库,然后在其原位置重新创建。如果在重新生成语句中指定了新排序规则,则将使用该排序规则设置创建系统数据库。用户对这些数据库所做的所有修改都会丢失。例如,您在 master 数据库中的用户定义对象、在 msdb 中的预定作业或在 model 数据库中对默认数据库设置的更改都会丢失。

前期准备

在重新生成系统数据库之前执行下列任务,以确保可以将系统数据库还原至它们的当前设置。

  1. 记录所有服务器范围的配置值。
    SELECT * FROM sys.configurations;
  2. 记录所有应用到 SQL Server 实例和当前排序规则的 Service Pack 和修补程序。重新生成系统数据库后必须重新应用这些更新。
    SELECT
    SERVERPROPERTY('ProductVersion ') AS ProductVersion,
    SERVERPROPERTY('ProductLevel') AS ProductLevel,
    SERVERPROPERTY('ResourceVersion') AS ResourceVersion,
    SERVERPROPERTY('ResourceLastUpdateDateTime') AS ResourceLastUpdateDateTime,
    SERVERPROPERTY('Collation') AS Collation;
  1. 记录系统数据库的所有数据文件和日志文件的当前位置。重新生成系统数据库会将所有系统数据库安装到其原位置。如果已将系统数据库数据文件或日志文件移动到其他位置,则必须再次移动这些文件。
    SELECT name, physical_name AS current_file_location
    FROM sys.master_files
    WHERE database_id IN (DB_ID('master'), DB_ID('model'), DB_ID('msdb'), DB_ID('tempdb'));
  1. 如果将 SQL Server 的实例配置为复制分发服务器,请找到该分发数据库的当前备份。
  2. 确保您有重新生成系统数据库的相应权限。必须是sysadmin固定服务器角色的成员才能执行此操作。有关详细信息,请参阅服务器级别角色
  1. 将原数据库的帐号、JOB等与系统数据库相关的信息全部备份起来(可以先生成相应的脚本),分离掉所有用户库。

重新生成系统数据库

运行下面的命令就可重建数据库(根据您的系统,需要做相应的修改 ;D:/Setup 是数据库安装文件所在的路径)

D:/Setup /QUIET /ACTION=REBUILDDATABASE /INSTANCENAME=MSSQLSERVER/SQLSYSADMINACCOUNTS=Administrators /SAPWD=XXXX /SQLCOLLATION=Chinese_PRC_CI_AS

参数说明:

参数名称

说明

/QUIET 或 /Q

指定在没有任何用户界面的情况下运行安装程序。

/ACTION=REBUILDDATABASE

指定安装程序将重新创建系统数据库。

/INSTANCENAME=InstanceName

SQL Server 实例的名称。对于默认实例,请输入 MSSQLSERVER

/SQLSYSADMINACCOUNTS=accounts

指定要添加到sysadmin固定服务器角色中的 Windows 组或单个帐户。指定多个帐户时,请用空格将帐户隔开。例如,请输入 BUILTIN\Administrators MyDomain\MyUser当您在帐户名称内指定包含空格的帐户时,用双引号将该帐户引起来。例如,输入NT AUTHORITY\SYSTEM

[ /SAPWD=StrongPassword]

指定 SQL Serversa帐户的密码。如果实例使用混合身份验证(SQL Server Windows 身份验证)模式,则此参数是必需的。

安全说明

sa帐户是一个广为人知的 SQL Server 帐户,并且经常成为恶意用户的攻击目标。因此,为sa登录名使用强密码非常重要。

不要为 Windows 身份验证模式指定此参数。

[ /SQLCOLLATION=CollationName]

指定新服务器级排序规则。此参数可选。如果没有指定,则使用服务器的当前排序规则。

重要提示

更改服务器级排序规则不会更改现有用户数据库的排序规则。默认情况下,所有新创建的用户数据库都将使用新排序规则。

有关详细信息,请参阅设置或更改服务器排序规则

更多相关文章

  1. logstash-jdbc-input与mysql数据库同步
  2. 数据库事务——还是这是一个规范化问题?
  3. fmdb 数据库升级1-----增加表字段
  4. SQL Server 2008 数据库镜像部署实例之三 配置见证服务器
  5. IFX数据库访问介绍
  6. JDBC连接并使用mysql数据库
  7. 从数据库sql中删除一个单词
  8. mysql数据库之表的操作
  9. 教你如何彻底卸载MySQL数据库

随机推荐

  1. cocos2dx在xcode下开发,编译到android上
  2. Android面试之---谈谈你对Android(安卓)N
  3. android 两点缩放图片
  4. Android 5.0 Input初始化
  5. Android 全屏
  6. Android Build 异常 -android.support.VE
  7. Android百度地图基础实现(标记+GPS)
  8. 用maven创建android的项目。
  9. Centos 安装 android sdk
  10. android shape记录