时间:2021-05-24
概述
对任何一个数据库的操作都自动应用到另外一个数据库,始终保持两个数据库中的数据一致。
这样做有如下几点好处:
MySQL 主从复制的方式
1 Master 数据库操作的任何数据库的时候,都会将操作记录写入到biglog日志文件当中
2 Slave 数据库通过网络获取到主数据库的日志文件,写入本地日志系统 ,然后一条条的将数据库事件在数据库中完成
3 Slave 重做中继日志中的事件,将 Master 上的改变反映到它自己的数据库中,所以两端的数据是完全一样的。
环境
操作系统:CentOS
MySQL版本:mysql-5.6.26 (主从两者数据库版本必须保持一致)
Master1 配置
1 开启binlog日志功能
vim /etc/my.cnf
server-id=6log-bin=mysql-bin2 重启mysql 登陆并授权
mysql -uroot -p123456
grant replication slave, replication client on *.* to 'repl'@'10.211.55.7' identified by '123456';ip地址为slave服务器的ip地址
3 查看日志状态
show master status;
Master2 配置
1 开启binlog日志功能
vim /etc/my.cnf
server-id=8log-bin=mysql-bin2 重启mysql 登陆并授权
mysql -uroot -p123456
grant replication slave, replication client on *.* to 'repl'@'10.211.55.7' identified by '123456';ip地址为slave服务器的ip地址
3 查看日志状态
show master status;
Slave 配置
1 修改配置文件 (注意 slave的默认数据库启动的端口必须关闭 service mysql stop)
vim /etc/my.cnf
[mysqld] binlog-ignore-db=mysql binlog_format=mixed expire_logs_days=7 slave_skip_errors=1062 relay_log=mysql-relay-bin log_slave_updates=1[mysqld_muliti] mysqld=/usr/bin/mysqld_safe mysqladmin=/usr/bin/mysqladmin user=root password=123456[mysqld6] port=3306 datadir=/home/mysql/data6 pid-file=/home/mysql/data6/mysql.pid socket=/home/mysql/data6/mysql.sock user=mysql server-id=7[mysqld8] port=3307 datadir=/home/mysql/data8 pid-file=/home/mysql/data8/mysql.pid socket=/home/mysql/data8/mysql.sock user=mysql server-id=72 初始化生成目录
/usr/local/mysql/scripts/mysql_install_db --user=mysql --basedir=/usr/local/mysql --datadir=/home/mysql/data6 &/usr/local/mysql/scripts/mysql_install_db --user=mysql --basedir=/usr/local/mysql --datadir=/home/mysql/data8 &3 修改目录权限
chown -R mysql /home/mysql/data6chown -R mysql /home/mysql/data84 启动服务
mysqld_multi --defaults-file=/etc/my.cnf start 6mysqld_multi --defaults-file=/etc/my.cnf start 85 登录测试(并分别做授权)
mysql -P 3306 -S /home/mysql/data6/mysql.sock
mysql> change master to master_host='10.211.55.6', master_user='repl', master_password='123456', master_port=3306, master_log_file='mysql-bin.000001', master_log_pos=120;mysql> start slave;mysql -P 3307 -S /home/mysql/data8/mysql.sock
mysql> change master to master_host='10.211.55.8', master_user='repl', master_password='123456', master_port=3306, master_log_file='mysql-bin.000001', master_log_pos=120;mysql> start slave;ok 就这样 完成了
总结
以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,如果有疑问大家可以留言交流,谢谢大家对的支持。
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
前言当我们搭建MySQL集群时,自然需要完成数据库的主从同步来保证数据一致性。而主从同步的方式也分很多种,一主多从、链式主从、多主多从,根据你的需要来进行设置。
使用MYSQL进行数据库备份,有很正规的数据库备份方法,同其他的数据库服务器有相同的概念,但有没有想过,MySQL会有更简捷的使用文件目录的备份方法,而且又快有
测试环境.基本上数据是瞬间同步,希望对大家有帮助RedHatES3update3MYSQL5.0.15MYSQL数据同步备份A服务器:192.168.1.2主服
一个简单的mysql全量备份脚本,备份最近15天的数据。备份#每天备份mysql数据库(保存最近15天的数据脚本)DATE=$(date+%Y%m%d)/hom
如何利用SSH(Shell)来备份和恢复MySQL数据库的方法例如:数据库参数为::MySQL地址:mysql.dh.netMySQL名称:mysql_dbna