學習MYsql日志(一)
錯誤日志: 伺服器啟動和關閉過程中的資訊
伺服器運作過程中産生的錯誤資訊
事件排程器運作一個事件時産生的(event)資訊
在從伺服器上啟動或關閉從伺服器程序時産生的資訊
警告日志也會産生在錯誤日志(log_warnings)
一般查詢日志:
general_log
general_log_file
log
log_output FILE 意思是指定檔案中,還有兩個值(log_output={TABLE|FILE|NONE})定義TABLE表示定義表中,定義FILE表示
/var/run/mysqld/mysqld.log 檔案中,定義NONE不記錄
慢查詢日志:| log_slow_queries | OFF
|log_bin_trust_function_creators |OFF
mysql> set globalslow_query_log=1;=1表示開啟記錄慢查詢日志 =0不開啟
slow_query_log | ON
log_slow_queries | ON
二進制日志:
複制,即時點恢複,用于恢複某個時間段的資料
任何引起可能引起資料庫變化的,操作,主要記錄DML DDL DCL 語句變化的操作,資料庫授權記錄也會記錄的, 隻能用MYsql的專用令名才能檢視,不能用文本檢視(mysqlbinlog)
二進制日志有三種:
基于語句: starement
基于資料 row
基于混合方式:mixed
二進制事件日志:
産生的時間
相對位置
二進制日志檔案:
索引檔案
二進制日志檔案
檢視目前正在使用的二進制檔案
mysql> show masterstatus;
show binlog events in'二進制檔案名‘ 【from pos】;
mysql> mysql> show binlogevents in 'mysql-bin.000005'; 檢視二進制裡面的資訊
mysql> show binlog events in'mysql-bin.000005' from 107; 從107開始顯示
mysqlbinlog
--start-datetime
--stop-datetime
--start-position
--stop-position
以時間檢視二進制檔案
[root@hostdata]# mysqlbinlog mysql-bin.000005
...
#150815 9:46:41 server id 1 end_log_pos 500 Xid = 32
........
删除二進制檔案
mysql>help purge
mysql>purge BINARY logs to 'mysql-bin.000003';
Query OK,0 rows affected (0.04 sec)
檢視二進制檔案
mysql>show BINARY logs;
+------------------+-----------+
|Log_name | File_size |
|mysql-bin.000003 | 126 |
|mysql-bin.000004 | 264 |
|mysql-bin.000005 | 519 |
|mysql-bin.000006 | 150 |
|mysql-bin.000007 | 177 |
檢視二進制格式
mysql>show global variables like '%log%';
....
binlog_format | MIXED (使用的是混合模式)
log_bin | ON (是不是記錄二進制日志ON代表是)
.....
[root@host data]# mysqlbinlog --start-position=107--stop-position=274 mysql-bin.000005
[root@host data]# mysqlbinlog --start-datetime='2015-08-15 9:43:25' mysql-bin.000005
[root@host data]# mysqlbinlog --start-datetime='2015-08-15 9:43:25' mysql-bin.000005 >/root/a.sql
mysql> flush logs; 生成日志滾動
mysql日志還可以儲存在mysql表中預設不存在需要手動建立
mysql> showglobal variables like '%log%';
+-----------------------------------------+---------------------------------+
|Variable_name |Value |
| back_log | 50 |
|binlog_cache_size |32768 |
|binlog_direct_non_transactional_updates | OFF |
|binlog_format |STATEMENT |
二進制日志
| expire_logs_days |0 |
|general_log |OFF |
|general_log_file |/var/run/mysqld/mysqld.log |
一般查詢日志
|innodb_flush_log_at_trx_commit |1 |
|innodb_locks_unsafe_for_binlog |OFF |
|innodb_log_buffer_size |1048576 |
|innodb_log_file_size |5242880 |
|innodb_log_files_in_group |2 |
|innodb_log_group_home_dir |./ |
| innodb_mirrored_log_groups | 1 |
事物日志
| log | OFF |
| log_bin | OFF |
|log_bin_trust_function_creators |OFF |
是否記錄慢查詢 表示不記錄 ON表示記錄
|log_bin_trust_routine_creators | OFF |
|log_error 錯誤日志 | /var/log/mysqld.log 錯誤日志檔案 |
|log_output |FILE |
指定一般日志 general_log_file
|log_queries_not_using_indexes | OFF |
|log_slave_updates |OFF |
|log_slow_queries | OFF |
慢查詢日志
|log_warnings |1 (0)代表不記錄(1)代表記錄 |
警告日志
|max_binlog_cache_size |18446744073709547520 |
|max_binlog_size |1073741824 |
|max_relay_log_size |0 |
|relay_log | |
|relay_log_index | |
| relay_log_info_file | relay-log.info |
|relay_log_purge |ON |
| relay_log_space_limit | 0 |
中繼日志
|slow_query_log | OFF |
|slow_query_log_file |/var/run/mysqld/mysqld-slow.log |
慢日志
|sql_log_bin |ON |
|sql_log_off | OFF |
定義手動關閉或啟用二進制日志
| sql_huanclog_update | ON |
|sync_binlog |0 |
定義是否從緩存同步的磁盤檔案中