在Debian上集成SQL Server可以通過多種方式實現,主要包括安裝與配置、連接方式、數據同步、數據遷移和性能優化。以下是詳細的解決方案:
更新系統并安裝依賴項:
sudo apt update && sudo apt upgrade
sudo apt install -y curl gnupg apt-transport-https
添加Microsoft SQL Server存儲庫:
curl https://packages.microsoft.com/keys/microsoft.asc | sudo gpg --dearmor -o /usr/share/keyrings/microsoft-archive-keyring.gpg
echo "deb [signed-by=/usr/share/keyrings/microsoft-archive-keyring.gpg] https://packages.microsoft.com/debian/12/prod/ stable main" | sudo tee /etc/apt/sources.list.d/mssql-server.list
安裝SQL Server:
sudo apt update
sudo apt install -y mssql-server
配置SQL Server:
sudo /opt/mssql/bin/mssql-conf setup
安裝SQL Server命令行工具:
sudo apt install -y mssql-tools
連接與管理SQL Server:
sqlcmd -S localhost -U SA -P YourPassword
配置防火墻:
sudo apt install firewalld
sudo firewall-cmd --zone public --add-port 1433/tcp --permanent
sudo firewall-cmd --reload
驗證SQL Server服務狀態:
sudo systemctl status mssql-server
SQL Server在Linux上的高可用性通常通過SQL Server Always On可用性組來實現。以下是一個基本的步驟:
準備節點:確保所有節點(服務器)都已安裝并配置好SQL Server。
創建配置文件:在每個節點上創建一個配置文件(通常位于 /etc/sqlserver/sqlservr.exe.config),并配置共享存儲和日志傳輸。
初始化可用性組:在一個節點上初始化可用性組:
sqlcmd -S YourServerIP -E -Q "CREATE AVAILABILITY GROUP [YourAGName] WITH (ENCRYPTION ON, LOG_ROTATION_ON_TIMEOUT OFF, MAX_LOG_FILES 2, MAX_LOG_MEMBERS 2, MAX_DATA_FILES 1024)"
添加數據庫到可用性組:
sqlcmd -S YourServerIP -E -Q "ALTER AVAILABILITY GROUP [YourAGName] ADD DATABASE [YourDatabaseName]"
配置故障轉移:
sqlcmd -S YourServerIP -E -Q "ALTER AVAILABILITY GROUP [YourAGName] SET FAILURE_POLICY AUTO"
測試故障轉移:手動觸發故障轉移以測試配置:
sqlcmd -S SecondaryServerIP -E -Q "ALTER AVAILABILITY GROUP [YourAGName] FAILOVER"
sudo apt get install unixodbc unixodbc-dev
使用dstat命令:
sudo apt get install dstat
dstat -c # 監控CPU使用情況
dstat -m # 監控內存使用情況
dstat -d # 監控磁盤I/O情況
dstat -n # 監控網絡流量
使用SQL Server自帶的工具:如系統監視器、活動監視器、SQL Server Profiler等。
使用第三方監控工具:如dbForge Studio for SQL Server。