MySQL 主从复制搭建过程

目录

一.master主节点的服务器my.cnf配置

1.1:开启的binlog日志

二.node01节点从库服务器my.cnf配置

2.1:开启的binlog日志

三.主节点上创建复制账号并创建权限

3.1:初始化数据,备份主库,在从库上恢复,让从库与主库在某一位置时达到同步。

3.2:查看testdata.dmp ,得到binlog文件名和position 号

3.3:  testdata.dmp复制到从服务器node01上,恢复从主库导出来的数据到node01节点。

3.4: 在从库上执行MySQL配置主从命令

3.4.1:  在从节点执行:start slave 命令,启动从服务复制功能。

3.4.2:查看主从复制状态命令

3.4.3:Slave_IO_Running或者Slave_SQL_Running不为Yes状态的解决方法

3.4.4: 在从节点执行:stop slave 命令,停止从服务复制功能(知晓)。

3.4.5:主从服务器测试验证,验证创库,新建表,添加数据,删除数据,修改数据。

4. 如果需要禁用主从复制,只需要在从服务器上执行命令

5.清空从库的所有配置信息的命令

四.如何保证主从复制数据一致性

4.1:在master主库上修改配置参数

4.2:在savle从库上修改配置参数

4.3:如何避免人为误操作在从库中修改数据

4.4: 从节点将无法修改数据,不影响主从同步

五.Mysql离线安装包下载


提示:主服务器master,从服务器node01。

一.master主节点的服务器my.cnf配置

[mysqld]

port=33306
datadir=/datah/data/mysqldata/mysql
socket=/var/lib/mysql/mysql.sock

symbolic-links=0

log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid

character-set-server=utf8
collation-server=utf8_general_ci
lower_case_table_names=1
init_connect='SET NAMES utf8'
sql_mode=STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION
max_connections=5000
wait_timeout=20000
max_user_connections=5000
max_allowed_packet=128M
thread_stack=262144

#skip-grant-tables


#主库
################ settings start ###################
server-id=100             #主库server-id
log-bin=mysql-bin       #开启binlog日志
binlog_format=row      #row模式,保证后期不会出现数据不一致的情况
################ settings end ###################
 

1.1:开启的binlog日志

二.node01节点从库服务器my.cnf配置

[mysqld]
 
port=33306
datadir=/datah/data/mysqldata/mysql
socket=/var/lib/mysql/mysql.sock
 
symbolic-links=0
 
log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid
 
character-set-server=utf8
collation-server=utf8_general_ci
lower_case_table_names=1
init_connect='SET NAMES utf8'
sql_mode=STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION
max_connections=5000
wait_timeout=20000
max_user_connections=5000
max_allowed_packet=128M
thread_stack=262144
 
#skip-grant-tables

#从库
################ settings stat ###################
log-bin=mysql-bin    #[必须]启用二进制日志
server-id=101          #[必须]服务器唯一ID
binlog_format=row
master_info_repository=TABLE
relay_log_info_repository=TABLE
log_slave_updates=on
relay_log_recovery=1
################ settings end ###################
 

2.1:开启的binlog日志

三.主节点上创建复制账号并创建权限

grant replication slave on *.* to 'mysync'@'%' identified by 'Abc123456';

flush privileges;

3.1:初始化数据,备份主库,在从库上恢复,让从库与主库在某一位置时达到同步。

这里用 mysqldump 做数据的备份导出操作

命令:

mysqldump -uroot -pAbc123456 --single-transaction --master-data=2 --databases testdata>/tmp/testdata.dmp

备注:--databases testdata 表示备份testdata数据库。如果数据量大,使用Xtrabackup 进行热备份也是可以的。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

求知若渴,虚心若愚。

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值