使用 Microsoft 登入
登入或建立帳戶。
您好:
選取其他帳戶。
您有多個帳戶
選擇您要用來登入的帳戶。

徵狀

假設您使用的是 Linux 上的 SQL Server 2017。 根據預設,master database 位於 [位置] /var/opt/mssql/data現在,您想要將主資料庫檔案和錯誤記錄檔的位置變更至不同的位置。

解決方案

此更新包含在 SQL Server 的下列累積更新中:

       SQL Server 2017 的累積更新4

安裝 SQL server 2017 CU4 之後,您就可以變更 master 資料庫檔案和錯誤記錄檔位置的位置。

每個新的 SQL Server 累計更新都包含所有的修正程式,以及前一個累積更新中所包含的所有安全性修正程式。 查看 SQL Server 的最新累計更新:

SQL Server 2017 的最新累計更新

其他相關資訊

設定 Errorlogfile 位置:

  • 使用下列命令來設定新的錯誤日誌位置。 確定資料夾結構是預先建立的,而「mssql」帳戶具有建立檔案的許可權。

    • /mssql-conf 設定 filelocation errorlogfile/home/user/sqlserver/log/errorlog

    • 錯誤記錄的環境變數是 MSSQL_ERROR_LOG_FILE。

以下是設定主資料基底檔案位置的案例和步驟:

注意: 請務必在進行任何變更前,先完成包括主資料庫在內的所有資料庫備份。

案例1:在現有的 SQL 安裝上變更 master 資料庫檔案的位置。

  • 您可以在 mssql 會議公用程式中使用新的選項,以提供主要版 .mdf、mastlog 和錯誤日誌的位置。

  • 以下是設定位置的命令。

  • /mssql-conf 設定 filelocation masterdatafile/home/user/sqlserver/data/master.mdf

  • /mssql-conf 設定 filelocation masterlogfile/home/user/sqlserver/data/mastlog.ldf

  • 在設定設定之前,請確定提供的路徑已存在,且「mssql」使用者擁有該資料夾的完整許可權。

  • 設定 [停止 mssql-伺服器] (systemctl [停止 mssql-伺服器]),然後將 master. .mdf 和 mastlog 移至設定的位置,然後重新開機 sql server (systemctl [啟動 mssql-server])。

案例2:在安裝前預先設定 master 資料庫檔案的位置。

  • 在您安裝 mssql Server 之後(例如: apt-取得安裝 mssql-server)。

  • 您可以設定環境變數,如下所示:

  • export MSSQL_MASTER_DATA_FILE =/home/user/sqlservr/data/master.mdf

  • export MSSQL_MASTER_LOG_FILE =/home/user/sqlservr/data/mastlog.ldf

  • 或者,您可以使用案例1中所提及的步驟來設定設定,然後再按下 mssql 帳戶所擁有之 /var/opt/mssql/ 資料夾的許可權。 如果您設定了環境變數與 mssql 會議設定,則環境變數將會優先。

注意:主要資料基底的檔案名應該是 ".master" ,而主版記錄在安裝期間應該是 "mastlog" 。 檔案名可能會在稍後進行變更。

如果未建立資料夾結構或 mssql 帳戶沒有適當的許可權,您將會在安裝期間收到下列錯誤。

錯誤: BootstrapSystemDataDirectories ()失敗(HRESULT 0x80070002)

初次設定 Microsoft SQL Server 失敗。 請參閱錯誤日誌

 

案例3:變更主資料庫檔案的名稱

  • [停止 mssql-伺服器]。

  • 使用 mssql 會議設定檔案名

  • 將主資料庫檔案重新命名為已設定的檔案名。

  • 開始 mssql-伺服器

下列是變更主資料庫檔案名稱的命令。

systemctl [停止 mssql-伺服器]

/mssql-conf 設定 filelocation masterdatafile/home/sqlservr/data/testmaster.mdf

/mssql-conf 設定 filelocation masterlogfile/home/sqlservr/data/testmastlog.ldf

mv/home/sqlservr/data/master.mdf/home/sqlservr/data/testmaster.mdf

mv/home/sqlservr/data/mastlog.ldf/home/sqlservr/data/testmastlog.ldf

systemctl [開始 mssql-伺服器]

參考

瞭解 Microsoft 用於描述軟體更新的 詞彙

需要更多協助嗎?

想要其他選項嗎?

探索訂閱權益、瀏覽訓練課程、瞭解如何保護您的裝置等等。

社群可協助您詢問並回答問題、提供意見反應,以及聆聽來自具有豐富知識的專家意見。

這項資訊有幫助嗎?

您對語言品質的滿意度如何?
以下何者是您會在意的事項?
按下 [提交] 後,您的意見反應將用來改善 Microsoft 產品與服務。 您的 IT 管理員將能夠收集這些資料。 隱私權聲明。

感謝您的意見反應!

×