程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> MYSQL數據庫 >> MySQL綜合教程 >> MySQL日記治理詳解

MySQL日記治理詳解

編輯:MySQL綜合教程

MySQL日記治理詳解。本站提示廣大學習愛好者:(MySQL日記治理詳解)文章只能為提供參考,不一定能成為您想要的結果。以下是MySQL日記治理詳解正文


日記文件關於一個辦事器來講長短常主要的,它記載著辦事器的運轉信息,很多操作都邑寫日到日記文件,經由過程日記文件可以監督辦事器的運轉狀況及檢查辦事器的機能,還能對辦事器停止排錯與毛病處置,MySQl中有六種分歧類型的日記。

1、日記品種

———–> 1,毛病日記:記載啟動、運轉或停滯時湧現的成績,普通也會記載正告信息。
———–> 2,普通查詢日記:記載樹立的客戶端銜接和履行的語句。
———–> 3,慢查詢日記:記載一切履行時光跨越long_query_time秒的一切查詢或不應用索引的查詢,可以幫我們定位辦事器機能成績。
———–> 4,二進制日記:任何惹起或能夠惹起數據庫變更的操作,重要用於復制和即時點恢復。
———–> 5,中繼日記:從主辦事器的二進制日記文件中復制而來的事宜,並保留為的日記文件。
———–> 6,事務日記:記載InnoDB等支撐事務的存儲引擎履行事務時發生的日記。

MySQL中關於日記文件的情況比變量異常多,可使用以下敕令來檢查:

mysql> show global variables like '%log%';
+-----------------------------------------+-----------------------------------------+
| Variable_name              | Value                  |
+-----------------------------------------+-----------------------------------------+
| back_log                | 50                   |
| binlog_cache_size            | 32768                  |
| binlog_direct_non_transactional_updates | OFF                   |
| binlog_format              | MIXED                  |
| binlog_stmt_cache_size         | 32768                  |
| expire_logs_days            | 0                    |
| general_log               | OFF                   |
| general_log_file            | /mydata/data1/localhost.log       |
| innodb_flush_log_at_trx_commit     | 1                    |
| innodb_locks_unsafe_for_binlog     | OFF                   |
| innodb_log_buffer_size         | 8388608                 |
| 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                 | ON                   |
| log_bin_trust_function_creators     | OFF                   |
| log_error                | /mydata/data1/localhost.localdomain.err |
| log_output               | FILE                  |
| log_queries_not_using_indexes      | OFF                   |
| log_slave_updates            | OFF                   |
| log_slow_queries            | OFF                   |
| log_warnings              | 1                    |
| max_binlog_cache_size          | 18446744073709547520          |
| max_binlog_size             | 1073741824               |
| max_binlog_stmt_cache_size       | 18446744073709547520          |
| max_relay_log_size           | 0                    |
| relay_log                |                     |
| relay_log_index             |                     |
| relay_log_info_file           | relay-log.info             |
| relay_log_purge             | ON                   |
| relay_log_recovery           | OFF                   |
| relay_log_space_limit          | 0                    |
| slow_query_log             | OFF                   |
| slow_query_log_file           | /mydata/data1/localhost-slow.log    |
| sql_log_bin               | ON                   |
| sql_log_off               | OFF                   |
| sync_binlog               | 0                    |
| sync_relay_log             | 0                    |
| sync_relay_log_info           | 0                    |
+-----------------------------------------+-----------------------------------------+
41 rows in set (0.00 sec)

2、日記功效

1,毛病日記
毛病日記重要記載以下幾種日記:
———–> 辦事器啟動和封閉進程中的信息
———–> 辦事器運轉進程中的毛病信息
———–> 事宜調劑器運轉一個事宜時發生的信息
———–> 在從辦事器上啟動從辦事器過程時發生的信息
毛病日記界說:
可以用–log-error [ = file_name ]選項來指定mysqld保留毛病日記文件的地位。假如沒有給定file_name值,mysqld應用毛病日記名host_name.err 並在數據目次中寫入日記文件。假如你履行FLUSH LOGS,毛病日記用-old從新定名後綴而且mysqld創立一個新的空日記文件。(假如未給出–log-error選項,則不會從新定名)。
毛病日記普通有以上兩個變量可以界說:

毛病日記文件:log_error
啟用正告信息:log_warnings (默許啟用)

