隐藏

Centos7.*里面安装MSSQL

发布:2024/4/25 23:11:49作者:管理员 来源:本站 浏览次数:56

在Centos7.*上安装MSSQL主要包含了以下几个步骤:


1.设置安装源


2.安装SQL服务端


3.安装SQL客户端


4.执行SQL还原DB


约定:


1.宿主主机Win10


2.虚拟机Centos,Centos版本必须>=7.0,本文使用7.6版本


3.容器安装到虚拟机里面


4.容器名称为mssql2017


5.mssql秘密设定为TYdemo@2020


6.虚拟机目录 /opt/mssql 映射到容器 /var/opt/mssql ,里面包含了 data,log


准备:


mkdir /opt/mssql/


mkdir /opt/mssql/backup


win10备份一个SQL库,暂定取名为AAA_v3.bak


操作:


1.设置安装源


curl -o /etc/yum.repos.d/mssql-server.repo https://packages.microsoft.com/config/rhel/7/mssql-server-2017.repo


2.安装SQL服务端


yum install -y mssql-server





3.安装SQL配置


/opt/mssql/bin/mssql-conf setup



查看版本与路径


systemctl status mssql-server


服务启动


systemctl start mssql-server


开机启动


systemctl enable mssql-server


修改启动端口


vi /var/opt/mssql/mssql.conf


依次设置:


[sqlagent]


enabled=true


[network]


tcpport=14330


保存重启mssql


防火墙放行:


注意:基于iptables和firewall-cmd的操作方式略为不同,端口14330放行,具体操作省略;此处可用natcat连接测试了。


4.客户端安装


curl https://packages.microsoft.com/config/rhel/7/prod.repo > /etc/yum.repos.d/msprod.repo


yum install -y mssql-tools


5.环境变量


echo 'export PATH="$PATH:/opt/mssql-tools/bin"' >> ~/.bash_profile


echo 'export PATH="$PATH:/opt/mssql-tools/bin"' >> ~/.bashrc


source ~/.bashrc


6.查看备份


查看备份逻辑名称,口令如下:


sqlcmd -S '127.0.0.1,14330' -U SA -P 'TYdemo@2020' -Q 'RESTORE FILELISTONLY FROM DISK = "/var/opt/mssql/backup/AAA.bak"' | tr -s ' ' | cut -d ' ' -f 1-2


LogicalName PhysicalName


----------------------------------------------------------------------------------------------------------------


AAA_v1 D:\SqlData\data\MSSQL11.MSSQLSERVER\MSSQL\DATA\AAA_v3.mdf


AAA_v1_log D:\SqlData\data\MSSQL11.MSSQLSERVER\MSSQL\DATA\AAA_v3_1.ldf


注意红色出名字


7.DB还原


7.1SQL方式还原


RESTORE DATABASE [AAA_v3] FROM DISK = N'/var/opt/mssql/backup/AAA_v3.bak' \

WITH FILE = 1, MOVE N'AAA_v1' TO N'/var/opt/mssql/data/AAA_v3.mdf', \

MOVE N'AAA_v1_log' TO N'/var/opt/mssql/data/AAA_v3_1.ldf', NOUNLOAD, REPLACE, STATS = 5


7.2SQLCMD方式还原


sqlcmd -S '127.0.0.1,14330' -U SA -P 'TYdemo@2020' \

-Q 'RESTORE DATABASE [AAA_v3] FROM  DISK = N"/var/opt/mssql/backup/AAA_v3.bak" \

WITH  FILE = 1,  MOVE N"AAA_v1" TO N"/var/opt/mssql/data/AAA_v3.mdf",  \

MOVE N"AAA_v1_log" TO N"/var/opt/mssql/data/AAA_v3_1.ldf",  NOUNLOAD,  REPLACE,  STATS = 5'


7.3SSMS方式还原


和在Window提供的MSSQL服务的还原模式一模一样;区别在于选择备份集的路径为Linux下面的路径格式,MDF,LDF文件指定的路径应符合Linux的路径格式


7.4连接测试


通过前面的操作基本可以实现数据的访问了。


8.操作结束