mysql資料庫運維手冊 MySQL資料庫維護手冊

2021-10-18 03:26:51 字數 2434 閱讀 9249

一、每天做的

(一)確保mysql啟動並執行。

檢視mysql程序是否執行正常,具體命令是ps -ef|grep mysql;top檢查mysql的執行以下是乙個例子:

(二)檢查管理員錯誤日誌和慢查詢日誌。

管理員錯誤日誌為dba準備,它記錄了mysqld當啟動和停止,以及伺服器在執行過程中發生的任務號嚴重錯誤是的相關資訊。 用—log-error指定路徑。 命令:命令:tail -f /var/log/mysql/mysqld.err

慢日誌檔案為開發人員而準備,記錄了所有執行時間超過引數long_query_time 的sql語句。 檢視:show variables like 'long%';修改:set long_query_time=2。命令1:mysqldumpslow /var/run/mysqld/mysqld-slow.log 彙總檢視

(三)檢查昨天晚上的備份是否成功。

晚上備份如果有錯或沒有存放在安全的地方,那麼對日後的恢復來說簡直就是災難。 確認備份成功的命令是:1、檢視備份日誌記錄:tail –f /var/bak/mysql_bak_log.log

2、備份的檔案:cat /var/bak/2012-03-07/idm_bak.sql|more

3 、可以每天把備份的結果和內容email傳送給相關人員

4 、異地備份檔案

(四)檢視資料庫日誌檔案是否歸檔成功。

此處說的日誌是mysql資料庫的二進位制日誌,記錄著ddl和dml語句,但不包括查詢語句。 此日誌對於災難是的資料恢復起著重要作用。 用—log-bin指定路徑。命令:mysqlbinlog /var/lib/mysql/mysqld-bin.000555

(五)檢查並確認資料庫和管理系統的配置引數沒有被更改。

將這些命令的結果輸出到乙個檔案,檔名可寫上當時的時間,比如結果檔名" mysql_20120315.txt" ;使用ultraedit檔案的比較功能比較昨天的配置檔案有無改變。

(六)檢視資料庫程式的工作負載。 (不會)

(七)確信還有足夠的剩餘記憶體空間可供資料庫使用。

察看伺服器上的總記憶體大小和mysql資料庫占用的記憶體大小情況是很重要的一件事,在unix/linux平台下使用free命令將顯示出系統的總記憶體大小以被應用程式占用掉的記憶體大小,和當前系統剩餘可用的記憶體大小。

(八)每天建議學習mysql的相關知識。

廣泛的閱讀相關資料,比如"mysql手冊"對資料庫管理員有幫助。 跟mysql維護的人多多交流。

二、每週做的

(一)查詢新的資料庫物件。

察看是否有人在你的生產型資料庫中建立了新的資料庫物件(比如,表、索引、儲存程序)也是一件重要的事情。 新物件 的出現,一般意味著伺服器上有新的應用出現了,否則新出現的物件會影響到系統操作的特性。 另外新物件也會消耗掉系統的一部分儲存空間,如果是非管理員建立 的新資料庫物件將可能會對資料庫表空間和執行效率產生不良影響。檢視表狀態:show table status; 跟上週比較結果,分析新增表

檢視索引的效能: show status like "handler_read%"; handler_read_key 值高表示索引效果好,handler_read_rnd_next值高表示索引低效。

(二)查詢需要重新組織的表或索引。

當在表上插入、更新、刪除記錄行時,表中的資料需要重新組織,以便使索引、空間、記錄等能更優化地存在。 根據每個增加的表分析表結構和索引是否合理,不合理的話找相關人員修改。

(三)查詢最活躍的10張表。 (沒有此項功能)

(四)將所有二進位制日誌檔案歸檔處理。

這些日誌檔案需要每週做處理,儲存以便將來調查分析,先壓縮在刪除,節省儲存空間。 (空閒時間維護)

二進位制日誌的刪除:1、mysql> reset master; (刪除所有日誌檔案)

2、mysql> purge master logs to『mysqld-bin.000022』;(刪除000222之前的檔案)

3、mysql> purge master logs before『yyyy-mm-dd hh:mm:ss』;(刪除定義時間之前的檔案)

4、設定引數—expire_logs_days=5,自動刪除5天前的日誌檔案(不用,定期壓縮日誌,定期備份)

(五)注意檢查並更新軟體到新版本。

當系統平穩執行時,一般不需要公升級或補丁自己的mysql軟體。 可關注的mysql的最新變化。

三、每月做的

(一)查詢異常增長的指示器。

回顧表空間在過去的乙個月時間裡,增長了多少,發現特別消耗空間的表,以便提前做預處理。 表大小=資料大小 + 索引大小;sql> show table status from 資料庫名 like 資料表名;

sql>select table_name,data_length from information_schema.tables;

(二)根據增長適當規劃資料庫系統的擴張問題。

比較你收集到的處理器、記憶體、以及磁碟利用率等系統級資訊,規劃mysql資料庫物件今後擴充套件的對策。

資料庫運維原則

一 資料庫運維工作總原則 1 能不給資料庫做的事情不要給資料庫,資料庫只做資料容器。2 對於資料庫的變更必須有記錄,可以回滾。二 許可權相關 總原則,以最低粒度控制許可權。select許可權 所有開發人員均可擁有自己業務範圍內的表許可權。insert update delete許可權 所有專案經理可...

資料庫運維原則

一 資料庫運維工作總原則 1 能不給資料庫做的事情不要給資料庫,資料庫只做資料容器。2 對於資料庫的變更必須有記錄,可以回滾。二 許可權相關 總原則,以最低粒度控制許可權。select許可權 所有開發人員均可擁有自己業務範圍內的表許可權。insert update delete許可權 所有專案經理可...

資料庫運維服務

資料庫運維服務是指 針對使用者資料庫開展的軟體安裝 配置優化 備份策略選擇及實施 資料恢復 資料遷移 故障排除 預防性巡檢等一系列服務。主要服務內容如下 1 資料庫安裝與配置 主要指定制資料庫安裝配置方案,檢查軟體安裝環境,安裝資料庫軟體,完成資料庫配置,並測試之 2 資料庫效能優化 主要是指核心引...