在CentOS系統中配置SQL Server以允許遠程連接,可以按照以下步驟進行:
首先,確保你已經在CentOS上安裝了SQL Server。你可以使用Microsoft提供的官方安裝指南來安裝SQL Server。
打開SQL Server Configuration Manager:
sudo systemctl start mssql-server
sudo systemctl enable mssql-server
/opt/mssql-tools/bin/sqlserver-config-manager
)。啟用TCP/IP協議:
配置TCP/IP屬性:
重啟SQL Server服務:
你也可以使用PowerShell腳本來配置SQL Server以允許遠程連接。
安裝PowerShell模塊:
Install-Module -Name SqlServer
連接到SQL Server:
$server = "你的服務器地址"
$credential = Get-Credential
$connectionString = "Server=$server;Integrated Security=True;"
$connection = New-Object System.Data.SqlClient.SqlConnection
$connection.ConnectionString = $connectionString
$connection.Open()
配置TCP/IP協議:
Import-Module SqlServer
$server = "你的服務器地址"
$instanceName = "MSSQLSERVER" # 替換為你的實例名
$tcpIp = Get-SqlInstanceConfigProperty -ServerInstance $instanceName -Property "TcpEnabled"
if (-not $tcpIp.Value) {
Set-SqlInstanceConfigProperty -ServerInstance $instanceName -Property "TcpEnabled" -Value 1
}
$tcpPort = Get-SqlInstanceConfigProperty -ServerInstance $instanceName -Property "TcpPort"
if ($tcpPort.Value -ne 1433) {
Set-SqlInstanceConfigProperty -ServerInstance $instanceName -Property "TcpPort" -Value 1433
}
重啟SQL Server服務:
Restart-Service mssql-server
確保你的CentOS防火墻允許通過TCP端口1433(或你配置的其他端口)進行通信。
sudo firewall-cmd --permanent --zone=public --add-port=1433/tcp
sudo firewall-cmd --reload
如果你希望使用SQL Server身份驗證而不是Windows身份驗證,你需要創建一個SQL Server登錄名并啟用SQL Server身份驗證。
連接到SQL Server:
sqlcmd -S 你的服務器地址 -U sa -P 你的密碼
創建登錄名:
CREATE LOGIN [用戶名] WITH PASSWORD = '你的密碼';
創建用戶并映射到數據庫:
USE [你的數據庫名];
CREATE USER [用戶名] FOR LOGIN [用戶名];
EXEC sp_addrolemember 'db_datareader', '用戶名';
EXEC sp_addrolemember 'db_datawriter', '用戶名';
完成以上步驟后,你應該能夠從遠程計算機連接到你的CentOS上的SQL Server實例。