Optimisation MySql

Forum dédié à la distribution du même nom et que vous pourrez télécharger sur http://www.contribs.org. La nouvelle version de cette distribution se nomme SME Server

Modérateur: modos Ixus

Optimisation MySql

Messagepar nono-mb » 01 Oct 2004 16:18

Bonjour,

J'utilise un serveur SME 6.01 pour faire tourner un intranet (egroupware) et un serveur de mail.

J'utilise MySql comme base de donnée

Je m'interroge à passer sur PgSQL qui semble-t-il serait plus robuste et rapide.
http://contribs.org/modules/pbboard/vie ... highlight=

Avant de m'embarquer dans de gros chantier j'aimerais bien commencer par optimiser cette base de donnée.

Quel sont les opération de maintenance que je peux effectuer pour optimiser ma base de donnée.

Merci
nono
a bientôt - nono
Avatar de l’utilisateur
nono-mb
Aspirant
Aspirant
 
Messages: 122
Inscrit le: 17 Sep 2003 00:00
Localisation: Angers (France)

Messagepar jdh » 03 Oct 2004 10:17

MySQL et Postgre sont 2 bases de données opensource réputées.

Postgre integre depuis longtemps certaines fonctionnalités encore attendues dans MySQL (select imbriqué, ...).
En contrepartie Postgre est plus à aborder.
MySQL a la réputation d'être plus rapide notamment en recherche mais pas en insertion.
Dans les faits, MySQL doit être (beaucoup) plus répandu. Notamment dans les sites web (LAMP = Linux Apache MySQL Php)

Donc, il faut être vraiment "intégriste" pour dire que Postgre est vraiment mieux au point de changer.

Quand à l'optimisation, c'est le plus souvent la faute du créateur de la base !
=> Il faut créer les index utiles. C'est à dire ceux qui servent dans les clause where, qui servent de liens.

Je te donne une expérience vécue.
Un collègue (analyste/programmeur) suivait l'install d'un datawarehouse autour d'un serveur 2000/ SQL 2000 / AS400.
Le serveur Windows était un bipro avec 2 Go de mémoire et ~80 Go de disque : base de 20-30G.
Un jour il me montre une procédure stockée dont le traitement dure 3h.
En lisant avec lui, en moins de 45mn, je lui ai fournis 2 optimisations à réaliser : une extrement simple (récup d'une table + index), l'autre plus complexe (réécriture de 5 select).
Il a fait la première seulement. Et il est passé de 3h à 12mn !
Avatar de l’utilisateur
jdh
Amiral
Amiral
 
Messages: 4741
Inscrit le: 29 Déc 2002 01:00
Localisation: Nantes

Messagepar jaysee » 05 Oct 2004 11:45

Pour optimiser MySQL, tu peut faire un passage en version 4, qui propose un super truc! le caching de requetes!
pour en savoir plus :

Doc de Mysql a propos du query cache

Pour installer MySQL 4 sur SME:
HowTo sur Contribs.org

Ensuite il faut editer le fichier /etc/my.cnf
et mettre dans la section [mysqld]
ca :
query_cache_type = 1
query_cache_size = 64M
relance mysql (/etc/init.d/mysql restart)


64M c la taille de cache que j'utilise, ca marche bien chez moi, pour infos sur un site avec 8000 visiteurs uniques / jours, qui a du phpBB/phpNuke, j'ai halluciné sur le gain!! les pages sont devenus instantannées!
la doc MySQL indique 10 a 20 fois plus rapide, je pense qu'ils sont raisonables!!
"Une fois, en auto, j'ai eu un accent grave" - Johnny Halliday
Avatar de l’utilisateur
jaysee
Enseigne de vaisseau
Enseigne de vaisseau
 
Messages: 148
Inscrit le: 07 Nov 2003 01:00

Messagepar drikcT » 06 Oct 2004 09:05

Bonjour,

Il y a aussi mysqlAR que tu peux installer: il te donne quelques conseils, quelques graphiques dans le style MRTG dont tu peux te servir pour augmenter certains caches et améliorer les performances. Voici l'URL: http://people.ee.ethz.ch/~oetiker/webtools/rrdtool/rrdworld/mysqlard.html

Cordialement.
drikcT
Major
Major
 
Messages: 76
Inscrit le: 14 Mai 2004 09:38

Messagepar nono-mb » 08 Oct 2004 17:10

Merci pour toutes vos répondre, j'ai déjà essayé d'installer mysql 4 sur un serveur de test qui à l'air de fonctionner sans soucis.

En utilisation mono-utilisateur je n'ai pour le moment par remarque de gain de vitesse mais je pense que c'est normal.
a bientôt - nono
Avatar de l’utilisateur
nono-mb
Aspirant
Aspirant
 
Messages: 122
Inscrit le: 17 Sep 2003 00:00
Localisation: Angers (France)

Messagepar jaysee » 12 Oct 2004 19:05

J'ai install" MySQL 4 sur 2 serveur:

Mon serveur de Dev, un modeste Celeron 433 qui fait trop de choses en meme tps, je n'ai pas ressenti un gain enorme, leger (mais il y a peu de connections).

Un serveur en prod, PIV 3,06Ghz, 1Go de RAM, la c'est flagrant (avec plus de 5000 requetes / minutes selon mes stats).

Voila mon retour d'experience...
"Une fois, en auto, j'ai eu un accent grave" - Johnny Halliday
Avatar de l’utilisateur
jaysee
Enseigne de vaisseau
Enseigne de vaisseau
 
Messages: 148
Inscrit le: 07 Nov 2003 01:00


Retour vers E-Smith / SME Server

Qui est en ligne ?

Utilisateur(s) parcourant actuellement ce forum : Aucun utilisateur inscrit et 1 invité