MySQL5.7主从同步、读写分离

MySQL5.7主从同步、读写分离

安装MySQL5.7

下载rpm包

wget https://cdn.mysql.com/archives/mysql-5.7/mysql-community-client-5.7.32-1.el7.x86_64.rpm
wget https://cdn.mysql.com/archives/mysql-5.7/mysql-community-common-5.7.32-1.el7.x86_64.rpm
wget https://cdn.mysql.com/archives/mysql-5.7/mysql-community-libs-5.7.32-1.el7.x86_64.rpm
wget https://cdn.mysql.com/archives/mysql-5.7/mysql-community-libs-compat-5.7.32-1.el7.x86_64.rpm
wget https://cdn.mysql.com/archives/mysql-5.7/mysql-community-server-5.7.32-1.el7.x86_64.rpm
MySQL5.7主从同步、读写分离

安装

yum install -y mysql-community-*-5.7.32-1.el7.x86_64.rpm
MySQL5.7主从同步、读写分离

启动mysql查看密码

cat /var/log/mysqld.log | grep password
MySQL5.7主从同步、读写分离

登录mysql

mysql -u root -p
MySQL5.7主从同步、读写分离

主从同步

关闭每台服务器的防火墙和selinux

systemctl disable --now firewalld
setenforce 0
MySQL5.7主从同步、读写分离

主从服务器时间同步

主服务器使用本地时钟源

yum -y install ntp
MySQL5.7主从同步、读写分离
修改配置文件
vi /etc/ntp.conf
server 127.127.136.0
fudge 127.127.136.0 stratum 8
MySQL5.7主从同步、读写分离
开启ntpd
systemctl start ntpd
MySQL5.7主从同步、读写分离

从服务器同步主服务器时间

安装ntp工具
MySQL5.7主从同步、读写分离
启动ntp和主服务器进行时间同步
MySQL5.7主从同步、读写分离

主服务器mysql配置

修改配置文件

vi /etc/my.conf
MySQL5.7主从同步、读写分离
server_id = 11
log_bin=master_bin
log_slave_updates=true

重启mysql

MySQL5.7主从同步、读写分离

给从服务器权限

grant replication slave on *.* to 'myslave'@'43.248.136.%' identified by '1234'; 
MySQL5.7主从同步、读写分离

如果出现以下错误

MySQL5.7主从同步、读写分离

用 alter user修改密码

MySQL5.7主从同步、读写分离

密码政策出错

set global validate_password_length=4;
set global validate_password_policy=0;
alter user root@localhost identified by '1234';
MySQL5.7主从同步、读写分离

查看日志位置

MySQL5.7主从同步、读写分离

配置从服务器并重启

vi /etc/my.conf
server-id = 2
relay-log=relay-log-bin
relay-log-index=slave-relay-bin.index
MySQL5.7主从同步、读写分离
MySQL5.7主从同步、读写分离

登录mysql配置主从同步

MySQL5.7主从同步、读写分离
change master to master_host='43.248.136.97',master_user='myslave',master_password='1234',master_log_file='master-bin.000001',master_log_pos=154;
start slave;
show slave status\G;
MySQL5.7主从同步、读写分离
MySQL5.7主从同步、读写分离

测试

create datebase anyu;
show databases;
MySQL5.7主从同步、读写分离

读写分离

关闭防火墙

systemctl stop firewalld
setenforce 0
MySQL5.7主从同步、读写分离

Amoeba服务器环境安装

安装jdk

1、查看yum库中有哪些版本

yum search java|grep jdk
MySQL5.7主从同步、读写分离

2、选择指定版本安装,yum源安装的是OpenJDK

yum install java-1.8.0-openjdk*
MySQL5.7主从同步、读写分离

3、安装完成后查看版本

java -version
MySQL5.7主从同步、读写分离

修改配置文件

cd /usr/lib/jvm
MySQL5.7主从同步、读写分离
vi /etc/profile
MySQL5.7主从同步、读写分离

安装amoeba