mysql> show global variables like 'log_error';
+---------------+-----------------------------------------+
| Variable_name | Value                  |
+---------------+-----------------------------------------+
| log_error   | /mydata/data1/localhost.localdomain.err |
+---------------+-----------------------------------------+
1 row in set (0.00 sec)
mysql> show global variables like 'log_warnings';
+---------------+-------+
| Variable_name | Value |
+---------------+-------+
| log_warnings | 1   |
+---------------+-------+
1 row in set (0.00 sec)

2、普通查詢日記

啟動開關:general_log={ON|OFF}
日記文件變量:general_log_file [ =/PATH/TO/file]
全局日記開關:log={ON|OFF}   該開關翻開後,一切日記都邑被啟用
記載類型:log_output={TABLE|FILE|NONE}
log_output界說了日記的輸入格局,可所以表,文件,若設置為NONE,則不啟用日記,是以,要啟用通用查詢日記,須要至多設置裝備擺設general_log=ON,log_output={TABLE|FILE}。而general_log_file假如沒有指定,默許名是host_name.log。因為普通查詢應用量比擬年夜,啟用寫入日記文件,辦事器的I/O操作較多,會年夜年夜下降辦事器的機能,所以默許為封閉的。

mysql> show global variables like 'general_log';
+---------------+-------+
| Variable_name | Value |
+---------------+-------+
| general_log  | OFF  |
+---------------+-------+
1 row in set (0.00 sec)
mysql> show global variables like 'general_log_file';
+------------------+-----------------------------+
| Variable_name  | Value            |
+------------------+-----------------------------+
| general_log_file | /mydata/data1/localhost.log |
+------------------+-----------------------------+
1 row in set (0.01 sec)

可使用以下敕令開啟general_log:

mysql> set global general_log=1;
Query OK, 0 rows affected (0.00 sec)
mysql> show global variables like 'general_log';
+---------------+-------+
| Variable_name | Value |
+---------------+-------+
| general_log  | ON  |
+---------------+-------+
1 row in set (0.00 sec)

3、慢查詢日記

查詢超不時間:long_query_time 
啟動慢查日記:log_slow_queries={YES|NO}
啟動慢查日記 : slow_query_log                   
日記記載文件:slow_query_log_file [= file_name ]
MySQL假如啟用了slow_query_log=ON選項,就會記載履行時光跨越long_query_time的查詢(初使表鎖定的時光不算作履行時光)。日記記載文件假如沒有給出file_name值, 默許為主機名,後綴為-slow.log。假如給出了文件名,但不是相對途徑名,文件則寫入數據目次。

mysql> show global variables like '%slow_query_log%';
+---------------------+----------------------------------+
| Variable_name    | Value              |
+---------------------+----------------------------------+
| slow_query_log   | OFF               |
| slow_query_log_file | /mydata/data1/localhost-slow.log |
+---------------------+----------------------------------+
2 rows in set (0.00 sec)


默許沒有啟用慢查詢,為了辦事器調優,建議開啟。

mysql> show global variables like 'long_query_time';
+-----------------+-----------+
| Variable_name  | Value   |
+-----------------+-----------+
| long_query_time | 10.000000 |
+-----------------+-----------+
1 row in set (0.00 sec)


超長時光默許為10秒,跨越了即為慢查詢。

4,二進制日記

二進制日記啟動開關:log-bin [= file_name]
在5.6及以上版本必定要手動指定。5.6以下版本默許file_name為$datadir/mysqld-binlog,二進制日記用於記載一切更改數據的語句,重要用於復制和即時點恢復。二進制日記的重要目標是在數據庫存在毛病時,恢復時可以或許最年夜能夠地更新數據庫(即時點恢復),由於二進制日記包括備份落後行的一切更新,二進制日記還用於在主復禮服務器上記載一切將發送給從辦事器的語句。
檢查二進制日記的對象為:mysqlbinlog
二進制日記的格局:
——>  基於語句: statement
——>  基於行: row
——>  混雜方法: mixed
因為基於語句和基於行的日記格局都有本身的利益,MySQL應用的二進制日記文件是混雜方法的二進制日記,內置戰略會主動選擇最好的格局。
二進制日記事宜:
——>  發生的時光:starttime
——>  絕對地位:position
二進制日記文件:
——>  索引文件
——>  二進制日記文件
在數據目次下有一個mysql-bin.index就是索引文件,以mysql-bin開首並以數字開頭的文件為二進制日記文件。
日記的轉動:
MySQL的轉動方法與其異日志不太一樣,轉動時會創立一個新的編號年夜1的日記用於記載最新的日記,而原日記名字不會被轉變。每次重啟MySQL辦事,日記都邑主動轉動一次。
別的假如須要手動轉動,則應用敕令:

