Mysql
Windows 上的 MySql 服務在更改 datadir 後不會啟動
嘗試更改 MySQL 的預設 Windows 安裝的數據目錄。這是我採取的步驟。
- 停止 MySql 服務。
- 找到 MySql 的數據目錄並將其移動到另一個驅動器,確保路徑名沒有空格。
- 在 C:\Program Files\MySQL\MySQL Server 5.7 中複製 my-default.ini 文件,然後將其重命名為 my.ini 並對其進行編輯,如下所示:
> > $$ mysqld $$ > datadir = F:\ProgramData\MySQL\MySQLServer\Data >
- 將原始數據文件夾的內容複製到這個新的數據文件夾中。
- MySql 服務在 NETWORK SERVICE 使用者下執行,因此我已授予該使用者對新文件夾的完全控制權限。
- 刪除了原始數據文件夾。
- MySql 服務無法啟動,windows 事件日誌中沒有出現有用的錯誤消息。
據我所知,MySql 錯誤日誌位於 datadir 中,所以看那裡沒有多大幫助?
我怎樣才能找到並糾正我做錯了什麼?
如果您打開 Windows 服務並檢查服務屬性,您會發現如下內容:
"C:\Program Files\MySQL\MySQL Server 5.7\bin\mysqld.exe" --defaults-file="C:\ProgramData\MySQL\MySQL Server 5.7\my.ini" MySQL57
不足以更改 my.ini 文件中的 datadir,還需要指向 windows 以使用正確的 my.ini 文件執行服務
就我而言,它還與 Windows 記事本的文件編碼有關。編輯 my.ini 文件時,伺服器無法讀取它,因為它預設保存為 UTF-8。通過選擇“另存為”並選擇 ANSI 編碼,它工作正常。