SQL Server 2017 for Linux
参考文章: https://docs.microsoft.com/zh-cn/sql/linux/quickstart-install-connect-red-hat
安装 SQL Server 和 Red Hat 上创建数据库
首先安装 SQL Server 2017 上 Red Hat Enterprise Linux (RHEL) 7.3 +。 然后使用 sqlcmd 连接,以创建第一个数据库并运行查询。
安装指南:系统及配置要求 https://docs.microsoft.com/zh-cn/sql/linux/sql-server-linux-setup
注:本教程系统CentOs7,内存3G
1.下载 Microsoft SQL Server Red Hat 存储库配置文件:
curl -o /etc/yum.repos.d/mssql-server.repo https://packages.microsoft.com/config/rhel/7/mssql-server-2017.repo
2. 运行以下命令,安装 SQL Server:
yum install -y mssql-server
3. 软件包安装完成后,运行mssql conf 安装命令并按照操作提示设置 SA 密码,并选择你的版本。
/opt/mssql/bin/mssql-conf setup
注:请确保为 SA 帐户指定强密码(最少 8 个字符,包括大写和小写字母、十进制数字和/或非字母数字符号)。
4. 配置完成后,请验证服务是否正在运行:
systemctl status mssql-server
5. 若要允许远程连接,请在 RHEL 上打开防火墙上的 SQL Server 端口。 默认的 SQL Server 端口为 TCP 1433。 如果你使用FirewallD适合您的防火墙,你可以使用以下命令:
firewall-cmd --zone=public --add-port=1433/tcp --permanent
firewall-cmd --reload
安装 SQL Server 命令行工具
若要创建数据库,你需要使用一种工具,可以在 SQL Server 上运行 TRANSACT-SQL 语句进行连接。 以下是 SQL Server 命令行工具: sqlcmd和bcp。
1.下载 Microsoft Red Hat 存储库配置文件。
curl -o /etc/yum.repos.d/msprod.repo https://packages.microsoft.com/config/rhel/7/prod.repo
2. 如果你有以前版本的mssql 工具安装,请删除任何较旧的 unixODBC 程序包。
yum remove unixODBC-utf16 unixODBC-utf16-devel
3. 运行以下命令以安装mssql 工具与 unixODBC 开发人员包。
yum install -y mssql-tools unixODBC-devel
4. 为方便起见,添加/opt/mssql-tools/bin/到你的PATH境变量。 这使您可以运行工具,而无需指定完整路径。 在登录会话和交互式/非登录会话中运行以下命令以修改PATH:
echo 'export PATH="$PATH:/opt/mssql-tools/bin"' >> ~/.bash_profile
echo 'export PATH="$PATH:/opt/mssql-tools/bin"' >> ~/.bashrc
source ~/.bashrc
以下步骤使用 sqlcmd 本地连接到新的 SQL Server 实例。
1.使用 SQL Server 名称 (-S),用户名 (-U) 和密码 (-P) 的参数运行 sqlcmd。 在本教程中,用户进行本地连接,因此服务器名称为 localhost。 用户名为 SA,密码是在安装过程中为 SA 帐户提供的密码。
sqlcmd -S localhost -U SA -P '<YourPassword>'
提示:可以在命令行上省略密码,以收到密码输入提示。
注:如果以后决定进行远程连接,请指定 -S 参数的计算机名称或 IP 地址,并确保防火墙上的端口 1433 已打开。
2.如果成功,应会显示 sqlcmd 命令提示符:1>。
3.如果连接失败,请首先尝试根据错误消息诊断问题。 然后查看连接故障排除建议。
下面各部分将逐步介绍如何使用 sqlcmd 新建数据库、添加数据并运行简单查询。
以下步骤创建一个名为 TestDB 的新数据库。
1. 在 sqlcmd 命令提示符中,粘贴以下 Transact-SQL 命令以创建测试数据库:
1>create database TestDB
2>go
2. 编写一个查询以返回服务器上所有数据库的名称:
1>selectName from sys.Databases
1>go
注:必须在新行中键入 GO或go 才能执行以前的命令
接下来创建一个新表 test,然后插入两个新行。
1. 在 sqlcmd 命令提示符中,将上下文切换到新的 TestDB 数据库:
1>use TestDB
2. 创建名为 test 的新表:
1>CREATE TABLE test (id INT, name NVARCHAR(50), quantity INT)
3. 将数据插入新表:
1>INSERT INTO test VALUES (1, 'banana', 150); INSERT INTO test VALUES (2, 'orange', 154);
4. 要执行上述命令的类型 GO:
1>GO
运行查询以从 test 表返回数据。
1. 通过 sqlcmd 命令提示符输入查询,以返回 test 表中数量大于 152 的行:
1>SELECT * FROM test WHERE quantity > 152;
1>go
退出 sqlcmd 命令提示符
1>QUIT
后期更新 参考 https://docs.microsoft.com/zh-cn/sql/linux/sql-server-linux-setup#upgrade
yum update mssql-server
浙公网安备 33010602011771号