配置SQL Server on Linux(2)

来源:https://www.cnblogs.com/fishparadise/archive/2017/12/28/8125527.html
-Advertisement-
Play Games

1. 前言 前一篇配置SQL Server on Linux(1),地址:http://www.cnblogs.com/fishparadise/p/8125203.html ,是關於更改資料庫排序規則的。實現的原理跟在Windows平臺差不多,都是需要備份用戶資料庫,重建系統資料庫來實現的,不過操 ...


1. 前言

前一篇配置SQL Server on Linux(1),地址:http://www.cnblogs.com/fishparadise/p/8125203.html ,是關於更改資料庫排序規則的。實現的原理跟在Windows平臺差不多,都是需要備份用戶資料庫,重建系統資料庫來實現的,不過操作過程簡化了。下麵的配置是一些常規的設置,比如最大記憶體,預設數據文件位置,等。

 

2. 環境

Linux: CentOS 7.4,SQL Server 2017 (RC2) - 14.0.900.75 (X64)

 

3. 更改設置

3.1 記憶體限制

使用mssql-conf工具

/opt/mssql/bin/mssql-conf set memory.memorylimitmb 3500

 

重啟資料庫實例

systemctl restart mssql-server

 

 

疑問

以上方法是官方的步驟,但使用SSMS去查看實例的記憶體設置,發現最大記憶體限制還是沒有改變。不知道為什麼。使用sys.sp_configure去配置最大記憶體則生效了。

 

EXEC sys.sp_configure N'show advanced options', N'1'  RECONFIGURE WITH OVERRIDE
GO
EXEC sys.sp_configure N'max server memory (MB)', N'3500'
GO
RECONFIGURE WITH OVERRIDE
GO
EXEC sys.sp_configure N'show advanced options', N'0'  RECONFIGURE WITH OVERRIDE
GO

 

 

3.2 設置預設數據或日誌目錄位置

創建自定義目錄及更改目錄許可權

[root@134test ~]# mkdir -p /data/mssql_data/
[root@134test ~]# chown -R mssql:mssql /data/mssql_data/

 

使用mssql-conf工具

[root@134test ~]# /opt/mssql/bin/mssql-conf set filelocation.defaultdatadir /data/mssql_data/
SQL Server needs to be restarted in order to apply this setting. Please run
'systemctl restart mssql-server.service'.

 

重啟資料庫實例生效

systemctl restart mssql-server

 

測試(數據和日誌文件都在這個目錄下)

4> create database db2;
5> go

 

[root@134test ~]# cd /data/mssql_data/
[root@134test /data/mssql_data]# ll db*
-rw-rw---- 1 mssql mssql  3932160 2017-12-27 12:31 db1_log.ldf
-rw-rw---- 1 mssql mssql 12582912 2017-12-27 12:31 db1.mdf
-rw-rw---- 1 mssql mssql  8388608 2017-12-27 12:37 db2_log.ldf
-rw-rw---- 1 mssql mssql  8388608 2017-12-27 12:33 db2.mdf

 

如果需要單獨更改日誌的目錄(如/tmp)

/opt/mssql/bin/mssql-conf set filelocation.defaultlogdir /tmp/

 

 

3.3 更改 TCP 埠

使用mssql-conf工具

/opt/mssql/bin/mssql-conf set network.tcpport <new_tcp_port>

 

重啟實例生效

[root@134test ~]# systemctl restart mssql-server

 

測試

