CentOS环境下SQL Server虚拟化部署方案
在CentOS系统上部署SQL Server虚拟化方案,核心是通过**虚拟化技术(如VMware、KVM)创建CentOS虚拟机,再在虚拟机中安装SQL Server实例;也可结合容器化技术(如Docker)**提升部署灵活性。以下是具体实施方案及关键步骤:
sudo yum update -y;sudo yum install -y curl wget vim net-tools;sudo setenforce 0(临时关闭),编辑/etc/selinux/config设置SELINUX=disabled(永久关闭)。若直接在CentOS虚拟机中安装SQL Server(非容器化),需完成以下步骤:
sudo rpm --import https://packages.microsoft.com/keys/microsoft.asc
sudo curl -o /etc/yum.repos.d/mssql-server.repo https://packages.microsoft.com/config/rhel/7/mssql-server-2019.repo
sudo yum install -y mssql-server
sudo /opt/mssql/bin/mssql-conf setup
sudo systemctl start mssql-server
sudo systemctl enable mssql-server
sudo firewall-cmd --zone=public --add-port=1433/tcp --permanent
sudo firewall-cmd --reload
容器化部署可提升资源利用率、简化管理,适用于快速搭建SQL Server实例:
docker pull mcr.microsoft.com/mssql/server:2019-latest
mkdir -p /data/sqlserver/data
chown -R 10001:0 /data/sqlserver/data/
docker run命令启动容器,映射端口、挂载数据目录并设置环境变量:docker run -d \
-p 1433:1433 \
-e 'ACCEPT_EULA=Y' \
-e 'SA_PASSWORD=YourStrongPassword@123' \
-v /data/sqlserver/data:/var/opt/mssql \
--name sqlserver \
mcr.microsoft.com/mssql/server:2019-latest
ACCEPT_EULA=Y:同意Microsoft最终用户许可协议;SA_PASSWORD:设置SA用户密码(需符合复杂度要求);-v:将宿主机目录挂载到容器内的SQL Server数据目录(持久化数据)。若需实现高可用性,可在CentOS虚拟机上部署SQL Server AlwaysOn Availability Group(AG),步骤如下:
ansible及microsoft-sql角色:sudo yum install -y ansible ansible-collection-microsoft-sql;[sqlgroup]
node1 ansible_host=192.168.1.101
node2 ansible_host=192.168.1.102
node3 ansible_host=192.168.1.103
deploy_ag.yml),配置主节点、创建数据库、添加副本;ansible-playbook deploy_ag.yml。-m 4g);