暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

SQLServer修改collation

原创 龙舌兰地落🌏 2024-10-18
50

修改实例级别的collation

不同于修改数据库级别的collation,修改实例的collation相当于重置系统库,具体步骤如下:
1.收集信息
使用SSMS,在实例属性-常规中就能看到,也可以使用语句查看;
查看服务器排序规则、查看实例版本:

SELECT SERVERPROPERTY(‘Collation’) ;
SELECT @@VERSION ;
复制

确认当前数据库安装目录。如果使用默认安装目录可参考如下路径汇总:

  • SQL Server 2008
    C:\Program Files\Microsoft SQL Server\100\Setup Bootstrap\Release
  • SQL Server 2012
    C:\Program Files\Microsoft SQL Server\110\Setup Bootstrap\SQLServer2012
  • SQL Server 2014
    C:\Program Files\Microsoft SQL Server\120\Setup Bootstrap\SQLServer2014
  • SQL Server 2016
    C:\Program Files\Microsoft SQL Server\140\Setup Bootstrap\SQLServer2016
  • SQL Server 2019
    C:\Program Files\Microsoft SQL Server\150\Setup Bootstrap\SQL2019

2.备份数据库
事先备份好系统库中的自定义存储过程等对象。
业务数据库也进行全备份,备份后删除。

3.修改实例collation(需要停库)
管理员权限运行cmd,进入安装目录,此处以2019版本为例:

cd C:\Program Files\Microsoft SQL Server\150\Setup Bootstrap\SQL2019
复制

使用语句关闭SQLServer

Net stop mssqlserver
复制

如果SQLServer Agent正在运行的话可能会提示一起关闭,我们选择Y一起关闭即可。
关闭后可从图形界面配置管理器看到,确实已经停止。
然后执行重新设置的语句(原Chinese_PRC_CS_AS ,改至SQL_Latin1_General_CP850_BIN2):

Setup /QUIET /ACTION=REBUILDDATABASE /instancename=MSSQLSERVER /SQLSYSADMINACCOUNTS=administrator /sapwd=Hi**in@1234 /sqlcollation=SQL_Latin1_General_CP850_BIN2
复制

格式说明:
Setup /QUIET /ACTION=REBUILDDATABASE /INSTANCENAME=InstanceName
  /SQLSYSADMINACCOUNTS=accounts / [ SAPWD= StrongPassword ]
/SQLCOLLATION=CollationName)
注意: accounts 用户使用操作系统管理员用户,CollationName 为需要变更的排序格式。
修改之后启动SQL Server 服务 :

Net start mssqlserver
复制

然后使用SSMS检查,并重新配置相关的系统设置,如内存上限、并行度之类的。
再还原数据库,还原系统库对象。

修改数据库级别的collation

直接使用SSMS修改即可,先备份数据库,备份完成后杀掉使用此数据库的进程,再改为单用户模式,再修改collation;修改完再改回多用户模式。
参考:

https://blog.csdn.net/qq_41248260/article/details/118091917
复制
「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论