mysql> flush logs;
Query OK, 0 rows affected (0.02 sec)
mysql> show master status;  #檢查以後正在應用的二進制文件
+------------------+----------+--------------+------------------+
| File       | Position | Binlog_Do_DB | Binlog_Ignore_DB |
+------------------+----------+--------------+------------------+
| mysql-bin.000033 |   107 |       |         |
+------------------+----------+--------------+------------------+
1 row in set (0.00 sec)

其默許的position是從107開端的。

mysql> show binary logs;  #檢查一切的二進制文件
+------------------+-----------+
| Log_name     | File_size |
+------------------+-----------+
| mysql-bin.000020 |    107 |
| mysql-bin.000021 |    107 |
| mysql-bin.000022 |   50676 |
| mysql-bin.000023 |    150 |
| mysql-bin.000024 |    621 |
| mysql-bin.000025 |    107 |
| mysql-bin.000026 |   4509 |
| mysql-bin.000027 |    150 |
| mysql-bin.000028 |    150 |
| mysql-bin.000029 |    150 |
| mysql-bin.000030 |    357 |
| mysql-bin.000031 |    107 |
| mysql-bin.000032 |    150 |
| mysql-bin.000033 |    107 |
+------------------+-----------+
14 rows in set (0.00 sec)
mysql> use mysql_shiyan;
Database changed
mysql> insert into department(dpt_name) values('feiyu');
Query OK, 1 row affected (0.00 sec)
mysql> show master status;
+------------------+----------+--------------+------------------+
| File       | Position | Binlog_Do_DB | Binlog_Ignore_DB |
+------------------+----------+--------------+------------------+
| mysql-bin.000033 |   331 |       |         |
+------------------+----------+--------------+------------------+
1 row in set (0.00 sec)

拔出數據後,position曾經產生轉變了。

mysql> insert into department(dpt_name) values('feiyu1');   #再拔出一條數據
Query OK, 1 row affected (0.00 sec)
mysql> show binlog events in 'mysql-bin.000033';   #檢查二進制文件中記載的內容
+------------------+-----+-------------+-----------+-------------+-------------------------------------------------------------------------+
| Log_name     | Pos | Event_type | Server_id | End_log_pos | Info                                  |
+------------------+-----+-------------+-----------+-------------+-------------------------------------------------------------------------+
| mysql-bin.000033 |  4 | Format_desc |     1 |     107 | Server ver: 5.5.36-log, Binlog ver: 4                  |
| mysql-bin.000033 | 107 | Query    |     1 |     183 | BEGIN                                  |
| mysql-bin.000033 | 183 | Query    |     1 |     304 | use `mysql_shiyan`; insert into department(dpt_name) values('feiyu') |
| mysql-bin.000033 | 304 | Xid     |     1 |     331 | COMMIT /* xid=12 */                           |
| mysql-bin.000033 | 331 | Query    |     1 |     407 | BEGIN                                  |
| mysql-bin.000033 | 407 | Query    |     1 |     529 | use `mysql_shiyan`; insert into department(dpt_name) values('feiyu1') |
| mysql-bin.000033 | 529 | Xid     |     1 |     556 | COMMIT /* xid=14 */                           |
+------------------+-----+-------------+-----------+-------------+-------------------------------------------------------------------------+
7 rows in set (0.00 sec)
        
mysql> show binlog events in 'mysql-bin.000033' from 407;   #也能夠從某個地位檢查二進制文件
+------------------+-----+------------+-----------+-------------+-------------------------------------------------------------------------+
| Log_name     | Pos | Event_type | Server_id | End_log_pos | Info                                  |
+------------------+-----+------------+-----------+-------------+-------------------------------------------------------------------------+
| mysql-bin.000033 | 407 | Query   |     1 |     529 | use `mysql_shiyan`; insert into department(dpt_name) values('feiyu1') |
| mysql-bin.000033 | 529 | Xid    |     1 |     556 | COMMIT /* xid=14 */                           |
+------------------+-----+------------+-----------+-------------+-------------------------------------------------------------------------+
2 rows in set (0.00 sec)
     
