Bonjour,
Ce weekend j'ai travaillé sur la réplication et l'utilisation de MySQL-Proxy pour monter une solution de répartition MASTER/SLAVE pour MySQL.
Pour le test, j'utilise 2 serveurs seulement, un MASTER et un SLAVE ( j'en ajouterai par la suite un 3eme quand ca fonctionnera)
J'ai suivi ce tutorial avec succès pour la réplication qui fonctionne bien :
(chaque mise à jour sur mon MASTER s'effectue avec succès sur le slave grace au log-bin)
Je cherche maintenant à utiliser la technique rw-splitting. (lecture sur le slave et insert/update sur le master)
J'ai donc installé MySQL-Proxy 0.80 avec succès, paramétrer le fichier /etc/sysconfig/mysql-proxy
Puis :ENABLED="true"
PROXY_OPTIONS="
--daemon
--log-file=/home/mysql-logs/mysql-proxy.log
--log-level=debug
--proxy-address=IP_MAITRE:4040
--proxy-lua-script=/root/mysql-proxy/share/doc/mysql-proxy/rw-splitting.lua
--proxy-backend-addresses=IP_MAITRE:3306
--proxy-read-only-backend-addresses=IP_SLAVE:3306"
Mon fichier log semble ok :[root@r]# /etc/init.d/mysql-proxy start
Démarrage de mysql-proxy : [ OK ]
J'ai créer un script php qui effectue des requetes SQL puis je l'ai couplé avec le script ab d'apache pour lui balancer du trafic mais après vérification dans mon mysqld-log.log[root]# tail -f /home/mysql-logs/mysql-proxy.log
2010-02-22 11:50:37: (message) proxy listening on port IP_SERVEUR:4040
2010-02-22 11:50:37: (message) added read/write backend: IP_SERVEUR:3306
2010-02-22 11:50:37: (message) added read-only backend: IP_SLAVE:3306
seul le MASTER executer les selects. Cela ne fonctionne donc pas.
Je cherche à comprendre mieux le fonctionnement de MYSQL-PROXY.
Impossible par exemple pour moi d'accéder à l'admin de mysql-proxy, je ne dispose pas de table "proxy_connections" dans mysql comme dans ce tuto :
Bref, je n'arrive plus à avancer, si vous avez un retour d'experience sur ce sujet cela m'intéresse grandement .http://www.arcetri.astro.it/CC/Mysql/mysql-proxy.html
mysql> select * from proxy_connections; (exemple tuto)
+------+--------+-------+------+
| id | type | state | db |
+------+--------+-------+------+
| 0 | server | 0 | |
| 1 | proxy | 0 | |
| 2 | server | 10 | |
+------+--------+-------+------+
3 rows in set (0.00 sec)
Mes questions :
1) comment acceder ou installer ces fameuses tables proxy_* de l'amin ?
2) comment tester si le RW-SPLITTING fonctionne bien ?
3) Quelqu'un sur le forum utilise mysql-proxy ?
Merci pour votre aide,
Max
Partager