1复制概述
Mysql内置的复制功能是构建大型、高性能APP复制的基础。 将Mysql数据分布到多个系统的机制是通过将Mysql一个主机上的数据复制到另一个主机(slaves )然后重试来实现的。 在复制期间,一个服务器作为主服务器,一个或多个其他服务器作为从属服务器。 主服务器将更新写入二进制日志文件,并维护文件索引以跟踪日志周期。 这些日志可以记录发送到服务器的更新。 当从属服务器连接到主服务器时,从日志中通知主服务器上次成功更新的位置。 服务器接收随后发生的更新,阻止并等待主服务器通知新的更新。
请注意,在复制机灵的睫毛膏时,必须在主服务器上更新正在复制的所有表。 否则,必须注意避免用户对主服务器上的表所做的更新与对从属服务器上的表所做的更新之间的冲突。
1.1 mysql支持的复制类型:
(1)基于语句的复制)在主服务器上执行的SQL语句在从服务器上执行同样的语句。 缺省情况下,MySQL采用基于语句的复制,非常高效。
如果发现无法进行准确复制,则会自动选择基于行的复制。
)2)基于行的复制)复制更改的内容,而不是在从服务器上执行命令。 从mysql5.0开始支持
)3)混合复制:默认采用基于语句的复制,如果发现不能进行基于语句的精确复制,则采用基于行的复制。
1 .首先在主库中执行操作
1.1设置服务器- id值,打开搞笑电源日志参数
根据前面提到的MySQL主从同步原理,我们知道为了实现主从复制,关键因素是打开搞笑的电源日志记录功能。 因此,首先打开主库中笑的电源日志参数。
1.2实现主从复制的必要条件:
)1)配置文件my.cnf中的服务器- id不得相同。
)2)在主库配置文件my.cnf中打开log-笑电源。
是否打开查询如下:
[root@mysql~]#egrep'log-爱笑的电源| server-id '/data/{ 3306,3307 }/my.cn f
/data/3306/my.cnf:log-爱笑电源=/data/3306/mysql-爱笑电源##显示打开
/data/3306/my.CNF :服务器- id=1
/data/3307/my.cnf:#log-笑电源=/data/3307/mysql-笑电源
/data/3307/my.CNF :服务器- id=3
[root@mysql~]#
如果没有打开用于更改主库的配置文件
运行vim /data/3306/my.cnf并编辑多个实例3306的my.cnf配置文件。 这两个参数修改如下:
提示:
1 .请将以上两个参数置于my.cnf的[mysqld]模块下。 否则会出错。
1.3 .更改配置文件后,重新启动数据库
[ root @ MySQL~] #/data/3306/MySQL stop
StopingMySQL .
[ root @ MySQL~] #/data/3306/MySQL start
1.4 .也可以在登录数据库中验证两个更改的配置是否有效
使用show variables; 确认mysql中设定的参数;
mysqlshow variables like'log_笑电源';
-----------------
variable _ name
-----------------
|log_笑的电源|ON|
-----------------
1原始插入(0.00 sec ) )。
mysqlshowvariableslike ' server _ id ';
-----------------
variable _ name
-----------------
|服务器_ id|1 |
-----------------
1原始插入(0.00 sec ) )。
2.1创建主从复制帐户
根据主从复制原理,从库要与主库同步,必须具有可以连接到主库的帐户。 此外,此帐户的权限是在主库中创建的,权限允许从从库连接主库和同步数据。
2.1、登录mysql3306即时主数据库