mysql> purge binary logs to 'mysql-bin.000025';  #刪除某個序號之前的日記文件
Query OK, 0 rows affected (0.04 sec)
mysql> show binary logs;
+------------------+-----------+
| Log_name     | File_size |
+------------------+-----------+
| mysql-bin.000025 |    107 |
| mysql-bin.000026 |   4509 |
| mysql-bin.000027 |    150 |
| mysql-bin.000028 |    150 |
| mysql-bin.000029 |    150 |
| mysql-bin.000030 |    357 |
| mysql-bin.000031 |    107 |
| mysql-bin.000032 |    150 |
| mysql-bin.000033 |    556 |
+------------------+-----------+
9 rows in set (0.00 sec)

應用敕令mysqlbinlog檢查二進制日記內容:
根本語法:

mysqlbinlog [options] log-files
經常使用options(相似字節偏移數):
--start-position     :開端地位
--stop-position     :停止地位
--start-datetime 'yyyy-mm-dd hh:mm:ss'  :開端時光
--stop-datetime 'yyyy-mm-dd hh:mm:ss'  :停止時光

←#4#root@localhost ~ →mysqlbinlog --start-position 407 --stop-position 556 mysql-bin.000033
/*!40019 SET @@session.max_insert_delayed_threads=0*/;
/*!50003 SET @OLD_COMPLETION_TYPE=@@COMPLETION_TYPE,COMPLETION_TYPE=0*/;
DELIMITER /*!*/;
mysqlbinlog: File 'mysql-bin.000033' not found (Errcode: 2)
DELIMITER ;
# End of log file
ROLLBACK /* added by mysqlbinlog */;
/*!50003 SET COMPLETION_TYPE=@OLD_COMPLETION_TYPE*/;

5,中繼日記

這個前面會講到。

6,事務日記

事務性存儲引擎用於包管(ACID)原子性、分歧性、隔離性和耐久性;其不會立刻寫到數據文件中,而是寫到事務日記中。
innodb_flush_log_at_trx_commit:
———–>  0: 每秒同步,並履行磁盤flush操作;
———–>  1:每事務同步,並履行磁盤flush操作;
———–>  2: 每事務同步,但不履行磁盤flush操作;

mysql> show global variables like 'innodb_flush_log_at_trx_commit';
+--------------------------------+-------+
| Variable_name         | Value |
+--------------------------------+-------+
| innodb_flush_log_at_trx_commit | 1   |
+--------------------------------+-------+
1 row in set (0.00 sec)

3、MySQL中日記相干經常使用的辦事器變量解釋:

expire_logs_days={0..99}

設定二進制日記的過時天數,超越此天數的二進制日記文件將被主動刪除。默許為0,表現不啟用過時主動刪除功效。假如啟用此功效,主動刪除任務平日產生在MySQL啟動時或FLUSH日記時。感化規模為全局,可用於設置裝備擺設文件,屬靜態變量。

general_log={ON|OFF}

設定能否啟用查詢日記,默許值為取決於在啟動mysqld時能否應用了–general_log選項。如若啟用此項,其輸入地位則由–log_output選項停止界說,假如log_output的值設定為NONE,即便用啟用查詢日記,其也不會記載任何日記信息。感化規模為全局,可用於設置裝備擺設文件,屬靜態變量。

general_log_file=FILE_NAME

查詢日記的日記文件稱號,默許為“hostname.log”。感化規模為全局,可用於設置裝備擺設文件,屬靜態變量。

binlog-format={ROW|STATEMENT|MIXED}

指定二進制日記的類型,默許為STATEMENT,建議更改成MIXED。假如設定了二進制日記的格局,卻沒有啟用二進制日記,則MySQL啟動時會發生正告日記信息並記載於毛病日記中。感化規模為全局或會話,可用於設置裝備擺設文件,且屬於靜態變量。

log={YES|NO}

能否啟用記載一切語句的日記信息於普通查詢日記(general query log)中,默許平日為OFF。MySQL 5.6曾經棄用此選項。

log-bin={YES|NO}

能否啟用二進制日記,假如為mysqld設定了–log-bin選項,則其值為ON,不然則為OFF。其僅用於顯示能否啟用了二進制日記,其實不反響log-bin的設定值。感化規模為全局級別,屬非靜態變量。

log_bin_trust_function_creators={TRUE|FALSE}

