SQL Server Linux部署实战指南
sqlserver部署linux

作者:IIS7AI 时间:2025-01-02 14:15



SQL Server 在 Linux 上的部署:强大而灵活的数据库解决方案 在当今的数据驱动世界中,数据库管理系统(DBMS)的选择对于企业的成功至关重要

    Microsoft SQL Server 作为一款功能强大、广泛使用的关系型数据库管理系统,不仅在传统 Windows 平台上表现出色,近年来也在 Linux 系统上实现了卓越的兼容性和性能

    本文将详细介绍如何在 Linux 环境下部署 SQL Server,并借助 cpolar 内网穿透工具实现远程访问,使数据库管理更加便捷和高效

     一、部署环境准备 在部署 SQL Server 之前,首先需要确保 Linux 系统的环境配置满足要求

    以下是推荐的硬件和软件配置: - 虚拟机:VMware Workstation 或其他虚拟化平台 - 操作系统:CentOS 7/8 或 Ubuntu20.04 文件系统:XFS 或 EXT4 - 内存:至少 2 GB 内存(推荐 4 GB 或以上) 磁盘空间:6 GB 以上可用磁盘空间 处理器速度:2 GHz 或更高 - 处理器核心数:2 个核心(推荐 4 个核心或以上) 处理器类型:仅兼容 x64 架构 二、安装 SQL Server 1.添加 SQL Server 存储库 首先,需要将 SQL Server 的存储库添加到 Linux 系统中

    对于 CentOS 系统,可以使用以下命令: bash sudo curl -o /etc/yum.repos.d/mssql-server.repo https://packages.microsoft.com/config/rhel/7/mssql-server-2019.repo 或者对于 CentOS 8 sudo curl -o /etc/yum.repos.d/mssql-server.repo https://packages.microsoft.com/config/rhel/8/mssql-server-2022.repo sudo yum makecache 对于 Ubuntu 系统,可以使用以下命令: bash wget -qO- https://packages.microsoft.com/keys/microsoft.asc | sudo tee /etc/apt/trusted.gpg.d/microsoft.asc sudo add-apt-repository $(wget -qO- https://packages.microsoft.com/config/ubuntu/20.04/mssql-server-2019.list) sudo apt-get update 2.安装 SQL Server 添加存储库后,可以使用包管理器安装 SQL Server

    对于 CentOS 系统,运行: bash sudo yum install -y mssql-server 对于 Ubuntu 系统,运行: bash sudo apt-get install -y mssql-server 3.配置 SQL Server 安装完成后,使用 `mssql-conf setup` 命令进行配置

    按照提示设置 SA 密码并选择 SQL Server 版本

    例如: bash sudo /opt/mssql/bin/mssql-conf setup 在配置过程中,需要选择 SQL Server 的版本

    免费提供的版本包括 Evaluation(评估版,180 天限制)、Developer(开发者版)和 Express(表达版)

    推荐选择 Developer 版作为测试和开发用途

     4.启动并验证 SQL Server 配置完成后,启动 SQL Server 服务,并设置系统启动时自动启动: bash sudo systemctl start mssql-server sudo systemctl enable mssql-server 验证 SQL Server 是否正在运行: bash systemctl status mssql-server 默认情况下,SQL Server 使用 TCP 协议监听 1433 端口

    如果系统使用 FirewallD 作为防火墙,需要开放该端口: bash sudo firewall-cmd --zone=public --add-port=1433/tcp --permanent sudo firewall-cmd --reload 三、安装 SQL Server 命令行工具 为了更方便地管理 SQL Server,可以安装 SQL Server 命令行工具

    对于 CentOS 系统,使用以下命令: sudo curl -o /etc/yum.repos.d/msprod.repo https://packages.microsoft.com/config/rhel/7/prod.repo sudo yum -y install mssql-tools unixODBC-devel 对于 Ubuntu 系统,使用以下命令: sudo apt-get install -y mssql-tools unixODBC-dev 安装完成后,将`mssql-tools` 的路径添加到`$PATH`变量中: echo export PATH=$PATH:/opt/mssql-tools/bin | sudo tee /etc/profile.d/mssql.sh source /etc/profile.d/mssql.sh 四、本地连接测试 在部署和配置完成后,需要进行本地连接测试以确保 SQL Server 正常工作

    可以使用图形化工具(如 Navicat)或命令行工具(如`sqlcmd`)进行测试

     例如,使用 `sqlcmd` 进行本地连接: sqlcmd -S localhost -U SA -P 如果连接成功,将显示 SQL Server 的命令提示符,可以输入 SQL 语句进行查询和操作

     五、使用 cpolar 实现远程访问 为了实现远程访问 SQL Server 数据库,可以使用 cpolar 内网穿透工具

    cpolar 支持 HTTP/HTTPS/TCP/TLS/FTP 协议,使用不限制流量,并且支持永久免费使用

     1.安装 cpolar 使用一键脚本安装 cpolar: bash curl -L https://www.cpolar.com/static/downloads/install-release-cpolar.sh | sudo bash 2.登录并配置 cpolar 登录 cpolar 官网后台,获取认证 token,并在命令行中配置: bash cpolar authtoken xxxxxxx 将 cpolar 添加到系统服务并启动: bash sudo systemctl enable cpolar sudo systemctl start cpolar 3.创建隧道并映射 SQL Server 在浏览器中访问 cpolar 的 Web UI 管理界面(Linux 局域网 IP 地址 + 9200 端口),使用 cpolar 邮箱账号登录

     在隧道管理中创建一个 TCP 协议的隧道,指向 SQL Server 的 1433 端口: - 隧道名称:自定义(不与已有隧道名称重复) - 协议:TCP - 本地地址:1433 - 域名类型:选择随机域名(或购买专业版保留固定 TCP 端口地址) 创建成功后,在在线隧道列表中查看并复制 TCP 协议的公网地址

     4.测试远程连接 使用图形化工具(如 Navicat)或命令行工具(如 `sqlcmd`),输入复制的公网地址、SQL Server 用户名和密码,进行测试连接

     注意:公网地址中的冒号(:)需改为逗号(,),这是 cpolar 特有的格式要求

     六、固定公网地址(可选) 由于使用随机临时 TCP 端口地址生成的公网地址会在 24 小时内随机变化,为了保持连接的稳定性,可以配置固定的 TCP 端口地址

    这需要升级到 cpolar 的专业版套餐或以上

     1.保留固定 TCP 地址 在 cpolar 官网后台的预留功能中,为远程 SQL Server 保留一个固定的 TCP 地址

     2.配置隧道 在 cpolar 的 Web UI 管理界面中,找到之前创建的隧道,并编辑隧道信息,将保留的固定 TCP 地址配置到隧道中

     3.测试连接 使用新的固定公网地址进行测试连接,确保连接成功

     七、总结 通过本文的介绍,我们详细了解了如何在 Linux 环境下部署 SQL Server 数据库,并使用 cpolar 内网穿透工具实现远程访问

    SQL Server 在 Linux 上的部署不仅提供了强大的数据库功能,还带来了更高的灵活性和兼容性

    借助 cpolar,我们可以轻松实现远程访问和管理,大大提高了工作效率和便捷性

    无论是对于开发测试环境还是生产环境,SQL Server 在 Linux 上的部署都是一个值得考虑的选择