环境说明:

版本 version 5.6.25-log

主库ip: 10.219.24.25

从库ip:10.219.24.22

os 版本: centos 6.7

已安装热备软件:xtrabackup

防火墙已关

补充:

主从复制原理: http://blog.csdn.net/zhang123456456/article/details/72972701

mysql 5.6安装 :http://blog.csdn.net/zhang123456456/article/details/53608554

xtrabackup 安装: http://blog.csdn.net/zhang123456456/article/details/72836184

一主一从搭建流程:

1、 主库参数调整

-- 停止主库mysql

[root@mysql02 ~]# service mysql stop

[root@mysql02 ~]# netstat -nltp|grep mysql|grep 3606

-- 调整 my.cnf 参数

[root@mysql02 ~]# cat /etc/my.cnf

[client]

password = oracle

port = 3306

socket = /data/mysql/mysql.sock

[mysqld]

server-id=25

port = 3306

socket = /data/mysql/mysql.sock

character_set_server = utf8

character_set_client = utf8

collation-server=utf8_general_ci

lower_case_table_names = 1

max_connections = 1000

datadir = /data/mysql

log_bin = /data/mysql/binarylog/binlog

log_bin_index = /data/mysql/binarylog/binlog

binlog_format = mixed

innodb_data_file_path = ibdata1:12M:autoextend

[mysql]

default-character-set = utf8

说明:主库必须配置的参数

server-id (主从的server-id必须不同)、log_bin、binlog_format

-- 启动主库

[root@mysql02 ~]# mysqld_safe --defaults-file=/etc/my.cnf &

2、 从库参数调整

-- 停止从库mysql

[root@mysql01 ~]# service mysql stop

[root@mysql01 ~]# netstat -nltp|grep mysql|grep 3606

-- 调整 my.cnf 参数

[root@mysql01 ~]# cat /etc/my.cnf

[client]

password = oracle

port = 3306

socket = /data/mysql/mysql.sock

[mysqld]

server-id=22

port = 3306

socket = /data/mysql/mysql.sock

character_set_server = utf8

character_set_client = utf8

collation-server=utf8_general_ci

lower_case_table_names = 1

max_connections = 1000

datadir = /data/mysql

log_bin = /data/mysql/binarylog/binlog

log_bin_index = /data/mysql/binarylog/binlog

relay-log = /data/mysql/relaylog/relay

relay-log-index = /data/mysql/relaylog/relay

relay_log_purge = on

read-only = 1

[mysql]

default-character-set = utf8

说明:从库必须配置的参数

server-id、log_bin、relay-log、read-only

3、 主库备份

-- 主库备份目录

[root@mysql02 full]# pwd

/xtrabackup/full

-- 主库 innobackupex 备份

[root@mysql02 ~]# innobackupex --user=root --password=oracle --port=3606 /xtrabackup/full/

170610 17:50:23 Backup created in directory '/xtrabackup/full/2017-06-10_17-50-19/'

MySQL binlog position: filename 'binlog.000010', position '120'

....

170610 17:50:23 completed OK!

-- 查看备份 binlog编号 与 截止 position

[root@mysql02 2017-06-10_17-50-19]# cat xtrabackup_binlog_info

binlog.000010120

4、 从库创建与主库相同的备份目录

[root@mysql01 ~]# mkdir -p /xtrabackup/full

[root@mysql01 ~]# chown -R mysql:mysql /xtrabackup/full/

5、 主库将备份 scp 到从库

[root@mysql02 full]# pwd

/xtrabackup/full

[root@mysql02 full]# scp -r 2017-06-10_17-50-19 10.219.24.22:/xtrabackup/full

6、 从库查看scp过来的备份

[root@mysql01 ~]# cd /xtrabackup/full/2017-06-10_17-50-19/

[root@mysql01 2017-06-10_17-50-19]# ll

total 12320

-rw-r-----. 1 root root 419 Jun 10 18:01 backup-my.cnf

-rw-r-----. 1 root root 12582912 Jun 10 18:01 ibdata1

drwxr-x---. 2 root root 4096 Jun 10 18:01 mysql

drwxr-x---. 2 root root 4096 Jun 10 18:01 performance_schema

drwxr-x---. 2 root root 4096 Jun 10 18:01 test

-rw-r-----. 1 root root 18 Jun 10 18:01 xtrabackup_binlog_info

-rw-r-----. 1 root root 113 Jun 10 18:01 xtrabackup_checkpoints

-rw-r-----. 1 root root 482 Jun 10 18:01 xtrabackup_info

-rw-r-----. 1 root root 2560 Jun 10 18:01 xtrabackup_logfile

7、 主库创建同步用户