此參數僅在啟用二進制日記時有用,用於掌握創立存儲函數時假如會招致不平安的事宜記載二進制日記前提下能否制止創立存儲函數。默許值為0,表現除非用戶除CREATE ROUTING或ALTER ROUTINE權限外還有SUPER權限,不然將制止創立或修正存儲函數,同時,還請求在創立函數時必須為之應用DETERMINISTIC屬性,再否則就是附帶READS SQL DATA或NO SQL屬性。設置其值為1時則不啟用這些限制。感化規模為全局級別,可用於設置裝備擺設文件,屬靜態變量。

log_error=/PATH/TO/ERROR_LOG_FILENAME

界說毛病日記文件。感化規模為全局或會話級別,可用於設置裝備擺設文件,屬非靜態變量。

log_output={TABLE|FILE|NONE}

界說普通查詢日記和慢查詢日記的保留方法,可所以TABLE、FILE、NONE,也能夠是TABLE及FILE的組合(用逗號離隔),默許為TABLE。假如組合中湧現了NONE,那末其它設建都將掉效,同時,不管能否啟用日記功效,也不會記載任何相干的日記信息。感化規模為全局級別,可用於設置裝備擺設文件,屬靜態變量。

log_query_not_using_indexes={ON|OFF}

設定能否將沒有應用索引的查詢操作記載到慢查詢日記。感化規模為全局級別,可用於設置裝備擺設文件,屬靜態變量。

log_slave_updates

用於設定復制場景中的從辦事器能否將從主辦事器收到的更新操作記載進本機的二進制日記中。本參數設定的失效須要在從辦事器上啟用二進制日記功效。

log_slow_queries={YES|NO}

能否記載慢查詢日記。慢查詢是指查詢的履行時光超越long_query_time參數所設准時長的事宜。MySQL 5.6將此參數修正為了slow_query_log。感化規模為全局級別,可用於設置裝備擺設文件,屬靜態變量。

log_warnings=#

設定能否將正告信息記載進毛病日記。默許設定為1,表現啟用;可以將其設置為0以禁用;而其值為年夜於1的數值時表現將新提議銜接時發生的“掉敗的銜接”和“謝絕拜訪”類的毛病信息也記載進毛病日記。

long_query_time=#

設定差別慢查詢與普通查詢的語句履行時光長度。這裡的語句履行時長為現實的履行時光,而非在CPU上的履行時長,是以,負載較重的辦事器上更輕易發生慢查詢。其最小值為0,默許值為10,單元是秒鐘。它也支撐毫秒級的解析度。感化規模為全局或會話級別,可用於設置裝備擺設文件,屬靜態變量。

max_binlog_cache_size{4096 .. 18446744073709547520}

二進定日記緩存空間年夜小,5.5.9及今後的版本僅運用於事務緩存,其下限由max_binlog_stmt_cache_size決議。感化規模為全局級別,可用於設置裝備擺設文件,屬靜態變量。

max_binlog_size={4096 .. 1073741824}

設定二進制日記文件下限,單元為字節,最小值為4K,最年夜值為1G,默許為1G。某事務所發生的日記信息只能寫入一個二進制日記文件,是以,現實上的二進制日記文件能夠年夜於這個指定的下限。感化規模為全局級別,可用於設置裝備擺設文件,屬靜態變量。

max_relay_log_size={4096..1073741824}

設定從辦事器上中繼日記的體積下限,達到此限制時其會主動停止中繼日記轉動。此參數值為0時,mysqld將應用max_binlog_size參數同時為二進制日記和中繼日記設定日記文件體積下限。感化規模為全局級別,可用於設置裝備擺設文件,屬靜態變量。

innodb_log_buffer_size={262144 .. 4294967295}

設定InnoDB用於幫助完成日記文件寫操作的日記緩沖區年夜小,單元是字節,默許為8MB。較年夜的事務可以借助於更年夜的日記緩沖區來防止在事務完成之前將日記緩沖區的數據寫入日記文件,以削減I/O操作進而晉升體系機能。是以,在有著較年夜事務的運用場景中,建議為此變量設定一個更年夜的值。感化規模為全局級別,可用於選項文件,屬非靜態變量。

innodb_log_file_size={108576 .. 4294967295}

設定日記組中每一個日記文件的年夜小,單元是字節,默許值是5MB。較為明智的取值規模是從1MB到緩存池體積的1/n,個中n表現日記組中日記文件的個數。日記文件越年夜,在緩存池中須要履行的檢討點刷寫操作就越少,這意味著所需的I/O操作也就越少,但是這也會招致較慢的毛病恢復速度。感化規模為全局級別,可用於選項文件,屬非靜態變量。

