您好,登錄后才能下訂單哦!
mysql默認tmpdir怎么找?這個問題可能是我們?nèi)粘W(xué)習(xí)或工作經(jīng)常見到的。希望通過這個問題能讓你收獲頗深。下面是小編給大家?guī)淼膮⒖純?nèi)容,讓我們一起來看看吧!
錯誤來源?
MySQL數(shù)據(jù)目錄/data/mysql所在的上層目錄/data磁盤空間不足導(dǎo)致MySQL啟動失敗,所以清理了/data目錄下除了mysql子目錄外的其他無用目錄。重啟發(fā)現(xiàn)還是失敗。檢查錯誤日志。
看到如下錯誤:
/usr/local/mysql/bin/mysqld: Can't create/write to file '/data/tmp/ibbLmEoD' (Errcode: 13 - Permission denied)
原來是清理無用目錄時不小心把MySQL配置文件中指定的tmpdir——/data/tmp目錄也給刪除了,導(dǎo)致MySQL Server啟動時的一些臨時文件或表無法寫入,從而啟動失敗。重建目錄并賦予正確的權(quán)限后,重啟MySQL Server,正常啟動。
說一說MySQL 臨時目錄這個參數(shù):
命令行參數(shù)格式:--tmpdir=path
配置文件參格式:tmpdir=path
臨時目錄用于存儲臨時文件或臨時表。值可以是一個使用“:”(Unix)或“;”(Windows)分隔的路徑列表,這些路徑可被輪流使用,以便將負載分到不同磁盤。若MySQL server是作為Slave的角色,則不能將該目錄指向基于內(nèi)存文件系統(tǒng)的目錄或者當主機重啟時會被清理掉的目錄,因為Slave需要這些文件復(fù)制臨時表或執(zhí)行LOAD DATA INFILE操作,這些文件丟失會導(dǎo)致復(fù)制失敗。這意味著不能講slave的tmpdir設(shè)置為linux系統(tǒng)默認的/tmp目錄。對于Slave可以使用另一配置項slave_load_tmpdir來設(shè)置其臨時目錄,這樣Slave可以不使用通用選項tmpdir設(shè)置的臨時目錄。對于非Slave角色的MySQL server沒此限制。
若臨時目錄不存在或權(quán)限不正確不僅會引起MySQL Server啟動失敗還會導(dǎo)致其他可能使用到臨時目錄的MySQL實用程序運行異常。很多MySQL相關(guān)程序會從MySQL Server的配置文件讀取選項值,比如全備程序xtrabackup,下面這個錯誤就是因為MySQL Server配置文件中指定的臨時目錄不存在造成的。
xtrabackup_56: Can't create/write to file '/data/tmp/ibHbumcM' (Errcode: 2 - No such file or directory)
2014-07-23 16:04:42 7f1b25c607e0 InnoDB: Error: unable to create temporary file; errno: 2
xtrabackup: innodb_init(): Error occured.
innobackupex: Error:
innobackupex: ibbackup failed at /usr/bin/innobackupex line 389.
感謝各位的閱讀!看完上述內(nèi)容,你們對mysql默認tmpdir怎么找大概了解了嗎?希望文章內(nèi)容對大家有所幫助。如果想了解更多相關(guān)文章內(nèi)容,歡迎關(guān)注億速云行業(yè)資訊頻道。
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。