MySQL环境搭建利器---Sandbox
https://metacpan.org/pod/MySQL::Sandbox
[root@localhost mysql]# pwd
/opt/mysql
[root@localhost mysql]# ll
total 588236
-rw-r--r--. 1 root root 295874759 Jun 4 04:56 mariadb-10.0.12-linux-x86_64.tar.gz
-rw-r--r--. 1 root root 306470256 Jun 4 04:56 mysql-5.6.12-linux-glibc2.5-x86_64.tar.gz
[root@localhost mysql]#
看见各种提示都给出了,相信童鞋们都看的懂,选择Y同意。
[root@localhost sandboxes]# pwd
/root/sandboxes
[root@localhost sandboxes]# ll
total 40
-rwxr-xr-x. 1 root root 54 Jun 4 05:25 clear_all
drwxr-xr-x. 4 root root 4096 Jun 4 05:25 msb_5_6_12
-rw-r--r--. 1 root root 3621 Jun 4 05:25 plugin.conf
-rwxr-xr-x. 1 root root 56 Jun 4 05:25 restart_all
-rwxr-xr-x. 1 root root 2139 Jun 4 05:25 sandbox_action
-rwxr-xr-x. 1 root root 58 Jun 4 05:25 send_kill_all
-rwxr-xr-x. 1 root root 54 Jun 4 05:25 start_all
-rwxr-xr-x. 1 root root 55 Jun 4 05:25 status_all
-rwxr-xr-x. 1 root root 53 Jun 4 05:25 stop_all
-rwxr-xr-x. 1 root root 52 Jun 4 05:25 use_all
[root@localhost sandboxes]#
[root@localhost ~]# pgrep -fl mysql2151 /bin/sh /opt/mysql/5.6.12/bin/mysqld_safe --defaults-file=/root/sandboxes/msb_5_6_12/my.sandbox.cnf2331 /opt/mysql/5.6.12/bin/mysqld --defaults-file=/root/sandboxes/msb_5_6_12/my.sandbox.cnf --basedir=/opt/mysql/5.6.12 --datadir=/root/sandboxes/msb_5_6_12/data --plugin-dir=/opt/mysql/5.6.12/lib/plugin --user=root --log-error=/root/sandboxes/msb_5_6_12/data/msandbox.err --pid-file=/root/sandboxes/msb_5_6_12/data/mysql_sandbox5612.pid --socket=/tmp/mysql_sandbox5612.sock --port=5612[root@localhost ~]#
[root@localhost msb_5_6_12]# pkill -9 mysqld [root@localhost msb_5_6_12]# ./start sandbox server already started (found pid file /root/sandboxes/msb_5_6_12/data/mysql_sandbox5612.pid) sandbox server started [root@localhost msb_5_6_12]# rm -f /root/sandboxes/msb_5_6_12/data/mysql_sandbox5612.pid [root@localhost msb_5_6_12]# ./start . sandbox server started [root@localhost msb_5_6_12]#
对于部署多个实例,我们还可以添加一个环境变量,就是将实例安装在指定的位置,
[root@mysql-server-01 mysql]# make_multiple_sandbox mariadb-10.0.12-linux-x86_64.tar.gz
installing node 1
installing node 2
installing node 3
group directory installed in $SANDBOX_HOME/multi_msb_mariadb-10_0_12
[root@mysql-server-01 mysql]#
现在是不是开始爱上MySQL Sandbox了呢?那你还等什么?心动就上吧!哈哈,就写到这里了。
http://pan.baidu.com/s/1sjLMJCx
一 sandbox是什么?
二 如何安装和使用
获取Percona server 5.7.17 版本
- wget "https://www.percona.com/downloads/Percona-Server-5.7/Percona-Server-5.7.17-11/binary/tarball/Percona-Server-5.7.17-11-Linux.x86_64.ssl101.tar.gz"
要深入了解各个命令的具体用法,请参考源码目录下的README文档,然后再自己动手实践,能理解更深刻,毕竟纸上来得终觉浅,绝知此事要躬行。下面主要通过
安装单个实例
- root@rac4 :/data/mysql# >make_sandbox /data/mysql/Percona -Server -5 .7 .17 -11 -Linux .x86_64 .ssl101 .tar .gz
- unpacking /data/mysql/Percona -Server -5 .7 .17 -11 -Linux .x86_64 .ssl101 .tar .gz
- Executing low_level_make_sandbox - -basedir = /data/mysql/5 .7 .17 \
- --sandbox_directory =msb_5_7_17 \
- --install_version =5 .7 \
- --sandbox_port =5717 \
- --no_ver_after_name \
- --my_clause =log -error =msandbox .err
- The MySQL Sandbox , version 3 .2 .05
- (C ) 2006 -2016 Giuseppe Maxia
- Installing with the following parameters :
- upper_directory = /root/sandboxes
- sandbox_directory = msb_5_7_17
- sandbox_port = 5717
- check_port =
- no_check_port =
- datadir_from = script
- install_version = 5 .7
- basedir = /data/mysql/5 .7 .17
- tmpdir =
- my_file =
- operating_system_user = root
- db_user = msandbox
- remote_access = 127 . %
- bind_address = 127 .0 .0 .1
- ro_user = msandbox_ro
- rw_user = msandbox_rw
- repl_user = rsandbox
- db_password = msandbox
- repl_password = rsandbox
- my_clause = log -error =msandbox .err
- ...... 省略部分内容
- prompt_prefix = mysql
- prompt_body = [ \h ] {\u} ( \d ) >
- force =
- no_ver_after_name = 1
- verbose =
- load_grants = 1
- no_load_grants =
- no_run =
- no_show =
- keep_uuid =
- history_dir =
- do you agree ? ( [Y ] ,n ) Y
/root/sandboxes/msb_5_7_17搭建主从
,其他的可以从文件名知道具体用途。这里介绍两个命令 test_replication和 check_slaves 两个命令功能类似,都是检查slave 的状态信息。 按照之前要部署虚拟机安装MySQL的时间和精力来看,使用sandbox的感觉就是一个字- 官方文档