mysql主从复制安装配置

1、centos安装及准备

  1. 去centos官网下载相应source版本的镜像文件并在vmware中安装,安装中会遇到填写installation source,输入以下即可:http://mirrors.aliyun.com/centos/8-stream/BaseOS/x86_64/os/
  2. 设置主机名字:hostnamectl set-hostname xxxx,设置好后重启即可生效

2、安装mysql数据库

  1. 先在mysql官网下载相应的mysql版本,然后通过Xshell类的工具将文件上传到centos(centos下载很缓慢)

  2. 安装MySQL,参考:https://blog.csdn.net/weixin_42266606/article/details/80879571

  3. 设置字符集为utf-8:vim /etc/my.cnf

    #在[mysqld]部分添加:
    character-set-server=utf8
    #在文件末尾新增[client]段,并在[client]段添加:
    default-character-set=utf8

3、在两台数据库中分别创建数据库

--注意两台必须全部执行
create database test;

4、在主(node1)服务器进行如下配置:

#修改配置文件,执行以下命令打开mysql配置文件
vi /etc/my.cnf
#在mysqld模块中添加如下配置信息
log-bin=master-bin #二进制文件名称
binlog-format=ROW #二进制日志格式,有row、statement、mixed三种格式,row指的是把改变的内容复制过去,而不是把命令在从服务器上执行一遍,statement指的是在主服务器上执行的SQL语句,在从服务器上执行同样的语句。MySQL默认采用基于语句的复制,效率比较高。mixed指的是默认采用基于语句的复制,一旦发现基于语句的无法精确的复制时,就会采用基于行的复制。
server-id=1 #要求各个服务器的id必须不一样
binlog-do-db=msb #同步的数据库名称

5、配置从服务器登录主服务器的账号授权

-- validate_password插件安装
INSTALL PLUGIN validate_password SONAME'validate_password.so'; --授权操作
set global validate_password_policy=0;
set global validate_password_length=1;
grant replication slave on *.* to 'root'@'%' identified by '123456'; -- 对于mysql8以上的版本上面授权的语法将不再支持,需要拆分成两步:创建角色、授权
create user 'slave'@'%' identified by '123456';
grant replication slave on *.* to 'slave'@'%'; --刷新权限
flush privileges;

6、从服务器的配置

#修改配置文件,执行以下命令打开mysql配置文件
vi /etc/my.cnf
#在mysqld模块中添加如下配置信息
log-bin=master-bin #二进制文件的名称
binlog-format=ROW #二进制文件的格式
server-id=2 #服务器的id

7、重启主服务器的mysqld服务

#重启mysql服务
service mysqld restart
#登录mysql数据库
mysql -uroot -p
#查看master的状态
show master status;

8、重启从服务器并进行相关配置

#重启mysql服务
service mysqld restart
#登录mysql
mysql -uroot -p
#连接主服务器
change master to master_host='192.168.209.130',master_user='slave',master_password='123456',master_port=3306,master_log_file='master-bin.000021',master_log_pos=156;
#启动slave
start slave
#查看slave的状态
show slave status\G(注意没有分号)

9、此时可以在主服务器进行相关的数据添加删除工作,在从服务器看相关的状态

10、总结

  1. 在设置主从关联的时候出现问题一定要看:show slave status\G;中的error原因
  2. 在创建好一台主机的时候,先照快照,然后直接克隆一份创建从机,此时记得修改主机名以及mysql相关的配置
    1. mv /var/lib/mysql/auto.inf /var/lib/mysql/auto.inf.bk让拷贝过来的主机的mysql的uuid失效以便产生从机的uuid
    2. stop slave
    3. 回到centos
    4. service msqld restart
    5. 回到mysql
    6. change master to master_host='192.168.209.130',master_user='slave',master_password='123456',master_port=3306,master_log_file='master-bin.000021',master_log_pos=156;
    7. start slave
    8. show slave status
  3. 当从机出现的问题非常棘手的时候建议删掉从机,重新克隆一份主机

