Mysql热备 Replication

Standard

Mysql Master
IP:192.168.0.1

新建备份帐号

GRANT REPLICATION SLAVE,REPLICATION CLIENT ON *.* TO "backup"@"%" IDENTIFIED BY "123456" WITH MAX_QUERIES_PER_HOUR 0 MAX_CONNECTIONS_PER_HOUR 0 MAX_UPDATES_PER_HOUR 0;

修改配置文件

vi /etc/my.cnf
[mysqld]
#设置数据库 id 默认主服务器是1,可以随便设置但不能重复
server-id = 1
#日志文件名称,不填则默认为主机名
log-bin
#要备份的数据库名称
binlog-do-db = mydb
 
#查看主服务器的状态
mysql> show master status;
+------------------+----------+--------------+------------------+-------------------+
| File             | Position | Binlog_Do_DB | Binlog_Ignore_DB | Executed_Gtid_Set |
+------------------+----------+--------------+------------------+-------------------+
| mysql-bin.000001 |        0 |              |                  |                   |
+------------------+----------+--------------+------------------+-------------------+

Mysql Slave
IP:192.168.0.2

修改配置文件

vi /etc/my.cnf
[mysqld]
#设置数据库 id 默认主服务器是1,可以随便设置但不能重复
server-id=2
#主服务器的IP地址或者域名
master-host=192.168.0.1
#主数据库的端口号
master-port=3306
#同步数据库的用户
master-user=backup
#同步数据库的密码
master-password=123456
#如果从服务器发现主服务器断掉,重新连接的时间差
master-connect-retry=60
#报告错误的服务器
report-host=192.168.0.2

先把从Master数据库服务器备份出来的数据导入到Slave服务器中

启动Slaver数据库服务器

mysql> slave stop; //停止 slave 的服务
mysql> CHANGE MASTER TO
> MASTER_HOST='192.168.0.1', //Master服务器的IP地址
> MASTER_USER='backup', //同步数据库的用户
> MASTER_PASSWORD='123456', //同步数据库的密码
> MASTER_LOG_FILE='mysql-bin.000001', //在Master机器上使用show master status查看参数
> MASTER_LOG_POS=0; //在Master机器上使用show master status查看参数
 
mysql> start slave;
mysql> SHOW PROCESSLIST; //可以查看 mysql 的进程,看是否有在监听

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.