环境ubuntu18.04 对于这篇文章主要是交流使用,作者不是大牛,一个小码农,偶尔学习的一些知识,分享给大家 准备工作,两个系统都有mysql数据库,具体怎么安装,作者另一篇文章有具体的解释 1, 查看数据库的配置文件路径 mysql --verbose --help|grep -A 1 'Default options' 2,修改配置文件内容 sudo vi /etc/mysql/mysql.conf.d/mysqld.cnf 将85行和86行注释取消掉 (85+G,快速到达指定行,把#号删除即可) 重启mysql sudo service mysql restart 将主数据库的数据库进行备份 mysqldump -uroot -pmysql --all-databases --lock-all-tables > ~/master_db.sql 将备份好的数据文件远程上传的从服务器的/tmp文件夹下(另外文章会有具体的解释),因为临时可执行文件必须要在/tmp文件夹中执行 进入从服务器 cd /tmp mysql –uroot –pmysql < master_db.sql 将主数据库的所有信息在从数据库中恢复 进入主数据库创建一个用户 GRANT REPLICATION SLAVE ON *.* TO 'slave'@'%' identified by 'slave'; 创建用户这个另外文章也有具体解释 FLUSH PRIVILEGES; 刷新用户权限 主数据中查看 状态 SHOW MASTER STATUS; 进入从数据库,修改配置文件(和主数据库配置相似,只要修改85行,将id改为和主数据库ID不一样即可,默认为1,修改为其他值) sudo vi /etc/mysql/mysql.conf.d/mysqld.cnf exit 退出数据库 重启数据库 sudo servoce mysql restart 再次进入从数据库,进行主从配置(最关键一步) change master to master_host='主服务器ip', master_user='slave', master_password='slave',master_log_file='mysql-bin.000003(上面需要记录的第一个数据)', master_log_pos=154(第二个数据); 开启同步/关闭同步 start/stop slave; 从数据库查看同步状态 show slave status\G; Slave_IO_Running: 和Slave_SQL_Running:必须都为Yes,才是配置成功了,如果不成功,从头检查一遍,中间会有步骤出错了 欢迎共同讨论留下评论,或者添加博主微信