簡體   English   中英

在 Windows 的 my.ini 中更改 MySQL 5.0 的 tmp 文件夾

[英]Changing MySQL 5.0's tmp folder within my.ini in Windows

我有一個 MySQL 服務器(版本 5.0.67)在 Windows 7 上運行。當我在 Eclipse 中使用 hibernate 時,出現以下錯誤:

引起:java.sql.SQLException:無法創建/寫入文件“C:\Windows\TEMP#sql_e9c_0.MYI”(錯誤代碼:17)

我嘗試配置 MySQL 的 TmpPath 並將 Systemparameters 設置為 TMPDIR:

TEMP=C:\Users\JDD09~1.HER\AppData\Local\Temp
TMP=C:\Users\JDD09~1.HER\AppData\Local\Temp
TMPDIR=C:\tmp\tmpdir

在 my.ini 中,我做了以下更改:

[mysqld]
tmpdir=C:\tmp\tmpdir

但是,現在 MySQL 在嘗試啟動時中止。

我讀過這個線程( 更改 mysql 的 tmp 文件夾),但它沒有幫助。 我怎樣才能解決這個問題?

嘗試這個:

[mysqld]
tmpdir="C:\tmp\tmpdir"

並確保路徑C:\\tmp\\tmpdir必須在系統中存在。

根據有關“ TMPDIR”的Mysql 5.0手冊: 5.0 / en / windows-installation.html 默認為使用Windows臨時目錄。

如果您決定定義它。 然后,它必須是有效目錄。 它不會創建它。

我的建議是,對於本地PC上的“開發”系統,不要費心更改它。 如果不確定,則從“ my.ini”中刪除該條目。 這將使用默認設置,可以開始使用。

PS。 我在Windows上使用“ mysql”。

您可能需要確保使用正斜杠“ /”而不是反斜杠“ \\”。 這對我有用,因此您可以使用以下行:

tmpdir = C:/ tmp / tmpdir

根據文檔

在 Windows 上,MySQL 依次檢查 TMPDIR、TEMP 和 TMP 環境變量的值。 對於第一個被發現被設置的,MySQL 使用它並且不檢查剩下的那些。 如果 TMPDIR、TEMP 或 TMP 均未設置,則 MySQL 使用 Windows 系統默認值,通常為 C:\windows\temp。

如果包含您的臨時文件目錄的文件系統太小,您可以使用 mysqld --tmpdir 選項在您有足夠空間的文件系統中指定一個目錄。

--tmpdir 選項可以設置為以循環方式使用的多個路徑的列表。 路徑應在 Unix 上以冒號字符 (:) 分隔,在 Windows 上以分號字符 (;) 分隔。

編輯文件C:\ProgramData\MySQL\MySQL Server 8.0\my.ini

[mysqld]下添加以下行

[mysqld]
tmpdir=C:/tmp/tmpdir

在Windows服務下重啟MySQL服務。

在 windows 提示符下可以通過以下命令驗證更改

mysql -uroot -p -e "SHOW VARIABLES LIKE 'tmpdir'"

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM