Auteur Sujet: ibdata1  (Lu 1889 fois)

Hors ligne darkmole

  • BoyScout Froggy
  • **
  • Messages: 90
  • Karma: 0
ibdata1
« le: 28 juillet, 2010, 16:36:14 pm »
Salut,
Mon fichier ibdata1 ne cesse de grossir (2,3G). Je sais pas du tout à quoi ça correspond, donc je ne vais pas le supprimer.
Quelqu'un sait ce que c'est ?
Comment remédier à ça ?
Je possède Nagios 3.0.6 et Centreon 2.1.3.

Merci d'avance

Hors ligne michon

  • Addict Froggy
  • ***
  • Messages: 120
  • Karma: 3
Re : ibdata1
« Réponse #1 le: 28 juillet, 2010, 16:40:32 pm »
ce fichier est situé à quel endroit ?
C'est un fichier de Nagios ou de centreon ?

Hors ligne Guigui

  • Administrateur
  • Super Froggy
  • *
  • Messages: 963
  • Karma: 24
  • [Pas de support via MP]
Re : ibdata1
« Réponse #2 le: 28 juillet, 2010, 16:41:34 pm »
ibdata, c'est mysql... ?!? non ?
Ça doit faire partie de ta base

Dans Centreon, regarde dans >>  Administration > Base de données

tu auras la taille de tes bases... Histoire de voir si ça correspond  :-\
--> Merci de préciser si vos problèmes sont résolus pour que l'équipe du forum puisse passer vos topics en [RÉSOLU].

«Ce n'est qu'en essayant continuellement que l'on finit par réussir. En d'autres termes, plus ça rate et plus on a de chances que ça marche!» (Shadocks)

Hors ligne darkmole

  • BoyScout Froggy
  • **
  • Messages: 90
  • Karma: 0
Re : ibdata1
« Réponse #3 le: 28 juillet, 2010, 16:42:28 pm »
/var/lib/mysql/ibdata1
Nagios ou Centreon ? Je pense que c'est plûtot lié à Centreon mais j'en suis pas vraiment sûr.

Hors ligne darkmole

  • BoyScout Froggy
  • **
  • Messages: 90
  • Karma: 0
Re : Re : ibdata1
« Réponse #4 le: 28 juillet, 2010, 16:48:46 pm »
ibdata, c'est mysql... ?!? non ?
Ça doit faire partie de ta base

Dans Centreon, regarde dans >>  Administration > Base de données

tu auras la taille de tes bases... Histoire de voir si ça correspond  :-\



[root@serveur ]# ls -lh /var/lib/mysql/ibdata1
-rw-rw---- 1 mysql mysql 2,3G jui 28 16:48 /var/lib/mysql/ibdata1

Ça ne correspond pas.

Hors ligne david.guenault

  • Equipe Monitoring-fr.org
  • Mentor Froggy
  • *
  • Messages: 342
  • Karma: 15
Re : ibdata1
« Réponse #5 le: 28 juillet, 2010, 20:45:07 pm »
C'est chiant, mais normal. C'est le principe de base du moteur transactionnel innodb. En clair dans un moteur transactionnel (comme oracle par exemple), les données sont écrites 2 fois (une fois dans le fichier de donnée et une fois dans le fichier log des transactions).Donc le fichier data grossis ..... L'impact de ce genre de moteur est qu'on ne peut faire redescendre la taille du fichier de données de manière simple (genre un delete, truncate, etc....) car si on doit faire un rollback et bien il faut avoir la place de remettre les données dans le fichier de données a partir du log. Concernant les bases centreon et centstorage on ne peut rien y faire car centreon utilise les transactions. Par contre concernant la base ndo ou centstatus (qui est également en innodb) on peut très bien basculer les tables en myisam (ndo2db n'utilise pas les transactions).

pour être clair il faut planifier des actions de maintenance (non gérées par centreon) afin de faire redescendre la taille des fichiers data à quelque chose de raisonnable (en fonction du périmètre cela peut être hebdomadaire). Mais pour cela il vaut mieux faire appel à un DBA et savoir gérer des interuptions de service.

Hors ligne darkmole

  • BoyScout Froggy
  • **
  • Messages: 90
  • Karma: 0
Re : Re : ibdata1
« Réponse #6 le: 29 juillet, 2010, 10:59:53 am »
C'est chiant, mais normal. C'est le principe de base du moteur transactionnel innodb. En clair dans un moteur transactionnel (comme oracle par exemple), les données sont écrites 2 fois (une fois dans le fichier de donnée et une fois dans le fichier log des transactions).Donc le fichier data grossis ..... L'impact de ce genre de moteur est qu'on ne peut faire redescendre la taille du fichier de données de manière simple (genre un delete, truncate, etc....) car si on doit faire un rollback et bien il faut avoir la place de remettre les données dans le fichier de données a partir du log. Concernant les bases centreon et centstorage on ne peut rien y faire car centreon utilise les transactions. Par contre concernant la base ndo ou centstatus (qui est également en innodb) on peut très bien basculer les tables en myisam (ndo2db n'utilise pas les transactions).

pour être clair il faut planifier des actions de maintenance (non gérées par centreon) afin de faire redescendre la taille des fichiers data à quelque chose de raisonnable (en fonction du périmètre cela peut être hebdomadaire). Mais pour cela il vaut mieux faire appel à un DBA et savoir gérer des interuptions de service.

Hum hum...
Après première lecture, pas tout compris.

Hors ligne michon

  • Addict Froggy
  • ***
  • Messages: 120
  • Karma: 3
Re : ibdata1
« Réponse #7 le: 29 juillet, 2010, 11:06:36 am »
Si j'ai bien compris...

Il te dit que c'est normal, que ca va toujours faire que grossir, et que tu dois programmer des maintenances lors desquels tu supprimera une partie des données. Et il te recommande un "DBA" (me demande pas ce que c'est lol) afin de te faciliter le travail de synchro.


Hors ligne Guigui

  • Administrateur
  • Super Froggy
  • *
  • Messages: 963
  • Karma: 24
  • [Pas de support via MP]
Re : ibdata1
« Réponse #8 le: 29 juillet, 2010, 11:20:22 am »
La taille de la base dépends de plusieurs choses:
  • Le nombre d'hôtes / services supervisés
  • Le nombre de perfdata remontés par services
  • La durée de rétention des données dans la base MySQL (>> Administration > Options > Centstorage > )
  • La durée de rétention des logs (>> Administration > Options > Centstorage > )

Ensuite, y'a peut-être moyen de lancer une commande OPTIMIZE sur la base, mais je ne sais pas si l'effet sera visible.

En modifiant les durées de rétentions de données en bases, la purge programmée de Centreon supprimera les enregistrements les plus anciens dans la base. Ça peut éventuellement permettre de trouver un juste milieu  :-\
--> Merci de préciser si vos problèmes sont résolus pour que l'équipe du forum puisse passer vos topics en [RÉSOLU].

«Ce n'est qu'en essayant continuellement que l'on finit par réussir. En d'autres termes, plus ça rate et plus on a de chances que ça marche!» (Shadocks)

Hors ligne yohmartin

  • Mentor Froggy
  • ****
  • Messages: 294
  • Karma: 1
Re : ibdata1
« Réponse #9 le: 29 juillet, 2010, 14:04:05 pm »
Bonjour,

ibata1 est le fichier de transaction de MySQL, ce fichier ne diminuera pas même si tu purge ta base.
Pour diminuer ce fichier il faut exporter ta base, supprimer ta base et importer ta sauvegarde.
Voici une procédure qui marche plutot bien :


Modifier le fichier my.cnf  et ajouter ceci sous [mysqld]:
innodb_file_per_table
Créer un répertoire pour y stocker la sauvegarde :
mkdir -p /usr/bkup
Sauvegarder les bases de données :
mysqldump -R -q --all-databases > /usr/bkup/complete.sql
Arrêter mysql :
service mysqld stop ou /etc/init.d/mysqld stop
Supprimer tous les fichiers de la base :
rm -fr /var/lib/mysql/*
Installer les bases par defaut :
/usr/bin/mysql_install_db
Changer le propriétaire du répertoire :
chown -R mysql:mysql /var/lib/mysql
Démarrer MySQL :
service mysqld start ou /etc/init.d/mysqld start
Importer la sauvegarde :
mysql < /usr/bkup/complete.sql
Redémarrer MySQL :
service mysqld restart ou /etc/init.d/mysqld restart

J'espere que ca te sera utile

Hors ligne darkmole

  • BoyScout Froggy
  • **
  • Messages: 90
  • Karma: 0
Re : ibdata1
« Réponse #10 le: 29 juillet, 2010, 14:50:56 pm »
Whaou :)
J'ai pas encore testé mais je le ferai.
Merci a tous pour ces infos.