1,主从备份概念

          主从备份: 就是一种主备模式的数据库应用. 主库(Master)数据与备库(Slave)数据完全一致. 实现数据的多重备份, 保证数据的安全. 可以在 Master[InnoDB]和 Slave[MyISAM]中使用不同的数据库引擎,实现读写的分离。

         所有对 Master 的操作,都会同步到 Slave 中. 如果 Master 和 Salve 天生上环境不同,那么对 Master 的操作,可能会在 Slave 中出现误
如: 在创建主从模式之前,Master 有 database : db1, db2, db3. Slave 有 database: db1, db2. 创建主从模式.现在的情况 Master 和 Slave 天生不同. 主从模式创建成功后,在 Master 中 drop database db3. Slave 中抛出数据库 SQL 异常.后续
所有的命令不能同步. 一旦出现错误. 只能重新实现主从模式。

           建议:建立主从备份的多个 MySQL,最好原始环境一致。Database,table,data 完全一致。

2,下面开启搭建mysql主从备份:

             主(Master):192.168.2.107
             从(Slave ): 192.168.2.108

         2.1),分别安装mysql,Linux 环境下mysql的安装与配置

         2.2),Master[主库]配置

                   2.2.1),修改 Master 配置文件/etc/my.cnf,在修改前建议复制一份备份文件:

                           server-id = 1       

                           log_bin = master_log

                           ## server-id: MySQL 服务唯一标识,唯一标识是数字. 自然数配置的时候有要求

                                 ## 单机使用:server-id 任意配置,只要是数字即可

                                 ## 主从使用:唯一标识数字必须小于 Slave 唯一标识数字

                           ## log_bin: 日志文件命名, 开启日志功能。此日志是命令日志。就是记录主库中执行的所有的 SQL命令的。

                   2.2.2),重启 master             

service mysqld restart

                    2.2,3),访问        

mysql -uusername -ppassword

                     2.2.4,创建slave用户:此用户是从库访问主库使用的用户                

## 创建从服务使用的用户
grant all privileges on *.* to 'slave'@'192.168.2.108' identified by 'slave' with grant
option;
## 刷新配置
flush privileges;

                          ip 地址不能写为%. 因为主从备份中,当前创建的用户,是给从库 Slave 访问主库 Master使用的.用户必须有指定的访问地址.                            不能是通用地址。

                      2.2.5),查看 Master 信息

show master status;

                                 

mysql 主从备份不生效 mysql主从和主备_mysql

            2.3),Slave[从库]配置

                      2.3.1),修改 Slave配置文件/etc/my.cnf,在修改前建议复制一份备份文件:

                                   server-id = 2       

                                   ## log_bin = master_log

                                    从库不需要配置log_bin

                      2.3.2),重启 Slave                      

service mysqld restart

                      2.3.3), 访问              

mysql -uusername -ppassword

                      2.3.4),更改从的slave默认设置:

                                2.3.4.1),停止 Slave 功能                                         

stop slave;

                                2.3.4.2),配置主库信息                               

change master to master_host='192.168.2.107', master_user='slave', master_password='slave', master_log_file='master_log.000009';

                                    需要修改的数据是依据 Master 信息修改的. ip 是 Master 所在物理机 IP. 用户名和密码是Master 提供的 Slave 访问                    用户和密码. 日志文件是在 Master 中查看的主库信息提供的.在Master 中使用命令 show master status 查看日志文件名称。

                                2.3.4.3),启动 Slave 功能

                                2.3.4.4),查看 Slave 配置                                           

show slave status \G;

                                                         

mysql 主从备份不生效 mysql主从和主备_linux_02

3,配置已经完成...     

             注意:一般从库只是用来备份的,千万不要在从库中作增删改操作,增删改操作只能在主库中操作,从库用来查询操作。