首页主机资讯SQL Server在Debian上的网络配置技巧

SQL Server在Debian上的网络配置技巧

时间2025-10-21 18:22:04发布访客分类主机资讯浏览702
导读:1. 安装SQL Server 在Debian上配置网络前,需先完成SQL Server的基础安装。通过Microsoft官方仓库安装,确保版本兼容性: # 导入微软公钥并注册仓库 wget -qO- https://packages.mi...

1. 安装SQL Server
在Debian上配置网络前,需先完成SQL Server的基础安装。通过Microsoft官方仓库安装,确保版本兼容性:

# 导入微软公钥并注册仓库
wget -qO- https://packages.microsoft.com/keys/microsoft.asc | sudo apt-key add -
sudo add-apt-repository "$(wget -qO- https://packages.microsoft.com/config/debian/$(lsb_release -rs)/prod.list)"
# 更新包列表并安装
sudo apt-get update
sudo apt-get install -y mssql-server
# 安装过程中设置SA账户密码(必填)

此步骤为后续网络配置的前提,确保SQL Server服务正常运行。

2. 启用并配置TCP/IP协议
SQL Server默认可能未启用TCP/IP,需通过配置文件或工具手动开启:

  • 方法1:修改配置文件(推荐)
    编辑/etc/sqlserver/sqlserver.conf,找到[network] section,设置:
    [network]
    tcpip = true
    tcpport = 1433  # 默认端口,可自定义(如1434)
    
  • 方法2:使用mssql-conf工具
    通过命令快速配置:
    sudo mssql-conf set network.tcpip_enabled true
    sudo mssql-conf set network.tcp_port 1433
    
    修改后需重启服务生效:
    sudo systemctl restart mssql-server
    
    此步骤确保SQL Server监听TCP连接,是远程访问的基础。

3. 配置防火墙允许SQL Server端口
Debian默认使用ufw防火墙,需开放SQL Server端口(默认1433):

# 允许TCP端口1433
sudo ufw allow 1433/tcp
# 重新加载防火墙规则
sudo ufw reload

若使用iptables,可执行:

sudo iptables -A INPUT -p tcp --dport 1433 -j ACCEPT

防火墙是网络安全的关键,未开放端口会导致远程连接失败。

4. 配置SQL Server允许远程连接
默认情况下,SQL Server仅允许本地连接(localhost),需通过以下步骤开启远程访问:

  • 步骤1:启用远程连接功能
    使用sqlcmd工具登录SQL Server,执行:
    sudo /opt/mssql-tools/bin/sqlcmd -S localhost -U SA -P '<
        YourStrong@Passw0rd>
        '
    
    登录后,运行以下SQL命令:
    EXEC sp_configure 'remote access', 1;
          -- 启用远程访问
    RECONFIGURE;
          -- 应用配置
    
  • 步骤2:确认身份验证模式
    SQL Server需配置为混合模式身份验证(SQL Server + Windows),以支持SQL登录:
    ALTER LOGIN sa ENABLE;
          -- 启用SA账户
    ALTER LOGIN sa WITH PASSWORD = '<
        YourStrong@Passw0rd>
        ';
          -- 设置强密码
    EXEC sp_configure 'show advanced options', 1;
        
    RECONFIGURE;
        
    EXEC sp_configure 'security.mode', 1;
          -- 1=混合模式,0=Windows模式
    RECONFIGURE;
        
    
    混合模式是远程连接的常见要求,确保非Windows用户可访问。

5. 可选:配置SQL Server Browser服务(实例名访问)
若需通过实例名称(如MSSQLSERVER)而非IP地址连接,需启动SQL Server Browser服务:

# 启动服务
sudo systemctl start sqlbrowser
# 设置开机自启
sudo systemctl enable sqlbrowser
# 开放UDP端口1434(Browser服务端口)
sudo ufw allow 1434/udp

此服务将实例名称解析为IP地址和端口,方便客户端连接。

6. 验证网络连接
使用sqlcmd从远程机器测试连接,确保配置正确:

sqlcmd -S <
    Debian服务器IP>
    ,1433 -U SA -P '<
    YourStrong@Passw0rd>
    '

若连接成功,将进入SQL命令行界面,表示网络配置无误。

关键注意事项

  • 端口冲突:避免SQL Server端口与其他服务(如MySQL的3306)冲突,可通过netstat -tulnp | grep 1433检查端口占用。
  • SELinux:若Debian启用了SELinux,需调整策略允许SQL Server网络访问(通常Debian默认使用AppArmor)。
  • 日志排查:若连接失败,查看SQL Server日志(/var/opt/mssql/log/errorlog)定位问题,常见原因包括端口未开放、身份验证模式错误。

声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!


若转载请注明出处: SQL Server在Debian上的网络配置技巧
本文地址: https://pptw.com/jishu/731391.html
Debian上SQL Server的权限管理策略 Ubuntu上Kubernetes的版本如何选择

游客 回复需填写必要信息