这篇文章主要介绍MySQL复制以及调优原理的示例分析,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!
一. 简介
MySQL自带复制方案,带来好处有:
数据备份。
负载均衡。
分布式数据。
概念介绍:
主机(master):被复制的数据库。
从机(slave):复制主机数据的数据库。
复制步骤:
(1). master记录更改的明细,存入到二进制日志(binary log)。
(2). master发送同步消息给slave。
(3). slave收到消息后,将master的二进制日志复制到本地的中继日志(relay log)。
(4). slave重现中继日志中的消息,从而改变数据库的数据。
二. 实现复制
实现复制有以下步骤:
1.设置MySQL主库的二进制日志以及server-id
MySQL配置文件一般存放在/etc/my.cnf
# 在[mysqld]下面添加配置选项
[mysqld]
server-id=1
log-bin=mysql-bin.log
server-id是数据库在整个数据库集群中的唯一标示,必须保持唯一。
重启MySQL。
注:如果MySQL配置文件中已经配置过此文件,则可以跳过此步。
2.新建复制账号
在主库里面新建用于从库复制主库数据的账号,并授予复制权限。
mysql> GRANT REPLICATION SLAVE, REPLICATION CLIENT ON *.* TO user_name@'host' IDENTIFIED BY 'password';
3.设置MySQL主库server-id
如果数据量不算大的情况下,可以使用mysqldump工具导出主库数据,然后导入到从库里面。
mysqldump --single-transaction --triggers --master-data databasename > data.sql
如果数据量大的情况下应该使用Xtrabackup去进行数据库的导出,此处不做介绍。
大型站长资讯类网站! https://www.0817zz.com