ThinkChat2.0新版上线,更智能更精彩,支持会话、画图、阅读、搜索等,送10W Token,即刻开启你的AI之旅 广告
**MYSQL主从备份配置** [主服务器:122.190.171.124] [从服务器:122.190.171.126] 主服务器查看主状态 ``` mysql> show master status; ``` 如果是Empty set (0.00 sec)说明需要开启了bin文件,开启主服务器的binarylog vim /etc/my.cnf # 添加如下内容 #设置唯一id server-id=1 #开启bin-log,产生的bin-log文件名即为bin-log.* log-bin=mysql-bin #指定bin-log为row类别,其他两种是statement、mixed binlog_format=mixed #对指定的数据库开启bin-log,这里是对onecloud数据库开启bin-log服务 binlog-do-db=onecloud #表示这台服务器的序号从1开始 auto-increment-offset=1 #我在这台服务器上插入的第一个id就是 1, 第二行的id就是 4了, 而不是2. auto-increment-increment=3 重启mysql服务 systemctl restart mysqld 在主服务器上面创建专门用于备份的用户double ``` GRANT REPLICATION SLAVE ON *.* TO 'double'@'122.190.171.126' IDENTIFIED BY '123(密码)'; ``` ---------设置从服务器相关------------------ vim /etc/my.cnf ``` #添加如下内容 server-id=2 relay-log = relay-log replicate-do-db=onecloud ``` 重启mysql服务 ``` systemctl restart mysqld mysql> SHOW VARIABLES LIKE 'server_id'; # 显示跟配置一致即可,前面我们设置2 ``` 从服务器测试主服务器的注册的double用户是否正常 ``` mysql -u double -P 63306 -h 122.190.171.124 -p #输入密码即可 ``` 在从服务器上导入主服务器的初态 ``` flush tables with read lock; #先锁定 hello数据库: mysqldump -uroot -p onecloud -B -x> /tmp/onecloud.sql #输入密码 然后导出数据: unlock tables; #解除锁定 scp root@122.190.171.124:/tmp/onecloud.sql /tmp/onecloud.sql mysql -uroot -p < /tmp/onecloud.sql ``` 开启同步, 在从服务器上执行 ``` CHANGE MASTER TO MASTER_HOST='122.190.171.124', # 主服务器IP MASTER_USER='double', #主服务器用户名 MASTER_PASSWORD='c7OUgv7YuUq5boa*70oGsDDAbhu19KgL', # 主服务器密码 MASTER_LOG_FILE='mysql-bin.000009',# 根据主服务器看show master status里面的 File MASTER_LOG_POS=18234,根据主服务器看show master status里面的 Position MASTER_PORT = 63306;# 主服务器端口号 ``` 从服务器重启mysql服务, 然后查看slave线程是否正常 mysql> show salve status\G'; Slave_IO_Running: Yes Slave_SQL_Running: Yes #这两项都是yes说明正常连接上了 需要查看mysql的错误日志[/var/log/mysqld.log ]密码,防火墙,ip地址,端口不对等都会导致失败