MySQL 主从复制及原理
admin
2023-04-20 02:03:14
0

1.主从复制配置
a. 环境:CentOS7.4,IP地址分别是主库:192.168.11.146,从库:192.168.11.238,
主库版本应低于或等于从库版本,这里用的都是MySQL 8.0.13
b.主库配置/etc/my.cnf文件

[mysqld]

#一般配置选项
user=mysql
port=3306
server_id=1
basedir= /usr/local/mysql
datadir= /usr/app/mysqldata

character_set_server=utf8

pid_file=/usr/app/mysqldata/mysql.pid
socket = /var/run/mysqld/mysqld.sock
#错误日志
log_error= /usr/app/mysqldata/myerror.log
#慢日志
slow_query_log=1
slow_query_log_file=/usr/app/mysqllog/mysql.slow
long_query_time=5
#bin_log日志
log_bin=/usr/app/mysqllog/mysql_bin
skip_external_locking
skip_name_resolve
#开启独立表空间
innodb_file_per_table = on

[mysql]
no-auto-rehash
socket = /var/run/mysqld/mysqld.sock
#default-character-set=utf8
#safe-updates

[client]
loose-default-character-set = utf8

重启MySQL服务

/etc/init.d/mysqld start

授权slvave 用户

grant replication slave,replication client on . to 'slvae_rp' identified by '111111';

flush privileges;

从库配置/etc/my.cnf文件

[mysqld]

#一般配置选项
user=mysql
port=3306
server_id=1
basedir= /usr/local/mysql
datadir= /usr/app/mysqldata

character_set_server=utf8

pid_file=/usr/app/mysqldata/mysql.pid
socket = /var/run/mysqld/mysqld.sock
#错误日志
log_error= /usr/app/mysqldata/myerror.log
#慢日志
slow_query_log=1
slow_query_log_file=/usr/app/mysqllog/mysql.slow
long_query_time=5
#bin_log日志
log_bin=/usr/app/mysqllog/mysql_bin
#开启中继日志
relay_log=/var/lib/mysql/relay-log
log_slave_updates=1 #从服务器将其SQL线程执行的更新记入到从服务器自己的二进制日志
read_only=1 #只读模式

skip_external_locking
skip_name_resolve
#开启独立表空间
innodb_file_per_table = on

[mysql]
no-auto-rehash
socket = /var/run/mysqld/mysqld.sock
#default-character-set=utf8
#safe-updates

[client]
loose-default-character-set = utf8

重启mysql服务
/etc/init.d/mysqld restart

主库:
show master status;

从库:
change master to
master_host='192.168.11.146',
master_port=3306,
master_user='slave_rp',
master_password='111111',
master_log_file='mysql-bin.000001',
master_log_pos=154;
开启从库slava
start slave;
查看从库状态
show slave status;

确认正常:
slave_io_running:yes
slave_sql_running:yes
seconds_behind_master 0

2.主从复制原理

MySQL 主从复制及原理
从库生成两个线程,一个I/O线程,一个SQL线程;

i/o线程去请求主库 的binlog,并将得到的binlog日志写到relay log(中继日志) 文件中;
主库会生成一个 log dump 线程,用来给从库 i/o线程传binlog;

SQL 线程,会读取relay log文件中的日志,并解析成具体操作,来实现主从的操作一致,而最终数据一致;

相关内容

热门资讯

【第一财经】“福建麻将到底是不... 家人们!今天小编来为大家解答福建麻将透视挂怎么安装这个问题咨询软件客服徽4282891的挂在哪里买很...
玩家最新攻略“新道游牛牛究竟有... 您好:新道游牛牛这款游戏可以开挂,确实是有挂的,需要了解加客服微信【9752949】很多玩家在这款游...
今日重大发现“三三麻将辅助器?... 网上科普关于“三三麻将有没有挂”话题很是火热,小编也是针对三三麻将作*弊开挂的方法以及开挂对应的知识...
终于懂了“全民竞技是不是有挂?... 有 亲,根据资深记者爆料全民竞技是可以开挂的,确实有挂(咨询软件无需打开...
我来教教您“黑桃A真的有挂吗?... 您好:黑桃A这款游戏可以开挂,确实是有挂的,需要了解加客服微信【9752949】很多玩家在这款游戏中...
最新引进“成就联盟真的有挂吗?... 您好:成就联盟这款游戏可以开挂,确实是有挂的,需要了解加客服微信【9784099】很多玩家在这款游戏...
我来教教您“k3k吴江麻将真的... 网上科普关于“k3k吴江麻将有没有挂”话题很是火热,小编也是针对k3k吴江麻将作*弊开挂的方法以及开...
我来教教您“牌乐门麻将辅助器?... 网上科普关于“牌乐门麻将有没有挂”话题很是火热,小编也是针对牌乐门麻将作*弊开挂的方法以及开挂对应的...
今日重磅消息“人海牛牛怎么开挂... 今日重磅消息“人海牛牛怎么开挂?”(太坑了原来有挂)您好,人海牛牛这个游戏其实有挂的,确实是有挂的,...
今日重大发现“乐易四川麻将怎么... 您好:乐易四川麻将这款游戏可以开挂,确实是有挂的,需要了解加客服微信【4282891】很多玩家在这款...