[root@134test ~# /opt/mssql/bin/mssql-conf set network.tcpport 1444
SQL Server needs to be restarted in order to apply this setting. Please run
'systemctl restart mssql-server.service'.
[root@134test ~]# systemctl restart mssql-server

 

[root@134test ~]# sqlcmd -S localhost -U sa
Password: 
Sqlcmd: Error: Microsoft ODBC Driver 13 for SQL Server : Login timeout expired.
Sqlcmd: Error: Microsoft ODBC Driver 13 for SQL Server : TCP Provider: Error code 0x2749.
Sqlcmd: Error: Microsoft ODBC Driver 13 for SQL Server : A network-related or instance-specific error has occurred 
while establishing a connection to SQL Server. Server is not found or not accessible. Check if instance name is correct
and if SQL Server is configured to allow remote connections. For more information see SQL Server Books Online..

 

[root@134test ~]# sqlcmd -S localhost,1444 -U sa
Password: 
1> 

 

 

3.4 刪除設置

使用mssql-conf工具的unset命令

/opt/mssql/bin/mssql-conf unset network.tcpport
/opt/mssql/bin/mssql-conf unset memory.memorylimitmb
……

 

重啟實例生效

[root@134test ~]# systemctl restart mssql-server

 

 

3.5 查看當前設置及配置文件

cat /var/opt/mssql/mssql.conf

 

以下是官方提供的一個示例配置。可根據實際需要直接修改/var/opt/mssql/mssql.conf,最後重啟資料庫實例生效。未在此文件中顯示的所有設置均使用其預設值。

[EULA]
accepteula = Y

[coredump]
captureminiandfull = true
coredumptype = full

[filelocation]
defaultbackupdir = /var/opt/mssql/data/
defaultdatadir = /var/opt/mssql/data/
defaultdumpdir = /var/opt/mssql/data/
defaultlogdir = /var/opt/mssql/data/

[hadr]
hadrenabled = 0

[language]
lcid = 1033

[memory]
memorylimitmb = 4096

[network]
forceencryption = 0
ipaddress = 10.192.0.0
kerberoskeytabfile = /var/opt/mssql/secrets/mssql.keytab
tcpport = 1401
tlscert = /etc/ssl/certs/mssql.pem
tlsciphers = ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES128-SHA256:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES256-SHA:ECDHE-ECDSA-AES128-SHA:ECDHE-RSA-AES256-SHA:ECDHE-RSA-AES128-SHA:AES256-GCM-SHA384:AES128-GCM-SHA256:AES256-SHA256:AES128-SHA256:AES256-SHA:AES128-SHA
tlskey = /etc/ssl/private/mssql.key
tlsprotocols = 1.2,1.1,1.0

[sqlagent]
databasemailprofile = default
errorlogfile = /var/opt/mssql/log/sqlagentlog.log
errorlogginglevel = 7

[telemetry]
customerfeedback = true
userrequestedlocalauditdirectory = /tmp/audit

[traceflag]
traceflag0 = 1204
traceflag1 = 2345
traceflag = 3456

 

 

4. 參考

更多的配置,請參考微軟的官方文檔:https://docs.microsoft.com/zh-cn/sql/linux/sql-server-linux-configure-mssql-conf

 

 

 

 


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 今日為了學習(zhuangX),在家中電腦上安裝了VirtualBox的虛擬機,為了相容性,選擇了VMDK磁碟格式,想起辦公室的電腦,在系統配置完成後,一直提示磁碟空間不足,尷尬了,重新裝?環境啥的都需要重新配置,還需要等待漫長的時間,為了尋求解決之道,百度去了... 註意:以下操作均為測試,正式環 ...
  • 一、chown命令與chgrp命令的作用 有時你需要改變文件或目錄的屬主,比如有人離職或開發人員創建了一個在測試或生產環境中需要歸屬在系統賬戶下的應用。Linux提供了兩個命令來實現這個功能:chown命令用來改變文件的屬主,chgrp命令用來改變文件的預設屬組。 二、chown命令與chgrp命令 ...
  • 作為Windows as a Service系列的收官文,我將為大家分享使用Intune來管理Windows 10更新的方法。由於Microsoft Intune服務目前尚未在中國落地,感興趣的小伙伴可以申請全球版的Microsoft Intune的測試帳號來試一下...Magic~ ...
  • System Center Configuration Manager (SCCM)為我們環境中的Windows 10客戶端管理和更新提供了一種簡單的機制,給予了我們管理Windows 10更新的最大控制權。要管理Windows 10功能更新,System Center Configuration ... ...
  • 這篇文檔將為大家分享使用WSUS管理Windows 10更新的方法。Windows Server Update Services (WSUS)是微軟提供給客戶免費將Windows10更新部署至運行了Windows 10操作系統的電腦上的方案。我將從如下幾個步驟展開介紹: 1.創建電腦組 2.... ...
  • 簡述 這是我第一次完整的自己黑蘋果,目標是搭建一臺高性能的蘋果主機,用於開發和設計。聽說10.13系統還不是特別的穩定,這次就決定安裝10.12版本的 藉助的tonymacx86上的一篇 "文章" ,鑒於爬坑成功,就將我自己的經驗結合這篇文章做一個完整的中文版本 本文總共分為四個板塊:簡述、軟硬體準 ...
  • 目前打造完成的IDE主要有: terminator+Bundle+NERDtree+YCF(youcompleteme)+UltiSnips+新創建文件自動補充註釋和作者,版權信息等 1,當任務比較多的時候,如果在Ubuntu下切換多個終端,會比較麻煩,這裡我找到一個比較好的終端(terminato ...
  • 第一個裡程碑:檢查系統是否支持ppp [root@m01 ~]# cat /dev/ppp cat: /dev/ppp: No such device or address 如果出現以上提示則說明ppp是開啟的,可以正常架設pptp服務,若出現Permission denied等其他提示,你需要先去 ...
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...