innodb_log_files_in_group={2 .. 100}

設定日記組中日記文件的個數。InnoDB以輪回的方法應用這些日記文件。默許值為2。感化規模為全局級別,可用於選項文件,屬非靜態變量。

innodb_log_group_home_dir=/PATH/TO/DIR

設定InnoDB重做日記文件的存儲目次。在缺省應用InnoDB日記相干的一切變量時,其默許會在數據目次中創立兩個年夜小為5MB的名為ib_logfile0和ib_logfile1的日記文件。感化規模為全局級別,可用於選項文件,屬非靜態變量。

innodb_support_xa={TRUE|FLASE}

存儲引擎事務在存儲引擎外部被付與了ACID屬性,散布式(XA)事務是一種高條理的事務,它應用“預備”然後“提交”(prepare-then-commit)兩段式的方法將ACID屬性擴大到存儲引擎內部,乃至是數據庫內部。但是,“預備”階段會招致額定的磁盤刷寫操作。XA須要事務調和員,它會告訴一切的介入者預備提交事務(階段1)。當調和員從一切介入者那邊收到“停當”信息時,它會指導一切介入者停止真實的“提交”操作。
此變量恰是用於界說InnoDB能否支撐兩段式提交的散布式事務,默許為啟用。現實上,一切啟用了二進制日記的並支撐多個線程同時向二進制日記寫入數據的MySQL辦事器都須要啟用散布式事務,不然,多個線程對二進制日記的寫入操作能夠會以與原始順序分歧的方法完成,這將會在基於二進制日記的恢復操作中或許是從辦事器上創立出分歧原始數據的成果。是以,除唯一一個線程可以轉變數據之外的其它運用場景都不該該禁用此功效。而在唯一一個線程可以修正數據的運用中,禁用此功效是平安的並可以晉升InnoDB表的機能。感化規模為全局和會話級別,可用於選項文件,屬靜態變量。

relay_log=file_name

設定中繼日記的文件稱號,默許為host_name-relay-bin。也能夠應用相對途徑,以指定非數據目次來存儲中繼日記。感化規模為全局級別,可用於選項文件,屬非靜態變量。

relay_log_index=file_name

設定中繼日記的索引文件名,默許為為數據目次中的host_name-relay-bin.index。感化規模為全局級別,可用於選項文件,屬非靜態變量。

relay-log-info-file=file_name

設定中繼辦事用於記載中繼信息的文件,默許為數據目次中的relay-log.info。感化規模為全局級別,可用於選項文件,屬非靜態變量。

relay_log_purge={ON|OFF}

設定對不再須要的中繼日記能否主動停止清算。默許值為ON。感化規模為全局級別,可用於選項文件,屬靜態變量。

relay_log_space_limit=#

設定用於存儲一切中繼日記文件的可用空間年夜小。默許為0,表現不限制。最年夜值取決於體系平台位數。感化規模為全局級別,可用於選項文件,屬非靜態變量。

slow_query_log={ON|OFF}

設定能否啟用慢查詢日記。0或OFF表現禁用,1或ON表現啟用。日記信息的輸入地位取決於log_output變量的界說,假如其值為NONE,則即使slow_query_log為ON,也不會記載任何慢查詢信息。感化規模為全局級別,可用於選項文件,屬靜態變量。

slow_query_log_file=/PATH/TO/SOMEFILE

設定慢查詢日記文件的稱號。默許為hostname-slow.log,但可以經由過程–slow_query_log_file選項修正。感化規模為全局級別,可用於選項文件,屬靜態變量。

sql_log_bin={ON|OFF}

用於掌握二進制日記信息能否記載進日記文件。默許為ON,表現啟用記載功效。用戶可以在會話級別修正此變量的值,但其必需具有SUPER權限。感化規模為全局和會話級別,屬靜態變量。

sql_log_off={ON|OFF}

用於掌握能否制止將普通查詢日記類信息記載進查詢日記文件。默許為OFF,表現不由止記載功效。用戶可以在會話級別修正此變量的值,但其必需具有SUPER權限。感化規模為全局和會話級別,屬靜態變量。

sync_binlog=#

設定多久同步一次二進制日記至磁盤文件中,0表現分歧步,任何負數值都表現對二進制每若干次寫操作以後同步一次。當autocommit的值為1時,每條語句的履行都邑惹起二進制日記同步,不然,每一個事務的提交會惹起二進制日記同步。 建議設置為1。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved