CentOS9上面使用rpm方式安装SQLServer2022的简单总结
下载需要的资料
下载CentOS9 Stream的安装介质
https://mirrors.bfsu.edu.cn/centos-stream/9-stream/BaseOS/x86_64/iso/CentOS-Stream-9-latest-x86_64-dvd1.iso
下载SQLSERVER 2022的安装介质
https://packages.microsoft.com/yumrepos/mssql-server-preview-rhel8/mssql-server-16.0.950.9-1.x86_64.rpm
下载说明
1. 虚拟机需要自行安装.
2. 我这边半离线安装还是有很多依赖的补丁进行了安装.
3. CentOS9 Server with GUI的方式在ESXi5.5上面不能全选
我这边全选会导致安装失败.
4. SQLserver的是预览版, 建议选择rhel8的版本,7的肯定不兼容.
5. 因为是CTP的版本, 不能用于生产, 建议简单用于测试工作.
SQLSERVER 数据库安装
第一步上传rpm包到CentOS9的虚拟机上面:
mssql-server-16.0.950.9-1.x86_64.rpm
第二步 直接进行安装即可
yum localinstall mssql-server-16.0.950.9-1.x86_64.rpm -y
注意 需要同步安装一下其他的rpm包安装即可.
初始化数据库
/opt/mssql/bin/mssql-conf setup
注意 必须使用有root权限的用户
root用户直接执行. 非root用户执行 sudo 才可以.
初始化异常解决
会偶发这样的一个错误
This program has encountered a fatal error and cannot continue running
"message": "Cannot open or read the persistent registry: \\SystemRoot\\lsa.hiv.",
"last_errno": "13",
"last_errno_text": "Permission denied",
解决方法为:
chmod 777 /var/opt/mssql/.system/system/security.hiv
为了避免有其他异常还可以清理掉有错误的日志信息
rm -rf /var/opt/mssql/log
修改字符集
先关掉数据库
systemctl stop mssql-server
然后执行命令
/opt/mssql/bin/mssql-conf set-collation
输入字符集为:
chinese_prc_ci_as
然后重启数据库就可以了
systemctl restart mssql-server
启动分布式事务 MSDTC等的支持
sudo /opt/mssql/bin/mssql-conf set network.rpcport 13500
sudo /opt/mssql/bin/mssql-conf set distributedtransaction.servertcpport 51999
注意数据库创建完之后建议处理一下回复模式
完整的恢复模式会占用巨量的磁盘空间
软件的程序目录为:
/opt/mssql/bin/
数据目录为:
/var/opt/mssql/data