MySQL主从复制-双主结构
1:安装命令 2台机分别安装
yum –y install mysql-server
2:配置登陆用户的密码root
/usr/bin/mysqladmin -u root password 'root'
3:配置允许第三方机器访问本机Mysql,分别在2个机子上配置user表
3.1远程的的数据库 user表 ,其中host :% 代表所有的ip都可以连接,如果需要指定的ip连接,host:指定的ip
| host | user | password |
+------+------+-------------------------------------------+
| % | root | *81F5E21E35407D884A6CD4A731AEBFB6AF209E1B |
+------+------+-------------------------------------------+
3.2表结构改成这样后:需要刷新权限
mysql> flush privileges;
3.3 远程的机器连接测试
[root@fei ~]# mysql -u root -p -h 连接的MySQL服务器所在的电脑IP
[root@fei ~]# mysql -u root -p -h 192.168.24.25
4.配置主从机器分别配置
1) vim /etc/my.cnf
添加
[mysqld]
server-id=1 //不同的mysql服务器id要不同,比如我另一台mysql服务器server-id=2
log-bin=mysql-bin
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
user=mysql
# Disabling symbolic-links is recommended to prevent assorted security risks
symbolic-links=0
[mysqld_safe]
log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid
2)分别重新启动主从二台mysql服务
service mysqld restart
3)查看MySQL有没有变化
mysql> show VARIABLES LIKE 'server_id';
+---------------+-------+
| Variable_name | Value |
+---------------+-------+
| server_id | 1 |
+---------------+-------+
1 row in set (0.00 sec)
4)获取文件名File 192.168.163.130服务器
mysql> show master status;
+------------------+----------+--------------+------------------+
| File | Position | Binlog_Do_DB | Binlog_Ignore_DB |
+------------------+----------+--------------+------------------+
| mysql-bin.000002 | 106 | | |
+------------------+----------+--------------+------------------+
1 row in set (0.00 sec)
文件名为mysql-bin.000002,106代表日志从106行以后开始
5) 配置从服务器(可以实现主服务更新数据,从服务器也更新)
change master to
master_host='192.168.163.130',//mysql主服务器地址
master_user='root',
master_password='root',
master_log_file='mysql-bin.000002',
master_log_pos=106;
执行
在192.168.163.131从服务器执行
mysql> change master to
-> master_host='192.168.163.130',
-> master_user='root',
-> master_password='root',
-> master_log_file='mysql-bin.000002',
-> master_log_pos=106;
Query OK, 0 rows affected (0.04 sec)
开启从服务器:mysql> start slave;
查询从服务器状态:mysql> show slave status \G;
*************************** 1. row ***************************
Slave_IO_State: Waiting for master to send event
Master_Host: 192.168.163.130 //主服务器地址
Master_User: root
Master_Port: 3306
Connect_Retry: 60
Master_Log_File: mysql-bin.000002
Read_Master_Log_Pos: 106
Relay_Log_File: mysqld-relay-bin.000002
Relay_Log_Pos: 251
Relay_Master_Log_File: mysql-bin.000002
Slave_IO_Running: Yes // 表示去访问主服务器,yes表示通了
Slave_SQL_Running: Yes //发送一个sql语句给主服务器,yes表示通了
Replicate_Do_DB:
Replicate_Ignore_DB:
Replicate_Do_Table:
Replicate_Ignore_Table:
Replicate_Wild_Do_Table:
Replicate_Wild_Ignore_Table:
Last_Errno: 0
Last_Error:
Skip_Counter: 0
Exec_Master_Log_Pos: 106
Relay_Log_Space: 407
Until_Condition: None
Until_Log_File:
Until_Log_Pos: 0
Master_SSL_Allowed: No
Master_SSL_CA_File:
Master_SSL_CA_Path:
Master_SSL_Cert:
Master_SSL_Cipher:
Master_SSL_Key:
Seconds_Behind_Master: 0
Master_SSL_Verify_Server_Cert: No
Last_IO_Errno: 0
Last_IO_Error:
Last_SQL_Errno: 0
Last_SQL_Error:
1 row in set (0.00 sec)
6)主服务器测试,添加表数据,看下从库是是否更新表
添加表数据前:
mysql> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| mysql |
| test |
执行:
mysql> create database test1;
mysql> use test1;
mysql> create table user(id int(2),name char(20));
mysql> insert into user(1,'xia');
添加表数据后:
mysql> select * from user;
+------+------+
| id | name |
+------+------+
| 1 | xia |
+------+------+
1 row in set (0.00 sec)
7)从服务测试
mysql> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| mysql |
| test |
| test1 |
+--------------------+
4 rows in set (0.00 sec)
mysql> use test1;
mysql> show tables;
+-----------------+
| Tables_in_test1 |
+-----------------+
| user |
+-----------------+
1 row in set (0.00 sec)
8)双主结构(刚刚的配置是在从服务器上配置,可以实现主服务更新数据,从服务器也更新,现在反过来,在主服务配置,实现从服务器更新,主服务器也更新)
配置从服务器,
change master to
master_host='192.168.163.131',//mysql主服务器地址
master_user='root',
master_password='root',
master_log_file='mysql-bin.000002',
master_log_pos=106;
执行
在192.168.163.130主服务器执行
mysql> change master to
-> master_host='192.168.163.131',
-> master_user='root',
-> master_password='root',
-> master_log_file='mysql-bin.000002',
-> master_log_pos=106;
Query OK, 0 rows affected (0.02 sec)
开启从服务器:mysql> start slave;
查询从服务器状态:mysql> show slave status \G;
Slave_IO_State: Waiting for master to send event
Master_Host: 192.168.163.131
Master_User: root
Master_Port: 3306
Connect_Retry: 60
Master_Log_File: mysql-bin.000002
Read_Master_Log_Pos: 106
Relay_Log_File: mysqld-relay-bin.000002
Relay_Log_Pos: 251
Relay_Master_Log_File: mysql-bin.000002
Slave_IO_Running: Yes
Slave_SQL_Running: Yes
转载于:https://www.cnblogs.com/feiZhou/p/9344519.html
MySQL主从复制-双主结构相关推荐
- mysql 主从复制 表结构_MySQL主从复制-双主结构
1:安装命令 2台机分别安装 yum –y install mysql-server 2:配置登陆用户的密码root /usr/bin/mysqladmin -u root password 'roo ...
- mysql 主从复制 双主从复制原理 防止主键重复问题(必看)
双机热备的概念简单说一下,就是要保持两个数据库的状态自动同步.对任何一个数据库的操作都自动应用到另外一个数据库,始终保持两个数据库数据一致. 这样做的好处多. 1. 可以做灾备,其中一个坏了可以切换到 ...
- MySQL主从复制高级进阶
一.延时从库 1.介绍 普通的主从复制,处理物理故障比较擅长 如果主库出现了drop database 操作 延时从库:主库做了某项操作之后,从库延时多长时间回放(SQL),可以处理逻辑损坏 SQL线 ...
- mysql主从复制原理详解_MySQL主从复制没使用过?三大步骤让你从原理、业务上理解透彻...
成长是一棵树,总是在你不知不觉的情况下快乐长大:成长是一株草,总是在你不知不觉的情况下长满大地:成长是一朵花,总是在你不知不觉的情况下开满山头. 这不,随着时间的迁移.项目网站的用户量.数据量持续上升 ...
- php mysql 主从复制_Windows 环境下,MySQL 的主从复制和主主复制
Mysql的主从配置 1.找到配置文件 找到配置文件是主从复制的第一个难点.很多新手都容易找错配置文件,一般my.ini配置文件所在的位置都是隐藏的. 一般人都以为配置文件为 C:\Program F ...
- mysql主从复制、redis基础、持久化和主从复制
一.mysql(mariadb)基础 1.基础命令(centos7操作系统下) 1.启动mysql systemctl start mariadb 2.linux客户端连接自己 mysql -uroo ...
- mysql 硬负载_为啥单机MySQL又遭遇瓶颈?MySQL主从复制替你解决单机问题
成长是一棵树,总是在你不知不觉的情况下快乐长大:成长是一株草,总是在你不知不觉的情况下长满大地:成长是一朵花,总是在你不知不觉的情况下开满山头. 这不,随着时间的迁移.项目网站的用户量.数据量持续上升 ...
- MySQL主从复制原理、半同步操作步骤及原理
MySQL主从复制原理.半同步操作步骤及原理 1.1 企业Linux运维场景数据同步方案 1.1.1 文件级别的异机同步方案 1.scp/sftp/nc 命令可以实现远程数据同步. 2.搭建ftp/h ...
- Mysql主从复制(docker例子)
一.Binlog Binlog 日志主要作用是数据恢复和主从复制.本身就是二进制格式的日志文件,网络传输无需进行协议转换.MySQL 集群的高可用,负载均衡,读写分离等功能都是基于Binlog 来实现 ...
最新文章
- 装oracle非常卡吗,win7系统安装完oracle电脑变卡的解决方法
- python聊天程序
- python与正则表达式(part7)--re模块使用
- abap 中modify 的使用
- 报错型sql注入原理分析
- JA-SIG(CAS)学习笔记1
- 1.4 Arithmetic Progressions
- Navicat连接MySQL8.0版本时出现Client does not support authentication protocol requested by server;报错的问题解决办法
- 使用Java 自身Timer API实现定时器的方法
- 东南亚跨境电商shopee平台,教你轻松打造高销量品牌店铺!
- Java 开发实例(第3篇),绘制迷宫1 生成迷宫地图
- 2022 最新Robots.txt文件教程
- cjavapy在线正则表达式测试工具
- QQ空间无敌装逼,复制下面的任一代码粘贴即可出现意想不到的图案。
- 【RAM IP】RAM IP核简介及实验
- rtmp流放与flv格式视频问题解决
- 量子计算机九章感想,量子计算机九章这么火,本文让你明白什么是量子
- win11打不开 浏览器
- Alexa Fluor 488标记亲和纯化驴抗兔IgG(H+L)二抗说明书
- 以“人民为中心”重新定义全球新型智慧城市, 2021-2022年中国新型智慧城市百强榜权威发布!