Outils pour utilisateurs

Outils du site


informatique:linux:mysql

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentesRévision précédente
Prochaine révision
Révision précédente
informatique:linux:mysql [2016/08/17 11:01] – benoitinformatique:linux:mysql [2020/11/03 12:32] (Version actuelle) – [Sauvegarde] benoit
Ligne 46: Ligne 46:
   show table status;   show table status;
  
-Voici une syntaxe qui donne un résultat équivalent à ''show table status'' mais qui permet de filtrer :+Voici quelques syntaxes qui donnent un résultat équivalent à ''show table status'' mais qui permet de filtrer : 
 +  SELECT * FROM information_schema.tables WHERE table_schema = DATABASE();
   SELECT TABLE_NAME,TABLE_ROWS FROM information_schema.tables WHERE table_schema = DATABASE();   SELECT TABLE_NAME,TABLE_ROWS FROM information_schema.tables WHERE table_schema = DATABASE();
-  +  SELECT TABLE_NAME,TABLE_ROWS FROM information_schema.tables WHERE table_schema = DATABASE() ORDER BY TABLE_ROWS; 
 +  SELECT TABLE_SCHEMA,TABLE_NAME,TABLE_ROWS FROM information_schema.tables WHERE table_schema = DATABASE() ORDER BY TABLE_ROWS; 
 + 
 +Exporter un tables vers un fichier CSV : 
 +  SELECT * FROM my_table 
 +  INTO OUTFILE '/tmp/my_table.csv' 
 +  FIELDS TERMINATED BY ',' 
 +  ENCLOSED BY '"' 
 +  LINES TERMINATED BY '\n';
  
 ==== USE ==== ==== USE ====
Ligne 61: Ligne 70:
 ou ou
   desc users;   desc users;
 +
 +Pour voir le nombre de ligne par tables :
 +  SELECT table_name, table_rows FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_SCHEMA = 'ma_base';
  
 ==== GRANT ==== ==== GRANT ====
Ligne 92: Ligne 104:
 Lancer la requête : Lancer la requête :
   mysql < select.sql   mysql < select.sql
 +
 +ou bien :
 +  mysql -u root -p dbperso
 +  source select.sql
  
 :!: En cas de problème d'accent, insérer la ligne suivante en tête du script SQL pour que l'import se fasse avec un encodage en UTF-8 :!: En cas de problème d'accent, insérer la ligne suivante en tête du script SQL pour que l'import se fasse avec un encodage en UTF-8
Ligne 138: Ligne 154:
 Note :!: : Si aucun chemin de fichier n'a été précisé pour la variable **set-variable = log** le fichier log se trouvera par défaut dans ''/var/lib/mysql/HOSTNAME.log''. Note :!: : Si aucun chemin de fichier n'a été précisé pour la variable **set-variable = log** le fichier log se trouvera par défaut dans ''/var/lib/mysql/HOSTNAME.log''.
  
 +Obtenir la taille des bases de données :
 +  SELECT table_schema AS "Database", 
 +  ROUND(SUM(data_length + index_length) / 1024 / 1024, 2) AS "Size (MB)" 
 +  FROM information_schema.TABLES 
 +  GROUP BY table_schema;
 +
 +Obtenir la taille de chacunes des tables :
 +  use ma_table;
 +  SELECT 
 +     table_schema as `Database`, 
 +     table_name AS `Table`, 
 +     round(((data_length + index_length) / 1024 / 1024), 2) `Size in MB` 
 +  FROM information_schema.TABLES 
 +  ORDER BY (data_length + index_length) DESC;
 ===== Maintenance et réparation ===== ===== Maintenance et réparation =====
 Pour vérifier s'il y a des corruptions sur toutes les tables des bases de données : Pour vérifier s'il y a des corruptions sur toutes les tables des bases de données :
Ligne 199: Ligne 229:
 Pour exporter certaines tables : Pour exporter certaines tables :
   mysqldump -u root -p ma_base table1 table2 > dump_mes_tables.sql   mysqldump -u root -p ma_base table1 table2 > dump_mes_tables.sql
 +  
 +Pour exporter selon un critère "WHERE" dans une table :
 +  mysqldump --where "country = 'France'" ma_base table1 > dump_where_France.sql
  
 Pour exporter une base de données à travers SSH : Pour exporter une base de données à travers SSH :
Ligne 310: Ligne 343:
 Pour connaître le statut de la réplication : Pour connaître le statut de la réplication :
   show slave status\G;   show slave status\G;
 +
 +===== Optimisations =====
 +
 +Quantité de mémoire que MySQL peut mettre des requêtes en buffer. La valeur recommandé est 25% de la mémoire disponible.
 +Exemple si le serveur dispose de 4 Go de mémoire dédié à MySQL :
 +
 +Editer ''/etc/mysql/my.cnf'' et ajouter/modifier :
 +
 +  key_buffer 1G 
 +
 +Exemple pour augmenter le nombre de table en mémoire cache :
 +
 +  table_cache            = 2000
  
 ===== Pour plus de détails ===== ===== Pour plus de détails =====
informatique/linux/mysql.1471431689.txt.gz · Dernière modification : (modification externe)