1.mycat安装路径
Mycat1.6Mycat1.6数据库分库分表中间件http://www.mycat.org.cn/mycat1.html
2.我们先把他拉倒opt目录下
3. 开始解压
tar -zxvf Mycat-server-1.6-RELEASE-20161028204710-linux.tar.gz
解压完成之后
4.解压完成之后cp到usr/local目录下
cp -r mycat /usr/local
5. 查看是否粘贴到usr/local目录下
ls /usr/local
6.切换到usr/local/mycat目录下
cd /usr/local/mycat/
7.进到 mycat里面的conf目录下
cd conf
里面有三个重要的配置文件
8.将server.xml文件替换成已下内容
0
0
2
0
0
1
1m
1k
0
384m
true
123456
TESTDB
user
TESTDB
true
server.xml有mycat的用户名跟密码
9.将schema.xml文件修改成一下内容(记得认真看文件里面的注释哦)
(文件所在位置
)
select user()
database="testdb" 128跟133两个连接都需要testdb(数据库名) 可以使用你自己的
10 修改完两个配置文件之后验证数据库的访问情况
远程测试访问
(1)先测试133
mysql -u账号 -p密码 -h 远程访问 IP地址 -大写P 端口号
mysql -uroot -proot -h 192.168.138.133 -P 3306
以上是没有问题 exit 退出
(2) 测试128
mysql -u账号 -p密码 -h 远程访问 IP地址 -大写P 端口号
mysql -uroot -proot -h 192.168.138.128 -P 3306
完成之后 exit退出即可
验证远程没问题
11.启动程序
进到 mycat的bin目录下
我们选择控制台启动,因为控制台启动可以看到输出日志,对我们解决问题很方便
./mycat console
12.登陆Mycat(两种登陆方式,我们使用第二中方式登陆)
(1)登陆后台管理窗口
用于咱运维人员维护mycat用的 可以看到mycat的数据(不使用此方法登陆)
(2)登陆数据窗口 (使用此方法登陆)
次登陆方式用于通过mycat查询数据
格式: mysql -umycat账号 -p密码 -h ip地址 -P 8066
mysql -umycat -p123456 -h 192.168.138.128 -P 8066
查看数据库
(命令后面的分号是必须要)
show databases;
进入数据库(区分大小写)
use TESTDB
查看数据库的表
(命令后面的分号是必须要)
以上mycat安装完成,我们需要搭建mycat的主从赋值
1 . 修改主机配置文件(我使用的主机是安装mycat的): vim /etc/my.cnf
[mysqld] 主服务器唯一ID server-id=1 启动二进制日志 log-bin=mysql-bin 设置不要复制的数据库(可设置多个) binlog-ignore-db=mysql 设置需要复制的数据库 binlog-do-db=需要复制的主数据库名字 设置logbin格式 binlog_format=STATEMENT |
[mysqld] server-id=1 log-bin=mysql-bin binlog-ignore-db=mysql binlog-do-db=testdb binlog_format=STATEMENT |
schema.xml在usr/local/mycat/conf目录下
改完之后wq保存退出
2 .修改从机配置文件:vim /etc/my.cnf
[mysqld] 从服务器唯一ID server-id=2 启动中继日志 relay-log=mysql-relay |
[mysqld] server-id=2 relay-log=mysql-relay |
修改完保存退出即可;
3 .主机从机重启mysql
我们修改完配置文件,还没有生效,我们需要重启一下mysql(主机跟从机都需要重启)
systemctl restart mysqld
查看mysql状态
4 .主机从机关闭防火墙
(1)先查询是否关闭防火墙
systemctl status firewalld
关闭状态
(2)如果没有关闭,关闭一下
systemctl stop firewalld
5. 在主机上建立账号并授权slave
在主机mysql里面执行授权命令 (1) 先进入mysql 格式 : mysql -u数据库账号 -p数据库密码 mysql -uroot -proot (2)进行授权 GRANT REPLICATION SLAVE ON *.* TO 'slave'@'%' IDENTIFIED BY '密码';(分号必须要) GRANT REPLICATION SLAVE ON *.* TO 'slave'@'%' IDENTIFIED BY 'root'; 下面是成功:
|
查询master的状态(后面的;号必须加) show master status;
|
6 . 在从机上配置需要复制的主机
以上主从已经配置完成!下面让我们来测试一下
在主机测试
(1)登陆mysql(登陆过了就不用登陆) mysql -u数据库名 -p数据库密码 (2)切换数据库 use testdb (3)填写建表 create table mytbl(id int,name varchar(20)); (4) 添加字段 insert into mytbl values(1,'zhang3'); (5)查询 select * from mytbl;
|
到从机测试:
(1)登陆mysql(登陆过了就不用登陆) mysql -u数据库名 -p数据库密码 (2)切换数据库 use testdb (3)查询 select * from mytbl;
|
主从已经没有问题了!
下面这张图片可以重新配置主从
上面我们已经在schema.xml配置好了读写分离
balance=“1” 开启读写分离
搭建完毕!
请耐心搭建,一步错,步步错