mysql Sandbox 快速部署mysql环境
什么是mysql sandbox?mysql sandbox 是一个用per语言写的一套mysql部署工具
http://sourceforge.net/projects/mysql-sandbox/
通过mysql sandbix可以快速部署多种mysql使用环境包括:
单实例mysql
多实例mysql
单机mysql replication环境
mysqlsandbox主要用于测试环境的快速搭
安装流程:
下载mysql snadbox 安装包, 并编译,安装。
创建一个系统普通用户
下载mysql预编译二进制包版本压缩包
根据需要,使用mysql sandbox 命令快速部署mysql 环境
as root install
tar xvf MySQL-Sandbox-3.0.43.tar -C/usr/local/
cd /usr/local/MySQL-Sandbox-3.0.43
perl Makefile.PL
make
make test
make install
# cd /home/
# ls
# useradd tube
#> uid=500(tube) gid=501(tube) groups=501(tube)
# cp /root/mysql-5.6.17-linux-glibc2.5-x86_64.tar.gztube/
# cd tube/
# chown tube. mysql-5.6.17-linux-glibc2.5-x86_64.tar.gz
# ll
total 297952
-rw-r--r--. 1 tube tube 305102088 Jan 21 04:17 mysql-5.6.17-linux-glibc2.5-x86_64.tar.gz
#
# su - tube
$ make_
make_multiple_custom_sandboxmake_replication_sandbox make_sandbox_from_installed
make_multiple_sandbox make_sandbox make_sandbox_from_source
$ make_multiple_sandbox mysql-5.6.17-linux-glibc2.5-x86_64.tar.gz --默认是三个节点,3个实例
installing node 1
installing node 2
installing node 3
group directory installed in $HOME/sandboxes/multi_msb_mysql-5_6_17
之后会自动启动
$ ps -ef | grep mysql
tube 12071 10 04:23 pts/3 00:00:00 /bin/sh /home/tube/5.6.17/bin/mysqld_safe --defaults-file=/home/tube/sandboxes/multi_msb_mysql-
5_6_17/node1/my.sandbox.cnf
tube 12276 120710 04:23 pts/3 00:00:01 /home/tube/5.6.17/bin/mysqld --defaults-file=/home/tube/sandboxes/multi_msb_mysql-
5_6_17/node1/my.sandbox.cnf --basedir=/home/tube/5.6.17 --datadir=/home/tube/sandboxes/multi_msb_mysql-5_6_17/node1/data --plugin-
dir=/home/tube/5.6.17/lib/plugin --log-error=/home/tube/sandboxes/multi_msb_mysql-5_6_17/node1/data/msandbox.err --pid-
file=/home/tube/sandboxes/multi_msb_mysql-5_6_17/node1/data/mysql_sandbox14318.pid --socket=/tmp/mysql_sandbox14318.sock --port=14318
tube 12369 10 04:23 pts/3 00:00:00 /bin/sh /home/tube/5.6.17/bin/mysqld_safe --defaults-file=/home/tube/sandboxes/multi_msb_mysql-
5_6_17/node2/my.sandbox.cnf
tube 12574 123690 04:23 pts/3 00:00:01 /home/tube/5.6.17/bin/mysqld --defaults-file=/home/tube/sandboxes/multi_msb_mysql-
5_6_17/node2/my.sandbox.cnf --basedir=/home/tube/5.6.17 --datadir=/home/tube/sandboxes/multi_msb_mysql-5_6_17/node2/data --plugin-
dir=/home/tube/5.6.17/lib/plugin --log-error=/home/tube/sandboxes/multi_msb_mysql-5_6_17/node2/data/msandbox.err --pid-
file=/home/tube/sandboxes/multi_msb_mysql-5_6_17/node2/data/mysql_sandbox14319.pid --socket=/tmp/mysql_sandbox14319.sock --port=14319
tube 12666 10 04:24 pts/3 00:00:00 /bin/sh /home/tube/5.6.17/bin/mysqld_safe --defaults-file=/home/tube/sandboxes/multi_msb_mysql-
5_6_17/node3/my.sandbox.cnf
tube 12872 126660 04:24 pts/3 00:00:01 /home/tube/5.6.17/bin/mysqld --defaults-file=/home/tube/sandboxes/multi_msb_mysql-
5_6_17/node3/my.sandbox.cnf --basedir=/home/tube/5.6.17 --datadir=/home/tube/sandboxes/multi_msb_mysql-5_6_17/node3/data --plugin-
dir=/home/tube/5.6.17/lib/plugin --log-error=/home/tube/sandboxes/multi_msb_mysql-5_6_17/node3/data/msandbox.err --pid-
file=/home/tube/sandboxes/multi_msb_mysql-5_6_17/node3/data/mysql_sandbox14320.pid --socket=/tmp/mysql_sandbox14320.sock --port=14320
tube 12959 119690 04:29 pts/3 00:00:00 grep mysql
单机多实例部署完毕
如果部署replication??
$ make_replication_sandbox/home/tube/5.6.17
installing and starting master
installing slave 1
installing slave 2
starting slave 1
...... sandbox server started
starting slave 2
...... sandbox server started
initializing slave 1
initializing slave 2
replication directory installed in $HOME/sandboxes/rsandbox_5_6_17
sandbox单实例命令
start 启动服务,在数据文件目录中创建一个.pid文件。 在/tmp目录中创建一个socket文件。
stop 关闭服务,删除.pid 删除socket
clear 关闭服务,删除所有数据文件
use 启动mysql 客户端根据my_sandbox.cnf配置登陆mysql,默认用户名、密码msandbox/msandbox 。默认root密码:msandbox
sandbox 多实例命令
start_all启动所有实例
stop_all 关闭所有实例
clear_all清除所有实例
replication sandbox命令
m
登录到master
s1
登录到第一台slave
s2
登陆带第二台salve
页:
[1]