mysql主从复制

复制是将主数据库的DDL和DML操作通过二进制日志传到从服务器,在从服务器上对这些日志重新执行,即重做日志,使从主服务器数据保持同步。做主从复制请使用相同版本的数据库。

1、创建一个从用来复制的用户,给予他REPLICATION SLAVE权限,假如这个用户需要从ip为192.168.1.1的主机登入。登陆数据库,执行一下命令:

mysql> grant replication slave on *.* to 'username'@'192.168.1.1' identified by 'password';

Query OK, 0 rows affected (0.01 sec)

2、开启binlog日志,并设置server-id,具体操作,在配置文件my.cnf中添加一下命令,然后重启数据库使修改生效:

[mysqld]

log-bin=/var/lib/mysql/mysql-bin.log

server-id=1

3、锁定主数据库,保证复制数据一致:

mysql> flush tables with read lock;

Query OK, 0 rows affected (0.00 sec)

4、接下来使用最古老的方法把数据文件打包(tar),然后scp到从数据库,解压缩到相关目录下边