构建读写分离的数据库集群

三台虚拟机,两台虚拟机搭建主从数据库,一台做客户端。

参考搭建主从数据库1~3和第五步步骤。

修改主机名 主:db1  从:db2  客户端为:mycat

该三台虚拟机进行域名解析:

vi /etc/hosts

192.168.150.100   db1

192.168.150.110   db2

192.168.150.120   mycat

给两台节点配置yum源(vi /etc/yum.repos.d/local.repo   内容如下:

[centos]

name=centos

baseurl=file:///opt/centos

gpgcheck=0

enabled=1

[yum]

name=yum

baseurl=file:///opt/gpmall-repo

gpgcheck=0

enabled=1

清除缓存:yum clean all

yum repolist

 db1,,db2..两个个节点安装mariadb服务并重启服务:

yum install mariadb-server –y

Systemctl restart mariadb

mycat节点安装辅助包:yum install bash-completion  -y

   安装java软件包:yum  install  java

       Yum install java-1.8.0-openjdk  java-1.8.0-openjdk-devel.x86_64  -y

      Java -version

修改db1节点配置文件:vi /etc/my.cnf

      [mysql]

server_id=100

log_bin=mysql-bin

binlog-ignore-db=keystone

修改db2节点配置文件:vi /etc/my.cnf

      [mysql]

server_id=110

log_bin=mysql-bin

binlog-ignore-db=keystone

重新启动服务:systemctl  restart  mariadb

 

 两节点都操作:mysql_secure_installation(一直点y,密码为000000)安装数据库

这里是:n  意思是:

db1:  mysql  -uroot  -p000000

     进入数据库

create  user  ‘zhao’@’%’ identified  by  ‘000000’;

grant  replication  slave  on  *.*  to  ‘zhao’@’%’ ;

show master status

 

db2:  mysql  -uroot  -p000000

change master to master_host=’192.168.150.100’,master_user=’zhao’,master_password=’000000’,master_log_fire=’mysql-bin.000002’,master_log_pos=659; 

 

start slave;

 

查询结果

show slave status\G;

 

Mycat节点:查询java版本  :Java  -version

解压软件包:tar  -zxvf  Mycat-server-1.6-RELEASE-20161028204710-linux.tar.gz  -c  /usr/local/

Cd /usr/local/

Ls

Chown  777  /usr/local/mycat/

Ll

Chown  root  /usr/local/mycat/

Chomd  777 mycat/

Chomd  777  mycat/  -R

Ll

 

Cd conf/

Ls

 

 

修改第一个配置文件:vi /schema.xml(/usr/local/mycat/conf/schema.xml)

     Name=’testdb’改为userdb

     Database=’db$0-743’改为test

     Writehost  host=’hostM1’ url=’loalhost:3306’  user=’root’改为Writehost  host=’hostM1’ url=’192.168..150.100:3306’  user=’root’

      Readhost那个url=;192.168.150.110:3306    password=’123456’

(修改schema.xml的用户权限:chown root:root/usr/local/conf/schema.xml)

 

 

第二个:vi server.xml

删除最后四行

改为userdb

/bin/bash /usr/local/mycat/bin/mycat  start

Yum install net

Yum install net-tools.x86_64  -y

Netstat  -ntlp

有8066和9066两个端口

 

验证读写分离

在mycat虚拟机上安装maeiaDB-client服务

   Yum intall –y MariaDB-client

Mysql –uroot –p000000

 Show database;

 Use USERDB;

  Show tables;

Select *from company;

(2). 在MYcat虚拟机上使用sql命令对表company添加一条数据(2,“basketall”,”usa”),添加完毕后添加表信息

   insert into company values(2,”bastetball”,”usa”);

select * from company;

  验证mycat服务对数据库读写操作分离,使用MySQL命令通过9066端口查询对数据库读写操作的分离信息

   Mysql –h (mycat ip) –P9066 –uroot –p123456 –e ‘show  @@datasource;’

 

 

授权在任何客户端机器上可以以root用户登录数据库

Grant all privileges  on *.* to root@’%’ identified by “123456”

创建一个user用户让从节点db2连接并赋予从节点同步主节点数据库的权限

   Grant replication slave  on *.* to ‘user’@’db2’identified  by ‘123456’

 

 

 

发布了18 篇原创文章 · 获赞 0 · 访问量 455

猜你喜欢

转载自blog.csdn.net/weixin_45678149/article/details/104602359