sandbox的安装可以使用github的方式,也可以使用cpan安装。
推荐使用cpan这种一键安装的。
# 安装mysqlsanbox
1
<code>yum </code><code>install</code> <code>cpan perl-YAML perl-Test-Simple -ycpan MySQL::Sandboxecho </code><code>'export SANDBOX_AS_ROOT=1'</code> <code>>> </code><code>/root/</code><code>.bashrc </code><code>source</code> <code>/root/</code><code>.bashrc</code>
将准备好的几个常用mysql通用二进制包放到/opt/目录下。如下:
<code>[root@percona57 </code><code>/opt</code> <code>]</code><code># lltotal 1035444-rw-r--r-- 1 root root 640650826 2017-07-27 20:53 mysql-5.7.19-linux-glibc2.12-x86_64.tar.gz-rw-r--r-- 1 root root 419634124 2017-07-27 20:53 mariadb-10.3.0-linux-x86_64.tar.gz</code>
创建一个10.3.0版本的mariadb实例
<code>make_sandbox single mariadb-10.3.0-linux-x86_64.</code><code>tar</code><code>.gz</code>
然后,输入Y表示同意上面的配置参数。
稍等20s后,就会自动在/root/sandboxes目录下生成一个类似msb_10_3_0的目录
默认是监听在127.0.0.1的地址的。如果我们要改成监听在外部地址的话,
cd /root/sandboxes/msb_10_3_0 (这个目录下有很多脚本,可以自己看下里面内容就知道如何用了)
vim /root/sandboxes/msb_10_3_0/my.sandbox.cnf 注释掉listen那行代码,
然后执行./restart 即可。
./use 即可登录mysql
./mycli 就可以用mycli来登录(CentOS6需要自己编译安装python27才能正常使用mycli)
创建一套GTID复制的5.7.19主从实例
2
<code>cd</code> <code>/opt/</code> <code>### 需要先切换到mysql源码包那个路径下才行</code>
<code>make_replication_sandbox --gtid --how_many_slaves=1 5.7.19 创建一套GTID复制的5.7.19主从实例</code>
稍等20s,即可启动1套主从mysql5.7.19的环境。
ss -lntp|grep mysql 即可验证。
如何使用上面创建的GTID主从机器:
3
<code>cd</code> <code>/root/sandboxes</code>
<code>cd</code> <code>rsandbox_5_7_19</code>
<code>[root@percona57 </code><code>/root/sandboxes/rsandbox_5_7_19</code> <code>]</code><code># ./test_replication 检查主从复制状态</code>
# Master log: mysql-bin.000001 - Position: 11309 - Rows: 20
# Testing slave #1
ok - Slave #1 acknowledged reception of transactions from master
ok - Slave #1 IO thread is running
ok - Slave #1 SQL thread is running
ok - Table t1 found on slave #1
ok - Table t1 has 20 rows on #1
# TESTS : 5
# FAILED: 0 ( 0.0%)
# PASSED: 5 (100.0%)
# exit code: 0
这个目录下,m和n1都是连接主库的连接脚本。 s1和n2都是连接从库的脚本。
#####################################
如果需要一次性建立好几个相同的实例且不需要有复制关系,可以使用下面的命令
<code>cd</code> <code>/opt/</code>
<code>make_multiple_sandbox --how_many_nodes=3 mariadb-10.3.0-linux-x86_64.</code><code>tar</code><code>.gz </code><code># 默认一次性建立3个实例</code>
#####还有些常用的命令,都是些简单的shell脚本,打开看下就知道啥意思了。就不解释了。
本文转自 lirulei90 51CTO博客,原文链接:http://blog.51cto.com/lee90/1951579,如需转载请自行联系原作者