mysql> GRANT replication slave ON *.* TO 'slave25'@'%' IDENTIFIED BY 'oracle';

Query OK, 0 rows affected (0.05 sec)

8、 从库恢复主库数据

-- 从库将原有datadir文件夹重命名到新位置,并创建原文件夹

[root@mysql01 ~]# mv /data/mysql /data/mysqlbak

[root@mysql01 ~]# mkdir -p /data/mysql

-- innobackupex apply-log

[root@mysql01 ~]# innobackupex --apply-log --user=oracle \

--password=oracle --port=3606 /xtrabackup/full/2017-06-10_17-50-19/

-- innobackupex copy 恢复的文件到原来的数据位置

[root@mysql01 mysql]# innobackupex --defaults-file=/etc/my.cnf --user=root \

--copy-back /xtrabackup/full/2017-06-10_17-50-19/

170610 18:25:11 completed OK!

-- 创建binlog目录与 relaylog 目录并赋权

[root@mysql01 ~]# mkdir -p /data/mysql/binarylog

[root@mysql01 ~]# mkdir -p /data/mysql/relaylog/

[root@mysql01 mysql]# chown -R mysql:mysql /data/mysql

9、 从库配置与检测

-- 从库启动

[root@mysql01 mysql]# mysqld_safe --defaults-file=/etc/my.cnf &

-- 从库指定与主库同步的基本信息

mysql>

change master to

master_host='10.219.24.25',

master_port=3306,

master_user='slave25',

master_password='oracle',

master_log_file='binlog.000010',

master_log_pos=120;

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

参数解释:

MASTER_HOST : 设置要连接的主服务器的ip地址

MASTER_USER : 设置要连接的主服务器的用户名

MASTER_PASSWORD : 设置要连接的主服务器的密码

MASTER_LOG_FILE : 设置要连接的主服务器的bin日志的日志名称

MASTER_LOG_POS : 设置要连接的主服务器的bin日志的记录位置

-- 启动slave 状态(开始监听msater的变化)

mysql> start slave;

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

-- 查看slave的状态.

mysql> show slave status \G;

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

Slave_IO_State: Waiting for master to send event

Master_Host: 10.219.24.25 #主库 IP

Master_User: slave25 # 主库复制的用户

Master_Port: 3306 # 主库 mysqld

Connect_Retry: 60

Master_Log_File: binlog.000010 #io_thread 读取主库 master_log_file

Read_Master_Log_Pos: 717 # io_thread 读取主库 master_log_pos

Relay_Log_File: relay.000002

Relay_Log_Pos: 877

Relay_Master_Log_File: binlog.000010 #sql_thread 执行主库的 master_log_file

Slave_IO_Running: Yes # 关键的,io_thread 是否 running

Slave_SQL_Running: Yes # 关键的,sql_thread 是否 running

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: 717 #sql_thread 执行主库的 master_log_pos

Relay_Log_Space: 1040

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:

Replicate_Ignore_Server_Ids:

Master_Server_Id: 25

Master_UUID: 29d68531-4cf9-11e7-8e1f-000c297c4100

Master_Info_File: /data/mysql/master.info

SQL_Delay: 0

SQL_Remaining_Delay: NULL

Slave_SQL_Running_State: Slave has read all relay log; waiting for the slave I/O thread to update it

Master_Retry_Count: 86400

Master_Bind:

Last_IO_Error_Timestamp:

Last_SQL_Error_Timestamp:

Master_SSL_Crl:

Master_SSL_Crlpath:

Retrieved_Gtid_Set:

Executed_Gtid_Set:

Auto_Position: 0

1 row in set (0.00 sec)

ERROR:

No query specified

10、 主从同步检查

-- 主库

mysql> create database repl;

Query OK, 1 row affected (0.00 sec)

mysql> use repl

Database changed

mysql> create table repl (id int);

Query OK, 0 rows affected (0.02 sec)

mysql> insert into repl values(1);

Query OK, 1 row affected (0.00 sec)

-- 从库

mysql> show databases;

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

| Database |

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

| information_schema |

| binarylog |

| mysql |

| performance_schema |

| relaylog |

| repl |

| test |

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

7 rows in set (0.00 sec)

mysql> use repl

Reading table information for completion of table and column names

You can turn off this feature to get a quicker startup with -A

Database changed

mysql> select * from repl;

+------+

| id |

+------+

| 1 |

+------+

1 row in set (0.00 sec) >同步成功!

