linux CentOS7 搭建ntp服务器,并且搭建mariadb主从复制服务器,实现读写分离

目录

一、概括

二、操作步骤

新建3台虚拟机,1台做主服务器,2台做从服务器,实现主从复制

主服务器搭建ntp,从服务器在服务器对时

搭建master主服务器

搭建slave与slave1从服务器

新建一台虚拟机,搭建amoeba,做读写分离

安装jdk1.6

 配置环境变量

安装amoeba

配置amoeba

开一台虚拟机做客户机验证

总结


一、概括

搭建ntp服务器,然后搭建一台mariadb主2台mariadb从复制服务器,并且安装amoeba实现读写分离

二、操作步骤

新建3台虚拟机,1台做主服务器,2台做从服务器,实现主从复制

主服务器搭建ntp,从服务器在服务器对时

安装ntp

yum  install ntp -y

 配置ntp 文件目录/etc/ntp.conf

server 127.127.1.0 #定义时间服务器
fudge 127.127.1.0 stratum 8 #定义时间层次

 启动ntp服务

systemctl start ntpd

 

 从服务器对时

netdate 192.168.115.128

搭建master主服务器

在主服务器/etc/my.cnf如下添加配置

server-id=11
log-bin=master-bin
log-slave-updates=true

 修改完重启服务

systemctl restart mariadb

 登录数据库

 配置可用与访问的用户,并且刷新

grant replication slave on *.* to 'slave'@'192.168.115.%' identified by '123.com';

flush privileges;

 查看master的日志信息

show master status;

搭建slave与slave1从服务器

修改slave主配置文件 路径/etc/my.cnf

server-id=22
relay-log=slave-bin
relay-log-index=slave-bin.index

 运行mariadb服务,并且指定master服务器

change master to master_host='192.168.115.128',master_user='slave',master_password='123.com',master_log_file='master-bin.000002',master_log_pos=476;

 开启slave,并且查看状态

slave start; #开启slave

show slave status\G; 查看状态

 下面框里面的值等于‘yes’表示开启成功

 验证主从复制,主库新建cs库,看看从服务器是否同步过来

 master主库新建了个cs库

看看slave库有没有同步过去

再创建slave1从服务器,与上边slave操作一致

 测试

新建一台虚拟机,搭建amoeba,做读写分离

首先在master定义amoeba能够访问Mariadb的用户

grant all on *.* to 'test'@'192.168.115.%' identified by '123.com';

 下载jdk安装包,与amoeba安装包,这边由于提前下载好了,直接解包 

 上图可以看出jdk没有执行权限,先赋予他执行权限

chmod +x jdk-6u14-linux-64.bin 

安装jdk1.6

./jdk-6u14-linux-64.bin

 按回车到这,输入yes

 出现done说明安装完成 

 可以看出root用户下面多出来一个jdk1.6.0_14,把他移动到/usr/local/jdk1.6下

 mv jdk1.6.0_14/ /usr/local/jdk1.6

 配置环境变量

在/etc/profile配置环境变量

 JAVA_HOME=/usr/local/jdk1.6
CLASSPATH=$CLASSPATH:$JVA_HOME/lib:$JAVA_HOME/jre/lib
AMOEBA_HOME=/usr/local/amoeba
PATH=$PATH$JAVA_HOME/bin:$JAVA_HOME/jre/bin:$AMOEBA_HOME/bin
export JAVA_HOME CLASSPATH PATH AMOEBA_HOME PATH

 刷新,并且查看

source /etc/profile

echo $PATH

 Java -version可以看出不是我们刚刚装的1.6版本,这边我们做个更改

 删除/usr/bin/java 吧刚才的1.6中的bin/java 创建个软连接过去

 ln -s /usr/local/jdk1.6/bin/java /usr/bin

 可以看到我们的版本已经变成1.6了

安装amoeba

指定解压

tar xf amoeba-mysql-binary-2.2.0.tar.gz -C /usr/local/amoeba

配置amoeba

配置/usr/local/amoeba/conf/dbservers.xml #链接服务器的配置

 配置/usr/local/amoeba/conf/amoeba.xml #链接客户端的配置

 

 启动amoeba

 可以看到8066端口起来了

开一台虚拟机做客户机验证

mysql  -P8066 -h192.168.115.155 -uamoeba -p123.com #我们amoeba虚拟机ip是155

 登录正常

 可以正常写入,查看 

现在我们停掉一台从,在做测试,可以看到如下图,停掉的从看不到我们写入的数据,没有停掉的可以看到写入的数据

 

总结

提示:这里对文章进行总结:

如果slave start出现初始化失败时,先看看网路是否通信,从/var/lib/mysql下找到相关文件删除掉,重新指定一下主服务器

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值