`
Tzhennan
  • 浏览: 58154 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

mysql 主从同步

 
阅读更多

主(master_mysql): 172.17.0.2

从(slave_mysql):  172.17.0.3

 

#主库配置

$ vim /etc/my.cnf

server-id=1  #设置主服务器的ID

sync_binlog=1  #开启binlog日志同步功能

log-bin=mysql-bin  #binlog日志文件名

binlog-do-db=task  #只同步task库(如果没有此项,表示同步所有的库)

 

#配置完后,重启主库的mysql

$ systemctl restart mysqld.service

 

#登录mysql

$ mysql -u root -p

Enter password:

#授权给从数据库服务器172.17.0.3,用户名forslave,密码123456

mysql> grant replication slave on *.* to forslave@172.17.0.3 identified by '123456';

Query OK, 0 rows affected, 1 warning (0.00 sec)

#查看主库的状态 File,Position 这两个值很有用,要放到slave配置中

mysql> show master status;

+----------------------+----------+--------------+------------------+-------------------+

| File                 | Position | Binlog_Do_DB | Binlog_Ignore_DB | Executed_Gtid_Set |

+----------------------+----------+--------------+------------------+-------------------+

| mysql-bin.000001 |      602 | task         |                  |                   |

+----------------------+----------+--------------+------------------+-------------------+

1 row in set (0.00 sec)

 

 

#配置从库服务器

$ vim /etc/my.cnf

server-id=2

sync_binlog=1

log-bin=mysql-bin

 

#配置完后,重启从库的mysql

$ systemctl restart mysqld.service

 

#登录mysql

$ mysql -u root -p

Enter password:

mysql> change master to master_host='172.17.0.2', master_user='forslave',master_password='123456', master_log_file='mysql-bin.000001',master_log_pos=602;

Query OK, 0 rows affected, 2 warnings (0.01 sec)

#开启从库(stop slave:关闭从库)

mysql> start slave;

Query OK, 0 rows affected (0.00 sec)

#Slave_IO_Running,Slave_SQL_Running 都为Yes的时候表示配置成功

mysql> show slave status \G;

*************************** 1. row ***************************

               Slave_IO_State: Waiting for master to send event

                  Master_Host: 172.17.0.2

                  Master_User: forslave

                  Master_Port: 3306

                Connect_Retry: 60

              Master_Log_File: mysql-bin.000001

          Read_Master_Log_Pos: 602

               Relay_Log_File: b9139c7ecf61-relay-bin.000001

                Relay_Log_Pos: 324

        Relay_Master_Log_File: mysql-bin.000001

             Slave_IO_Running: Yes

            Slave_SQL_Running: Yes

              Replicate_Do_DB:

..............................

 

#验证主从

进入主数据库服务器,在task中某张表中插入一条数据,然后到从数据库服务器中查看是否含有刚刚插入的数据。

 

 

问题1:

Last_IO_Error: Fatal error: The slave I/O thread stops because master and slave have equal MySQL server UUIDs; these UUIDs must be different for replication to work.

解决:

主从数据目录(/var/lib/mysql/auto.cnf)都有一个auto.cnf文件,里面记录的server-uuid不能相同,把从服务器的此文件删除,并重启服务器

产生以上错误的原因是我的环境是基于docker,同一个镜像启动了两个容器,导致两个容器内的mysql配置完全相同。

分享到:
评论

相关推荐

    MySQL主从同步配置过程.docx

    MySQL 主从同步配置过程 一、 MySQL 主从同步配置概述 MySQL 主从同步配置是指将 MySQL 数据库的数据从一台服务器(主服务器)同步到另一台服务器(从服务器)的过程。这种配置可以实现数据的高可用性和灾难恢复,...

    mysql主从同步解决方案及优化

    淘宝资深工程师丁奇在2009年的分享中详细介绍了MySQL主从同步的原理、配置、优化以及在实际应用中遇到的问题和解决方案。 首先,MySQL主从同步的基本概念指的是在一个数据库实例(主库)上对数据进行修改操作后,...

    12.1: MySQL主从同步 、 主从同步模式 、 总结和答疑.docx

    MySQL主从同步配置和实现 MySQL主从同步是指将一个MySQL服务器的数据实时地复制到另一个或多个服务器上,以实现数据的高可用性和灾难恢复。这种方式可以实现数据的热备援、读写分离、负载均衡等功能。 1. 案例 1:...

    Linux配置mysql主从同步

    ### Linux下MySQL主从同步配置详解 #### 一、引言 在数据库管理领域,MySQL主从同步是一种常见的数据复制技术,它可以帮助我们构建高可用性和数据冗余性,从而提高系统的稳定性和可靠性。本文将详细介绍如何在Linux...

    Linux-Mysql主从同步配置

    Linux-Mysql 主从同步配置 本文将详细解释 Linux-Mysql 主从同步配置的步骤和知识点。 一、主服务器配置 1. 编辑数据库配置文件 my.cnf, 一般在/etc/目录下。 2. 在[mysqld]下面加入以下代码: * log-bin=mysql...

    mysql主从同步搭建修改优化版.pdf

    MySQL主从同步是一种常见的数据库高可用性和数据冗余策略,它允许数据在多个服务器之间实时复制,确保即使在一台服务器故障时,数据仍然可以被访问。以下是对搭建、修改和优化MySQL主从同步过程的详细解释: 1. **...

    windows下mysql主从同步备份步骤

    在Windows环境下,MySQL主从同步备份是一种常见的高可用性和数据冗余策略,确保数据的安全性和一致性。以下是详细步骤,适用于MySQL 5.0版本: 1. **创建备份账户**: 在主服务器A上,我们需要创建一个用于复制的...

    mysql主从同步+MyCat读写分离+分库分表+Haproxy高可用+Keepalived心跳机制+虚拟IP.rar

    MySQL主从同步是一种数据库复制技术,它允许一个MySQL服务器(主服务器)的数据被实时地复制到其他服务器(从服务器)上。这种同步可以确保数据的一致性,并在主服务器出现问题时提供故障转移的能力。实现主从同步的...

    Mysql主从同步备份策略

    Mysql主从同步备份策略 五月 18th, 2009 at 17:30 - 3,803 views 环境: 主从服务器上的MySQL数据库版本同为5.1.34 主机IP:192.168.0.1 从机IP:192.168.0.2 一. MySQL主服务器配置 1.编辑配置文件/etc/my.cnf # ...

    mysql主从同步检查脚本

    mysql主从同步检查脚本 。主要运用于日常maysql运行主从同步状态检查。

    MySql主从同步监控程序源码

    MySQL主从同步是数据库高可用性和数据一致性的关键机制,特别是在大型分布式系统中。这个名为"MySql主从同步监控程序源码"的项目是用C#语言开发的,旨在帮助管理员实时监控MySQL数据库的主从复制状态,确保数据在...

    mysql主从同步和一台服务器两个mysql

    MySQL 主从同步和一台服务器两个 MySQL MySQL 主从同步是指将一个 MySQL 服务器的数据实时地复制到另一个 MySQL 服务器上,以提高数据库的高可用性和灾难恢复能力。在本文中,我们将详细介绍如何在一台服务器上配置...

    mysql主从同步配置

    MySQL主从同步是一种数据库复制技术,它允许数据从一个MySQL服务器(称为“主服务器”)实时复制到另一个或多个服务器(称为“从服务器”)。这种配置对于数据备份、负载均衡和高可用性至关重要。在Java开发中,了解...

    mysql主从同步及canal配置详解.docx

    MySQL 主从同步及 Canal 配置详解 MySQL 主从同步是指将一个 MySQL 服务器的数据实时同步到另一个 MySQL 服务器上,以保证数据的一致性和高可用性。该技术主要基于 binlog 技术,下面将详细介绍 MySQL 主从同步的...

    Debian系统下MySQL主从同步复制

    ### Debian系统下MySQL主从同步复制 在Debian系统中实现MySQL主从同步复制是一种常见的数据库高可用性和负载均衡策略。这种技术可以确保数据的安全性并提高系统的整体性能。接下来,我们将详细介绍如何在Debian环境...

    MySQL主从同步和主主同步详细过程

    超详细MySQL主从配置和主主同步总结。。。。。。。。。

    dble配置mysql主从同步

    dble配置mysql主从同步

Global site tag (gtag.js) - Google Analytics