Периодически( а иногда и достаточно часто) возникает необходимость в тестовых, или иных других целях, поднять пару mysql серверов, а можно и с реплицированием, для откатки или отладки того или иного процесса.
Автоматизировать самому данное телодвижение зачастую нет смысла, поскольку это не т��к часто необходимо, как хочется.
На просторах инета был найден такой готовый скрипт. Называется он myslqsandbox — мускульная песочница. Работает с версиями MySQL от 3.23 до 6.0. Распространяется под лицензией GPL.
Смысл прост.
1. Качаем MySQL-Sandbox-3.0.17.tar.gz и разархивируем его и инсталлируем
Если Вы root, то
Если обычный/необычный смертный пользователь, то
При этом помним, что в зависимости от того, какой дистрибутив Linux вы пользуете, PERL5LIB может отличаться.
Теперь у нас есть 2 варианта.
Вариант №1.
Если у нас уже есть проинсталлированный mysql, то мы можем воспользоваться командой и создать локальную песочницу.
где X.X.XX — версия, проинсталлированного mysql.
Вариант №2.
Качаем MySQL-<чего-нибудь-там-подходящее>.tar.gz и с него делаем песочницу.
Ваша песочница
Все необходимое (конфиги, команды) находится внутри Вашей домашней директории, и чистится простым удалением.
Можно использовать и более интересные комманды «песочницы». Например комманда
создает новый инстанс из одной master и двух slave баз.
создает мастер-мастер реплику с двумя серверами.
создание «circular» репликации c 3-мя slave серверами (доступно для mysql начиная с версии 5.1)
После выполнения каждой операции готовые инстансы автоматически запускаются и готовы к работе, сокеты/порты слушаются. При создании песочницы автоматически создаются 2 пользователя
Данная статья — есть попытка поделиться с общественнностью самим фактом наличия подобного изумительного в своем удобстве инструмента.
PS. В дальнейшем, готов продолжить описание данного инструмента, поскольку данное описание — есть только вводная часть.
Продолжение.
Автоматизировать самому данное телодвижение зачастую нет смысла, поскольку это не т��к часто необходимо, как хочется.
На просторах инета был найден такой готовый скрипт. Называется он myslqsandbox — мускульная песочница. Работает с версиями MySQL от 3.23 до 6.0. Распространяется под лицензией GPL.
Смысл прост.
1. Качаем MySQL-Sandbox-3.0.17.tar.gz и разархивируем его и инсталлируем
tar -zxvf MySQL-Sandbox-3.0.17.tar.gz
cd MySQL-Sandbox-3.0.17Если Вы root, то
export SANDBOX_AS_ROOT=1
perl Makefile.PL
make
make test
make installЕсли обычный/необычный смертный пользователь, то
export PATH=$HOME/usr/local/bin:$PATH
export PERL5LIB=$HOME/usr/local/lib/perl5/site_perl/5.8.8
perl Makefile.PL PREFIX=$HOME/usr/local
make
make test
make installПри этом помним, что в зависимости от того, какой дистрибутив Linux вы пользуете, PERL5LIB может отличаться.
Теперь у нас есть 2 варианта.
Вариант №1.
Если у нас уже есть проинсталлированный mysql, то мы можем воспользоваться командой и создать локальную песочницу.
make_sandbox_from_installed X.X.XXгде X.X.XX — версия, проинсталлированного mysql.
Вариант №2.
Качаем MySQL-<чего-нибудь-там-подходящее>.tar.gz и с него делаем песочницу.
cd ~
wget 127.0.0.1/mysql-5.5.15-linux2.6-x86_64.tar.gz
make_sandbox mysql-5.5.15-linux2.6-x86_64.tar.gzВаша песочница
~/msb_X_X_XX готова к использованию. #netstat -lna
unix 2 [ ACC ] STREAM LISTENING 68883 /tmp/mysql_sandbox5515.sock
tcp 0 0 0.0.0.0:3306 0.0.0.0:* LISTENВсе необходимое (конфиги, команды) находится внутри Вашей домашней директории, и чистится простым удалением.
Можно использовать и более интересные комманды «песочницы». Например комманда
make_replication_sandbox ~/mysql-5.5.15-linux2.6-x86_64.tar.gzсоздает новый инстанс из одной master и двух slave баз.
make_replication_sandbox --master_master ~/mysql-5.5.15-linux2.6-x86_64.tar.gzсоздает мастер-мастер реплику с двумя серверами.
make_replication_sandbox --circular=4 ~/mysql-5.5.15-linux2.6-x86_64.tar.gzсоздание «circular» репликации c 3-мя slave серверами (доступно для mysql начиная с версии 5.1)
После выполнения каждой операции готовые инстансы автоматически запускаются и готовы к работе, сокеты/порты слушаются. При создании песочницы автоматически создаются 2 пользователя
+-----------------+-------------+-------------------------------+ | user name | password | privileges | +-----------------+-------------+-------------------------------+ | root@localhost | msandbox | all on *.* with grant option | | msandbox@% | msandbox | all on *.* | +-----------------+-------------+-------------------------------+
Данная статья — есть попытка поделиться с общественнностью самим фактом наличия подобного изумительного в своем удобстве инструмента.
PS. В дальнейшем, готов продолжить описание данного инструмента, поскольку данное описание — есть только вводная часть.
Продолжение.
