mysql日誌管理

日誌類型:

一、錯誤日誌

1.記錄服務器啓動和關閉過程中的信息

2.服務器運行過程中的錯誤信息

3.事件調度器運行一個事件時產生的信息

4.在從服務器上啓動從服務器過稱時產生的信息

查看錯誤日誌的存放路徑:

show variables like '%err%';

查看警告信息

show variables like 'log%';

如果log_warnings = 1 ,說明警告信息也寫到了錯誤日誌中,爲0,說明沒有寫到錯誤日誌中

my.ini配置信息:

#log_error = XX/mysql_log_err.txt


二、一般查詢日誌

general_log = on:啓用

general_log_file = 指定查詢日誌的路徑


三、慢查詢日誌

如果slow_query_log的值爲ON,則開啓了慢查詢日誌,否則沒有開啓


四、二進制日誌:任何引起或可能引起數據變化的操作都會存儲

功能:1.做即時點恢復(基於時間點額恢復)

      2.複製(將主服務器發生的任何改變複製到從服務器上保證數據一致)

1、啓用二進制日誌功能:

linux下,找到mysql的配置文件,一般是/etc/my.cnf 添加下面兩行

log-bin=mysql-bin
binlog_format=mixed

2、查看是否開啓二進制日誌:

show variables like '%bin%';

如果log_bin的值爲ON,則開啓了二進制日誌,否則沒有開啓

3、查看有哪些二進制日誌:

show binary logs;

4、查看正在使用的二進制日誌文件:

show master status;

5、查看二進制日誌文件記錄的信息:

show binlog events in 'mysql-bin.00001';

6、二進制日誌三種格式:

1.基於語句的statement,記錄是SQL語句

2.基於行的row,記錄的是SQL語句執行的結果

3.混合的mixed

7、查看二進制日誌問價內容的命令:mysqlbinlog

#mysqlbinlog

--start-position    起始位置

--stop-position    結束位置

--start-datetim    起始時間

--stop-datetim    結束時間

例:# mysqlbinlog --start-position=107 mysql-bin.00002
例:# mysqlbinlog --start-position=107 --stop-position=300 mysql-bin.00002
例:# mysqlbinlog --start-datetime=‘2014-12-10 21:00:00’ --stop-datetime=‘2014-12-10 21:10:00’ mysql-bin.00002

8、每次重啓服務器,日誌都會滾動

flush logs    實現日誌滾動,只有二進制日誌,其他日誌不會滾動

purge binary logs to 'mysql-bin.00002'    刪除二進制日誌文件


五、中繼日誌

從主服務器複製而來的事件,並保存爲的日誌文件

relay-log = 指定中繼日誌的位置好名字

relay-log-index = 指定中繼日誌名稱的索引文件的位置和名字


六、事務日誌

事務性存儲引擎用於保證原子性、一致性、隔離性和持久性

innodb_flush_log_at_trx_commit:

0    每秒同步、並執行磁盤flush操作

1    每事務同步,並執行磁盤flush操作

2    每事務同步,但不執行磁盤flush操作


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章