记一次 mysql主从复制安装配置 过程的更多相关文章

  1. mysql主从复制安装配置

    mysql主从复制安装配置 基础设置准备 #操作系统: centos6.5 #mysql版本: 5.7 #两台虚拟机: node1:192.168.182.111(主) node2:192.168.1 ...

  2. Dubbo入门到精通学习笔记(十九):MySQL源码编译安装、MySQL主从复制的配置

    文章目录 MySQL 源码编译安装(CentOS-6.6+MySQL-5.6) 一.服务器配置: 二.源码安装 MySQL5.6.26: MySQL主从复制的配置 环境 依赖课程 MySQL 主从复制 ...

  3. WAMP(Windows、Apache、MySQL、php)安装配置过程常见问题

    WAMP(Windows.Apache.MySQL.php)安装配置过程 可以参考该网友的总结(总结的不错,鼓掌!!): http://www.cnblogs.com/pharen/archive/2 ...

  4. LAMP安装配置过程

    Mysql ./configure --prefix=/usr/local/mysql (注意/configure前有“.”,是用来检测你的安装平台的目标特征的,prefix是安装路径) #make ...

  5. [mysql]brew 安装 配置 操作 mysql(中文问题)

    mac 下卸载mysqldmg mac下mysql的DMG格式安装内有安装文件,却没有卸载文件--很郁闷的事. 网上搜了一下,发现给的方法原来得手动去删. 很多文章记述要删的文件不完整,后来在stac ...

  6. 阿里云服务器 ECS 部署lamp:centos+apache+mysql+php安装配置方法 (centos7)

    阿里云服务器 ECS 部署lamp:centos+apache+mysql+php安装配置方法 (centos7) 1.效果图 1 2. 部署步骤 1 1. mysql安装附加(centos7) 7 ...

  7. Mysql主从安装配置

    Mysql主从安装配置   环境: 主从服务器上的MySQL数据库版本同为5.1.34 主机IP:192.168.0.1 从机IP:192.168.0.2  一. MySQL主服务器配置 1.编辑配置 ...

  8. MySQL主从复制的实现过程

    一.什么是主从复制 将主数据库中的DDL和DML操作通过二进制日志(BINLOG)传输到从数据库上,然后将这些日志重新执行(重做):从而使得从数据库的数据与主数据库保持一致. 二.主从复制的作用 1. ...

  9. MySQL主从复制的配置

    环境 操作系统:CentOS-6.6-x86_64-bin-DVD1.iso MySQL版本:mysql-5.6.26.tar.gz 主节点IP:192.168.1.205     主机名:edu-m ...

随机推荐

  1. Maven与Nexus3.x环境构建详解

    一.Maven介绍Apache Maven是一个创新的软件项目管理和综合工具.Maven提供了一个基于项目对象模型(POM)文件的新概念来管理项目的构建,可以从一个中心资料片管理项目构建,报告和文件. ...

  2. pyhook的简单使用

    实验内容: 通过python编程调用windows的api,编写键盘和鼠标监控的hook,将相关信息保存记录到txt文档中. 实验步骤: 1.Hook技术,pyHook3和pywin32简介 1.1  ...

  3. I ❤️ W3C : Secure Contexts

    I ️ W3C : Secure Contexts Secure Contexts W3C Candidate Recommendation, 15 September 2016 https://ww ...

  4. HTML5 download 执行条件

    HTML5 download 执行条件 同一个域名下的资源 http only 绝对路径/相对路径 都可以 demo https://cdn.xgqfrms.xyz/ https://cdn.xgqf ...

  5. how to convert Map to Object in js

    how to convert Map to Object in js Map to Object just using the ES6 ways Object.fromEntries const lo ...

  6. WebAssembly All In One

    WebAssembly All In One wasm https://webassembly.org/ https://developer.mozilla.org/en-US/docs/WebAss ...

  7. Union international inc引进微信线下支付,开启消费无现金时代

    长期以来,Union international inc娱乐集团(公司编号:20151533091)因其客户来自全球各国,特别是除了美国之外的中国用户居多,因此公司一直和中国领先的社交软件微信保持着良 ...

  8. 「NGK每日快讯」12.15日NGK公链第42期官方快讯!

  9. ext文件系统机制原理剖析

    本文转载自ext文件系统机制原理剖析 导语 将磁盘进行分区,分区是将磁盘按柱面进行物理上的划分.划分好分区后还要进行格式化,然后再挂载才能使用(不考虑其他方法).格式化分区的过程其实就是创建文件系统. ...

  10. 微信小程序:删除时提示是否删除

    代码如下: wx.showModal({ title: '提示', content: '确定要删除吗?', success: function (sm) { if (sm.confirm) { // ...