提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档
前言
近期因勒索病毒的猖獗,所以考虑将金蝶云星空的数据中心的SQL服务器建立在linux下,与管理中心库及云星空的应用服务器做非同一系统的方案。
一、Linux下的MSSQL
从 SQL Server 2017 (14.x) 开始,SQL Server 在 Linux 上运行。 它属于相同的 SQL Server 数据库引擎,具有许多相似的功能和服务,且不受操作系统的影响。。
二、centos7(RHL)
1.安装linux系统后调整时间及语言参数
因为本人安装的系统的时候同意选了英文,所以第一次安装的发现英文版的系统安装mssql的时候没有选择语言这一步,所以只能在系统中重新加载中文的语言包。
所以想要将金蝶的数据中心放在linux下的mssql下请先调整系统改为中文版(可以在安装系统的时候选择),如果和我一样,一开始选了英文版的,那只能通过安装中文字体来实现了。
命令如下:
yum groupinstall "fonts"
localectl set-locale LANG=zh_CN.UTF-8
改完之后记得重启系统reboot
重启生效改完的系统语言后,需要修改时区和时间的格式,改为utf-8
# cd /etc/
# mv localtime localtime_old
# cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
# vi /etc/localtime
切换到最后一行,改为UTF-8
更改完之后先esc,然后【:wq!】强制保存并退出,运行【timedatectl】命令,查看是否修改正确,如下图即完成:
2.MSSQL安装
系统的相关参数修改完成之后,那么下面就是正式开始安装mssql了.
先配置源,在yum安装
# curl -o /etc/yum.repos.d/mssql-server.repo https://packages.microsoft.com/config/rhel/7/mssql-server-2017.repo
# yum install -y mssql-server
安装的时候可能会提示缺少必要的组件,缺少的直接自行yum安装好了之后在重新运行 mssql-server的yum安装
软件包安装完成后,运行
# /opt/mssql/bin/mssql-conf setup
进行安装配置
至此,Linux下的MSSQL安装完成,然后需要在linux的防火墙上放行相关端口,1433和恢复账套时候需要的135端口(135端口恢复完可以关闭)
放行1433端口
# firewall-cmd --add-port=1433/tcp --permanent
放行135端口
# firewall-cmd --add-port=135/tcp --permanent
重新加载防火墙规则
# firewall-cmd --reload
设完成防火墙之后开始建立数据中心(没试过直接恢复金蝶的账套,我是直接恢复的数据库备份文件),将数据库的备份文件放到mssql服务器上,然后在通过windows下的ssms连接服务器上的mssql来恢复数据
注1:如果管理中心也要放在这边可以从金蝶安装路径下取得相关的bak文件来恢复数据库,再从金蝶管理中心注册,和数据中心同理
注2:需要将备份的(需要恢复的数据库文件)放在根目录,不要放在root下,会读不到
恢复完成后通过管理中心直接注册即可
总结
以上就是本人这次的安装及配置过程,有些步骤稍微做了省略,但是大致上就是这样。最早是试了几次docker安装的mssql,但是怎么都不行,一直报错,提示:创建失败: 找不到对象“T_META_FORMENUMITEM
试了放行docker的135及1433端口问题依旧,将docker挂载的文件夹给与777权限,问题依旧,云星空安装的文件夹也给与了everyone权限,就是不行,希望后期有成功的朋友私聊或者艾特我一下,告知一下应该怎么操作
附录:
金蝶自带的管理中心、数据中心、BOS的bak文件在安装目录的位置:
*\Kingdee\K3Cloud\ManageSite\App_Data\DataBase\PatternDbFile