Bardzo przydatny program. Generalnie jest to proxy które stoi pomiędzy serwerem mysql (mysqld) a klientem (mysql, php, python). Służy m.in. do analizy kodu sql wysyłanego do serwera, jego zmianie, filtrowaniu (gdy np. napiszemy CREAT zamiast CREATE skrypt lua może wykryć taką sytuację i poprawić kod), oraz do pisania rozmaitych macr.
http://www.oreillynet.com/pub/a/databases/2007/07/12/getting-started-with-mysql-proxy.html
Dzięki niemu możliwy jest load balancing ruchu pomiędzy klientami a nodami clustra mysql lub serwerem master/slave.
Opcje które umożliwią nam uruchomienie load-balancing-u to:
--proxy-read-only-backend-addresses=
--proxy-backend-addresses=
Szkoda tylko że nie ma prostego sposobu na załadowanie kilku takich skryptów, bo wraz z uruchomieniem demona mysql-proxy należy podać ścieżkę do skryptu który chcemy załadować.
$ mysql-proxy --proxy-lua-script=first_example.lua -D
Napisałem "prostego" bo znalazłem skrypt lua który umożliwia ładowanie kolejnych skryptów przez klienta mysql ( http://datacharmer.blogspot.com/2007/11/multiple-scripts-in-mysql-proxy.html). Wymieniony skrypt znajduje się także w katalogu /usr/share/doc/packages/mysql-proxy/examples/ ( SUSE 10.3). Czy nie powinno być opcji w uruchomieniu mysql-proxy która pozwoli na załadowanie kilku skryptów przy starcie demona?Bardzo przydatna według mnie jest opcja wywoływania zewnętrznych programów przy pomocy skryptów lua. Przykładowy sktypt z możliwością uruchomienia dowolnej aplikacji shell-owej znajduje sie na forge.mysql.com (http://forge.mysql.com/tools/tool.php?id=79). W połączeniu z event schedulerem (http://dev.mysql.com/doc/refman/5.1/en/events.html) daje to nowe możliwości, możliwości które prawdopodobnie będę miał okazje wykorzystać.
Brak komentarzy:
Prześlij komentarz