Mysql双主(主主互备)部署

本文详细介绍了如何在Centos7环境下,通过Yum安装MySQL 5.7,并设置双主互备配置。安装过程中涉及低版本MySQL卸载、安装、启动、登录及密码设置。接着,文章讲述了如何配置主从复制,包括配置文件修改和相关命令执行。最后,通过主主复制测试验证配置成功。
摘要由CSDN通过智能技术生成


一.版本

1.1 Centos7 *2

192.168.0.131 、192.168.0.132

1.2 Mysql 5.7

二. 安装

2.1 Mysql5.7安装:(yum安装,两台一样)

步骤一:检查是否有低版本的mysql,如果有卸载
在这里插入图片描述

步骤二:接下来我们在 Centos7 系统下使用 yum 命令安装 MySQL,需要注意的是 CentOS 7 版本中 MySQL数据库已从默认的程序列表中移除,所以在安装前我们需要先去官网下载 Yum 资源包,下载地址为:https://dev.mysql.com/downloads/repo/yum/
在这里插入图片描述

[root@9901388b05f6 ~]# wget https://dev.mysql.com/get/mysql57-community-release-el7-9.noarch.rpm

步骤三:安装

[root@9901388b05f6 ~]# rpm -ivh mysql57-community-release-el7-9.noarch.rpm

[root@9901388b05f6 ~]# yum install mysql-server

步骤四:启动

[root@9901388b05f6 ~]# systemctl start mysqld

步骤五: 登录
centos7 上安装mysql5.7后登录报错
错误一: 首次登录时出现 ERROR 1045 (28000): Access denied for user ‘root’@’localhost’ (using password:yes)

于是解决方法:

1,停止mysql服务

[root@9901388b05f6 ~]# systemctl stop mysqld

2,修改配置文件无密码登录

[root@9901388b05f6 ~]# vi /etc/my.cnf

在最尾部加上

skip-grant-tables

保存

3,启动mysql

[root@9901388b05f6 ~]# systemctl start mysqld

4,登录mysql

[root@9901388b05f6 ~]#  mysql -u root (此处注意不要加-p)

5, 修改密码,mysql5.7用此语法

mysql> use mysql ;


mysql> update mysql.user set authentication_string=password('123456') where user='root' ;

6.回到第二步骤去掉加上的

skip-grant-tables

保存 重启mysql就ok了

错误二: ERROR 3009 (HY000): Column count of mysql.user is wrong. Expected 45, found 43. Created with MySQL
如果出现此错误:是由于你曾经升级过数据库,升级完后没有使用
mysql_upgrade升级数据结构造成的。
解决办法:
使用mysql_upgrade命令

[root@9901388b05f6 ~]#  mysql_upgrade -u root -p 123456

执行完毕再按照错误一步骤进行一遍.

2.2 接下来设置mysql账号密码 及 外网访问权限

2.1.设置root密码

mysql> set password = password("Trio123.com");

这里写图片描述
2.2.设置远程访问权限

mysql> grant all privileges on *.* to root@'%' identified by "Trio123.com";
mysql> flush privileges;

第一句中”%”表示任何主机都可以远程登录到该服务器上访问。如果要限制只有某台机器可以访问,将其换成相应的IP即可,如:GRANT ALL PRIVILEGES ON . TO root@”172.168.193.25” IDENTIFIED BY “root”;
第二句表示从mysql数据库的grant表中重新加载权限数据。因为MySQL把权限都放在了cache中,所以在做完更改后需要重新加载。

三.双主配置

3.1 配置文件

好的,下面是一份基本的 MySQL 主主互备配置: 1. 首先,需要在两个 MySQL 服务器上安装 MySQL 软件,并确保两个服务器上的版本一致。 2. 在两个服务器上创建一个用于主主互备的新用户,并给该用户授权。 3. 配置主服务器的 my.cnf 文件,开启二进制日志功能,并设置 server-id 参数为一个唯一的值。 4. 在主服务器上创建一个用于数据复制的备份文件夹,并设置相应的权限。 5. 配置主服务器上的防火墙,允许从备服务器的 IP 地址进行连接。 6. 在备服务器上的 my.cnf 文件中,设置 server-id 参数为一个唯一的值,并开启二进制日志功能。 7. 在备服务器上创建一个用于数据复制的备份文件夹,并设置相应的权限。 8. 在两台服务器上启动 MySQL 服务,并在主服务器上创建一个新的数据库。 9. 在主服务器上创建需要复制到备服务器上的表,并在备服务器上创建相应的表。 10. 配置主服务器上的数据复制参数,包括 binlog-do-db 和 binlog-ignore-db 参数。 11. 在备服务器上配置数据复制参数,包括 replicate-do-db 和 replicate-ignore-db 参数。 12. 在主服务器上执行 CHANGE MASTER TO 命令,指定备服务器的 IP 地址、端口号、用户名、密码等信息。 13. 在备服务器上执行 START SLAVE 命令,开始数据复制。 14. 检查数据复制的状态,确保主服务器和备服务器上的数据一致。 以上是一份基本的 MySQL 主主互备的配置,具体的配置细节需要根据实际情况进行调整。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值