Mot-clé - Software

Fil des billets - Fil des commentaires

mardi, janvier 10 2017

PostgreSQL : tuning avec postgresqltuner.pl

postgresqltuner.pl est un petit script fonctionnant sur le même principe que mysqltuner.pl :

Il se connecte à la base PostgreSQL (local par defaut, mais peut se connecter à une base distante), et y effectue une série de tests pour identifier les bon et mauvais paramètres de configuration, et préconiser des améliorations.

Lorsque la base est en local, ou que la connection est possible en SSH via authentification par clef privée, il peut aller un peu plus loin concernant le tuning de l'OS / de la RAM utilisée par PostgreSQL par rapport à la RAM totale disponible.

Plus d'infos : https://github.com/jfcoz/postgresqltuner

MySQL : Identifier les transactions lentes ou causant un crash

Certains comportements de MySQL/MariaDB/Galera/Percona sont parfois difficiles à investiguer.

C'est le cas notamment de :

  • un crash provoqué par une certaine requête
  • des requêtes bloquées par des transactions en cours (une transaction pouvant locker des lignes/index, sans qu'aucune requête ne sois visible ni dans le full processlist, ni dans le engine innodb status pendant le blocage).

mysql_analyse_general_log permet de diagnostiquer plus facilement ce type de problème, en analysant le log general de MySQL (toute les requêtes), pour en extraire toutes les transactions, et les requêtes de chaque transaction.

Celà permet notamment de filtrer :

  • les transactions qui étaient en cours à l'heure d'un crash
  • les transactions ayant duré plus de N secondes

Et donc de diagnostiquer facilement ces deux types de problèmes.