Différences
Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentes Révision précédente Prochaine révision | Révision précédente | ||
sysadmin:tips:mysql [2013/04/04 17:00] james ajout requete nb enregistrements innodb |
sysadmin:tips:mysql [2015/07/17 17:15] james ajout commande fragmentation |
||
---|---|---|---|
Ligne 1: | Ligne 1: | ||
+ | {{tag>mysql prompt export csv innodb}} | ||
+ | |||
====== Mysql ====== | ====== Mysql ====== | ||
Ligne 24: | Ligne 26: | ||
<code>show table status like 'MaGrosseTable';</code> | <code>show table status like 'MaGrosseTable';</code> | ||
+ | ===== Exporter des données dans un fichier csv ===== | ||
+ | |||
+ | Pour exporter des données dnas un fichier CSV, utiliser un "SELECT ... INTO OUTFILE" comme par exemple dans l'exemple ci dessous : | ||
+ | <code>SELECT order_id,product_name,qty FROM orders INTO OUTFILE '/tmp/orders.csv' FIELDS TERMINATED BY ',' ENCLOSED BY '"' LINES TERMINATED BY '\n'</code> | ||
+ | |||
+ | <note>Il vous faudra un acces au serveur mysql pour récupérer le fichier csv obtenu</note> | ||
+ | <note>Il faudra aussi que l'utilisateur MySQL que vous utilisez ait le droit "FILE" sous pein d'obtenir une erreur "ERROR 1045 (28000): Access denied for user 'monUser'@'%' (using password: YES)" | ||
+ | |||
+ | Pour lui affecter si vous le pouvez, utiliser une syntaxe similaire a: "GRANT FILE ON maBase.* TO 'monUser'@'%';" | ||
+ | |||
+ | </note> | ||
+ | |||
+ | ====== Savoir quelles tables sont fragmentées ===== | ||
+ | Pour savoir quelles tables sont fragmentées, on peut utiliser la commande suivante :<code>SELECT engine, table_schema, table_name, data_free*100/data_length AS percent_frag FROM information_schema.tables where data_free IS NOT NULL and data_free <> 0 order by percent_frag ;</code> | ||
+ | Il suffit ensuite de lancer un "OPTIMIZE table MaTable" sur ces tables pour réduire la fragmentation | ||
+ | <note>Il doit y avoir mieux cette commande donne des faux positifs et/ou quelques valeurs bizarres, mais ca marche (tm)</note> | ||