22
0
Fork 0

ajout info sur sql_log_bin = 0

This commit is contained in:
gcolpart 2017-01-11 23:29:31 +01:00
parent 31c77a265f
commit 3ef3611bef
1 changed files with 41 additions and 30 deletions

View File

@ -499,6 +499,42 @@ ou
mysql> SET @@max_connect_errors=50;
~~~
### Log des requêtes lentes
Pour débugger les applications lentes, c'est une fonctionnalité intéressante de trouver quelle requête est longue.
Pour cela on peut spécifier quand une requête est considérée comme longue, le chemin où stocker les requêtes, et l'activation des logs.
~~~{.ini}
[mysqld]
long_query_time = 5
slow_query_log = 1
slow_query_log_file = /var/log/mysql/slow.log
~~~
Ou à chaud :
~~~
SET GLOBAL slow_query_log=ON;
SET GLOBAL long_query_time=5;
SET GLOBAL slow_query_log_file= "/var/log/mysql/slow.log";
~~~
### Log des dead lock
> *Note* : Seulement possible depuis MySQL 5.6 ou MariaDB 10.
~~~{.ini}
[mysqld]
innodb_print_all_deadlocks = on
~~~
À chaud :
~~~
SET GLOBAL innodb_print_all_deadlocks=on;
~~~
## Sauvegarde
Pour sauvegarder une base de données dans un seul fichier (sans et avec compression) :
@ -747,7 +783,7 @@ log2mail.
*Note* : il faut ajouter l'utilisateur `log2mail` dans le groupe `adm`.
## Gestion des binlogs
## binlogs
Par défaut, MySQL stocke chaque requête en écriture dans des fichiers appelés *binlogs*.
@ -837,40 +873,15 @@ On pourra ainsi injecter le contenu d'un binlog dans une base… tout simplement
# cat mysql-bin.001789.txt | mysql -P3307
~~~
### Log des requêtes lentes
### SET sql_log_bin = 0
Pour débugger les applications lentes, c'est une fonctionnalité intéressante de trouver quelle requête est longue.
Pour cela on peut spécifier quand une requête est considérée comme longue, le chemin où stocker les requêtes, et l'activation des logs.
~~~{.ini}
[mysqld]
long_query_time = 5
slow_query_log = 1
slow_query_log_file = /var/log/mysql/slow.log
~~~
Ou à chaud :
On peut effectuer des requêtes SQL qui ne seront pas écrites dans le binlog. Pour cela on positionne la variable _sql_log_bin_ à 0 et les requêtes interactives suivantes ne seront pas prises en compte dans le binlog (bien sûr, si l'on quitte le CLI MySQL, cela ne sera plus valable) :
~~~
SET GLOBAL slow_query_log=ON;
SET GLOBAL long_query_time=5;
SET GLOBAL slow_query_log_file= "/var/log/mysql/slow.log";
mysql> SET sql_log_bin = 0;
~~~
### Log des dead lock
> **Note** : Seulement possible depuis MySQL 5.6 ou MariaDB 10.
~~~{.ini}
[mysqld]
innodb_print_all_deadlocks = on
~~~
À chaud :
~~~
SET GLOBAL innodb_print_all_deadlocks=on;
~~~
> *Note* : cela nécessite le droit MySQL _SUPER_
## Multiples instances MySQL