mysql 不停机_mysql之 mysql 5.6不停机主从搭建(一主一从基于日志点复制)相关推荐

  1. 没有日志 mysql 5.6主从同步_mysql之 mysql 5.6不停机主从搭建(一主一从基于日志点复制)...

    环境说明: 版本 version 5.6.25-log 主库ip: 10.219.24.25 从库ip:10.219.24.22 os 版本: centos 6.7 已安装热备软件:xtrabacku ...

  2. mysql之 mysql 5.6不停机主从搭建(一主一从基于日志点复制)

    环境说明: 版本 version 5.6.25-log 主库ip: 10.219.24.25 从库ip:10.219.24.22 os 版本: centos 6.7 已安装热备软件:xtrabacku ...

  3. mysql 错误提示_Mysql必读mysql常见的错误提示问题处理小结

    <Mysql必读mysql常见的错误提示问题处理小结>要点: 本文介绍了Mysql必读mysql常见的错误提示问题处理小结,希望对您有用.如果有疑问,可以联系我们. 1.mysql服务无法 ...

  4. mysql having实例_Mysql必读mysql group by having 实例代码

    <MysqL必读MysqL group by having 实例代码>要点: 本文介绍了MysqL必读MysqL group by having 实例代码,希望对您有用.如果有疑问,可以联 ...

  5. mysql csv 表头_Mysql实例mysql 导出CSV文件 并带表头的方法

    <Mysql实例mysql 导出CSV文件 并带表头的方法>要点: 本文介绍了Mysql实例mysql 导出CSV文件 并带表头的方法,希望对您有用.如果有疑问,可以联系我们. 参考官方文 ...

  6. ip变更 mysql无法启动_MySQL 重装MySQL后, mysql服务无法启动

    MySQL 重装MySQL后, mysql服务无法启动 解决方法: 1: 先卸载mysql, 手动将其安装目录里没有删除干净的文件全部删除. 2: 将C:\ProgramData\MySQL 里有关m ...

  7. mysql的槽_Mysql槽点 - MySQL及其它开源数据库 - ITPUB论坛-中国专业的IT技术社区...

    本帖最后由 XQKA 于 2018-3-25 18:57 编辑 Terrible choices: MySQL https://blog.ionelmc.ro/2014/12/28/terrible- ...

  8. mysql virt虚拟内存_mysql 案例 ~ mysql内存性能分析

    一 简介: mysql基于linux的内存分析 二 关键指标定义 1 底层分配和释放内存 1 使用C标准库的malloc()或者mmap(),就可以在堆和文件映射段分配内存了,通过free()或者um ...

  9. mysql explain 实例_Mysql实例mysql explain用法学习

    <Mysql实例mysql explain用法学习>要点: 本文介绍了Mysql实例mysql explain用法学习,希望对您有用.如果有疑问,可以联系我们. 导读:本节内容:mysql ...

最新文章

  1. python pip国内源_【Python】设置pip源为国内源及简单操作
  2. excel填充序列_excel如何快速填充数据
  3. CodeForces - 731D 80-th Level Archeology(线段树+暴力/差分)
  4. GitHub for Windows使用教程(二) 分支的使用
  5. jxls使用excel公司_使用jXLS将Excel文件解析为JavaBeans
  6. ReverseFind
  7. net core框架介绍
  8. gitlab 删除历史修改记录_Excel表格使用记录单功能快速录入、修改、删除、查询数据...
  9. Linux 下Shell脚本中的加减乘除运算
  10. css小技巧 ----- 使用border制作一个小三角形图标
  11. ms Sql server 中的getDate()函数使用方法总结
  12. 使用 IIS 进行 ASP.NET 2.0 成员/角色管理(2):实现
  13. 计算机启动键,U启动U盘启动盘一键启动按键大全
  14. PyTorch常用5个抽样函数
  15. vbs或vbe如何修改图标
  16. 台式计算机亮度怎么调节快捷键,详解电脑调亮度快捷键如何调整屏幕亮度呢?...
  17. .net / .net core excel转pdf
  18. 人工智能和5G在无人机技术中的作用
  19. 一枝看上去很美的花——书评《Java与模式》
  20. 全国计算机竞赛保送清华,全国数学奥赛金牌、保送清华,别人家的孩子了解一下...

热门文章

  1. java 带参数的构造函数_java – mockito模拟一个带参数的构造函数
  2. tp5index.php怎么放外面,tp5如何隐藏index.php
  3. php 获取当前url hash,http - 我可以在服务器端应用程序(PHP,Ruby,Python等)上读取URL的哈希部分吗?...
  4. django 通过数据库表名获取app名
  5. 递归回溯最简单易懂的小例子
  6. 路飞学城Python-Day46
  7. 实时滚动图表绘制方法: LightningChart教程 + 源码下载
  8. MySQL DBA面试全揭秘
  9. 嵌套循环连接,哈希连接,排序合并连接(2015-2-4学习日记)
  10. 离线安装Cloudera Manager 5和CDH5(最新版5.9.3) 完全教程(七)界面安装