创建amoeba文件夹,使用rz命令从本地放入系统,解压文件

tar -zxf amoeba-mysql-binary-2.2.0.tar.gz
MySQL5.7主从同步、读写分离

设置文件夹权限

chmod -R 755 amoba/
MySQL5.7主从同步、读写分离

如果这种报错

MySQL5.7主从同步、读写分离
 vi /usr/local/amoeba/bin/amoeba
MySQL5.7主从同步、读写分离

配置Amoeba读写分离

Mysql服务器添加权限和用户开放给amoeba

grant all on *.* to ‘anyu’@'43.248.136.%' identified by '123.com';
MySQL5.7主从同步、读写分离

配置amoeba服务器文件

vi conf/amoeba.xml
MySQL5.7主从同步、读写分离
MySQL5.7主从同步、读写分离
vi conf/dbServers.xml
MySQL5.7主从同步、读写分离
MySQL5.7主从同步、读写分离

启动amoeba

/usr/local/amoeba/bin/amoeba
MySQL5.7主从同步、读写分离

查看服务是否成功,监听端口为8066为成功启动

netstat -anpt | grep java
MySQL5.7主从同步、读写分离

文章来源:https://www.cnaaa.net,转载请注明出处:https://www.cnaaa.net/archives/5563

(1)
郭靖的头像郭靖
上一篇 2022年7月29日 下午2:35
下一篇 2022年8月2日 下午2:55

相关推荐

  • 使用cloud-init新建虚拟机后重启系统网络IP地址丢失

    cloud-init 是 Linux 平台的⼀个开源⼯具,可以为云平台的 Linux 虚拟机完成⼀系列系统初始化配置。作为⼀个⾮常驻服务,开机启动时执⾏后⽴即退出,不会监听任何端⼝。 环境 问题 解决方案 如果在firstboot部分之后不使用cloud init服务,解决此问题的方法是禁用并停止cloud init服务。在第一个引导步骤之后,禁用cloud…

    2023年2月2日
    2.2K00
  • nginx使用htpasswd实现站点账密登录

    一:介绍 在Web应用程序的开发中,安全性是一项至关重要的任务。当用户需要访问敏感信息或执行特定操作时,需要使用账号和密码进行身份验证,htpasswd是Apache HTTP服务器下的一款用于HTTP用户basic认证工具,可用来建立和更新存储用户名、密码,同时生产用于 http 基本认证的工具 二:htpasswd安装 三:htpasswd配置密码 该命…

    2024年6月3日
    1.3K00
  • Docker常用命令

    列出所有容器ID 查看所有运行或者不运行容器 停止所有的container(容器),这样才能够删除其中的images: 如果想要删除所有container(容器)的话再加一个指令: 查看当前有些什么images 删除images(镜像),通过image的id来指定删除谁 想要删除untagged images,也就是那些id为的image的话可以用 要删除全…

    2022年11月19日
    1.2K00
  • linux双向重定向之tee命令

    tee的作用是将一份标准输入多重定向,一份重定向到标准输出/dev/stdout,然后还将标准输入重定向到每个文件FILE中。 在执行Linux命令时,我们可以把输出重定向到文件中,比如 ls >rumenz.txt,这时不能看到输出了,如果我们既想把输出保存到文件中,又想在屏幕上看到输出内容,就可以使用tee命令了. tee流程示意图 命令语法 > tee…

    2023年9月20日
    1.1K00
  • Route命令详解

    route命令用来显示并设置Linux内核中的网络路由表,route命令设置的路由主要是静态路由。要实现两个不同的子网之间的通信,需要一台连接两个网络的路由器,或者同时位于两个网络的网关来实现。 在Linux系统中设置路由通常是为了解决以下问题:该Linux系统在一个局域网中,局域网中有一个网关,能够让机器访问Internet,那么就需要将这台机器的ip地址…

    2023年4月7日
    1.3K00

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

在线咨询: QQ交谈

邮件:712342017@qq.com

工作时间:周一至周五,8:30-17:30,节假日休息

关注微信