公司新服务器安装SqlServer数据库,最开始网上找文档安装后服务一直启动不起来,报了一个莫名的错误(code=exited,status=127),上网查了好久都没有发现问题原因,也排除了内存等其他原因,一顿操作还把服务器环境弄坏了,最后含泪重装系统,按照官方文档安装,成功了!!!记录一下历程。
1.服务器环境:
centos7
gcc9.3.0
glibc2.31
python环境
2.安装SqlServer数据库
1)下载 Microsoft SQL Server 2019 Red Hat 存储库配置文件:
sudo curl -o /etc/yum.repos.d/mssql-server.repo https://packages.microsoft.com/config/rhel/7/mssql-server-2019.repo
2)运行以下命令以安装 SQL Server:
sudo yum install -y mssql-server
3)包安装完成后,运行 mssql-conf setup,按照提示设置 SA 密码并选择版本。
sudo /opt/mssql/bin/mssql-conf setup
4)完成配置后,验证服务是否正在运行:
systemctl status mssql-server
5)若要允许远程连接,请在 RHEL 的防火墙上打开 SQL Server 端口。 默认的 SQL Server 端口为 TCP 1433。 如果为防火墙使用的是 FirewallD,则可以使用以下命令:
sudo firewall-cmd --zone=public --add-port=1433/tcp --permanent
sudo firewall-cmd --reload
此时,SQL Server 2019 正在 RHEL 计算机上运行,随时可以使用!
3.安装 SQL Server 命令行工具
1)下载 Microsoft Red Hat 存储库配置文件。
sudo curl -o /etc/yum.repos.d/msprod.repo https://packages.microsoft.com/config/rhel/7/prod.repo
2)如果安装了早期版本的 mssql-tools,请删除所有旧的 unixODBC 包。
sudo yum remove unixODBC-utf16 unixODBC-utf16-devel
3)运行以下命令,以使用 unixODBC 开发人员包安装 mssql-tools。 有关详细信息,请参阅安装 Microsoft ODBC Driver for SQL Server (Linux)。
sudo yum install -y mssql-tools unixODBC-devel
4)为方便起见,向 PATH 环境变量添加 /opt/mssql-tools/bin/
。 这样可以在不指定完整路径的情况下运行这些工具。 运行以下命令以修改登录会话和交互式/非登录会话的路径:
echo 'export PATH="$PATH:/opt/mssql-tools/bin"' >> ~/.bash_profile
echo 'export PATH="$PATH:/opt/mssql-tools/bin"' >> ~/.bashrc
source ~/.bashrc
4.本地连接
1)使用 SQL Server 名称 (-S),用户名 (-U) 和密码 (-P) 的参数运行 sqlcmd 。 在本教程中,用户进行本地连接,因此服务器名称为 localhost
。 用户名为 SA
,密码是在安装过程中为 SA 帐户提供的密码。
sqlcmd -S localhost -U SA -P ''
2)如果成功,应会显示 sqlcmd 命令提示符:1>
3)如果连接失败,先尝试诊断错误消息中所述的问题。 然后查看连接故障排除建议。
5.创建用户和数据库
create database 数据库名 #创建数据库
create login 登录用户名 with password='密码', default_database=上面的数据库名 #创建登录账户
create user 数据库用户名 for login 上面的登录用户名 with default_schema=dbo #创建数据库账户
exec sp_addrolemember 'db_owner', '上面数据库用户名' #授权
ALTER DATABASE 上面的数据库名 SET TRUSTWORTHY ON #授权
ALTER AUTHORIZATION ON DATABASE::上面的数据库名 TO 上面数据库用户名 #授权
以上内容参考官网教程:
RHEL:在 Linux 上安装 SQL Server - SQL Server | Microsoft Docs