5 4 6 伺服器日誌維護

2021-10-10 14:51:36 字數 2209 閱讀 5179

如在5.4節」mysql伺服器日誌」中所描述的,mysql伺服器可以建立多個不同的日誌檔案來幫助你檢視正在發生的事件。你也可以定期清理這些檔案來保證日誌不會占用過多磁碟空間。

當啟用mysql日誌記錄時,您可能需要不時備份和刪除舊的日誌檔案,並告訴mysql開始記錄新檔案。 請參見第7.2節「資料庫備份方法」。

在linux(rethat)的安裝,你可以使用mysql-log-rotate指令碼來維護日誌。如果你通過rmp包安裝mysql,這個指令碼應該已經自動安裝了。如果你正在使用複製的binary log,請小心這個指令碼。不應該刪除binary log,直到你確定它們的內容已經被所有從伺服器所處理。

在其他系統,你必須自行安裝乙個cron指令碼或等價指令碼來處理日誌檔案。

伺服器的binary log過期後,binary log檔案會被自動刪除。這些檔案的刪除會發生在啟動時和binary log重新整理時。預設的binary log過期時間為30天。為了指定可選的過期時間,請使用binlog_expire_logs_seconds系統變數。如果您使用的是複製,則應指定乙個有效期限,該期限不得短於副本(從伺服器)可能滯後於源(主伺服器)的最大時間。要按需刪除二進位制日誌,請使用purge binary logs語句(請參見第13.4.1.1節「 purge binary logs語句」)。

要強制mysql使用新日誌檔案,請重新整理日誌。當你執行flush_logs語句或者mysqladmin flush-log,mysqladmin refresh,mysqldump --flush-log,或者mysql --master-data,會發生日誌重新整理。參見13.7.8.3節,」重新整理語句」,4.5.2節,」mysqladmin—乙個mysql伺服器管理程式」和4.5.4節,」mysqldump–乙個資料庫備份程式」。另外,當前二進位制日誌檔案大小達到max_binlog_size系統變數的值時,伺服器會自動重新整理二進位制日誌。

flush logs支援可選的修飾符,以啟用對單個日誌的選擇性重新整理(例如,flush binary logs)。 請參見第13.7.8.3節「 flush宣告」。

日誌重新整理選項有以下效果:

 如果啟用了binary log記錄,則伺服器將關閉當前的二進位制日誌檔案,並使用下乙個序列號開啟乙個新的日誌檔案。

 如果啟用了輸出到檔案的general log或者slow query log,那麼伺服器會關閉並且重新開啟檔案。

 如果使用–log-error選項啟動伺服器用來將錯誤日誌寫入檔案,則伺服器將關閉並重新開啟日誌檔案。

執行日誌重新整理語句或命令需要用具有reload特權的帳戶連線到伺服器。 在unix和類unix的系統上,重新整理日誌的另一種方法是向伺服器傳送訊號,這可以由root或擁有伺服器程序的帳戶來完成。 (請參見第4.10節「 mysql中的unix訊號處理」。)訊號使無需連線伺服器即可執行日誌重新整理:

 sighup訊號會重新整理所有日誌。然而,sighup會有一些除了日誌重新整理外不想要的額外作用。

 從mysql 8.0.19開始,sigusr1會使伺服器重新整理錯誤日誌,常規查詢日誌和慢速查詢日誌。如果您只想重新整理那些日誌,則可以將sigusr1用作更「輕量」的訊號,它不會有那些與日誌無關的sighup的效果。

如前所述,重新整理二進位制日誌會建立乙個新的二進位制日誌檔案,而重新整理常規查詢日誌,慢查詢日誌或錯誤日誌只會關閉並重新開啟日誌檔案。 對於後面的日誌,要在unix上建立乙個新的日誌檔案,請在重新整理之前重新命名當前日誌檔案。 在重新整理時,伺服器會用原來的名字來開啟新的日誌檔案。例如,如果將常規查詢日誌,慢速查詢日誌和錯誤日誌檔案命名為mysql.log,mysql-slow.log和err.log,則可以從命令列使用以下命令:

在windows上,請使用rename而不是mv。

此時,您可以備份mysql.log.old,mysql-slow.log.old和err.log.old,然後從磁碟中刪除它們。

要在執行時重新命名常規查詢日誌或慢速查詢日誌,請首先連線到伺服器並禁用該日誌:

在禁用日誌的情況下,從外部重新命名日誌檔案(例如,從命令列)。 然後再次啟用日誌:

這種方法可以在任何平台工作並不需要需要重啟伺服器。

注意:為了在外部重新命名檔案後讓伺服器重新建立給定的日誌檔案,檔案位置必須是伺服器可寫的。 而事實並非總是如此。例如,在linux上,伺服器可能將錯誤日誌寫為/var/log/mysqld.log,其中/ var / log由root擁有,而mysqld不可寫。 在這種情況下,日誌重新整理操作無法建立新的日誌檔案。

要處理這種情況,您必須在重新命名原始日誌檔案後手動建立具有適當所有權的新日誌檔案。 例如,以root使用者身份執行以下命令:

伺服器日誌維護

如第5.4節 mysql伺服器日誌 所述,mysql server可以建立幾個不同的日誌檔案來幫助您檢視正在發生的活動。但是,您必須定期清理這些檔案,以確保日誌不會占用過多的磁碟空間。在啟用 logging 的情況下使用 mysql 時,您可能需要不時備份和刪除舊的日誌檔案,並告訴mysql開始記錄...

伺服器日常維護

開關機順序及線纜連線 開機順序 開啟總電源。開啟計算機機櫃電源開啟外部裝置電源 如磁碟陣列 磁帶庫等 待外部裝置自檢完成後,最後開啟主機電源。關機順序 進行作業系統的關閉關閉主機電源關閉外設電源.如磁碟陣列,磁帶庫等 關閉其他裝置電源和機櫃電源。電纜連線注意事項 在進行電纜連線 插拔 時,最重要的一...

伺服器安全維護

電子商務的興起,使的很多中小企業都擁有了自己的伺服器。對內用來建立區域網,提公升辦公效率 對外建立 更為廣泛地宣傳企業產品和形象,爭取更多客源。但是作為網路的核心產品,伺服器技術相對複雜,尤其是在病毒肆虐的網路時代,安全問題顯得更加突出。現在就提供一些實際工作中總結出的經驗,希望能和大家共享,以確保...