mysql5.7主从同步配置 centos7(简洁步骤)

mysql5.7主从同步配置 centos7(简洁步骤)

1.主机配置

[mysqld]
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
# Disabling symbolic-links is recommended to prevent assorted security risks
symbolic-links=0
# Settings user and group are ignored when systemd is used.
# If you need to run mysqld under a different user or group,
# customize your systemd unit file for mariadb according to the
# instructions in http://fedoraproject.org/wiki/Systemd
 
transaction-isolation = READ-COMMITTED
key_buffer_size = 32M
max_allowed_packet = 32M
thread_stack = 256k
thread_cache_size = 64
query_cache_limit = 8M
query_cache_size = 64M
query_cache_type = 1
max_connections = 550
 
server-id = 1
log_bin = /var/lib/mysql/mysql_master.log
binlog_format = mixed
read_buffer_size = 2M
read_rnd_buffer_size = 16M
sort_buffer_size = 8M
join_buffer_size = 8M
 
innodb_file_per_table = 1
innodb_flush_log_at_trx_commit = 2
innodb_log_buffer_size = 64M
innodb_buffer_pool_size = 4G
innodb_thread_concurrency = 8
innodb_flush_method = O_DIRECT
innodb_log_file_size = 512M
 
character_set_server = utf8
 
[client]
 
[mysqld_safe]
log-error=/var/log/mysql/mysql.log
pid-file=/var/run/mysql/mysql.pid
sql_mode=STRICT_ALL_TABLES
 
 
#
# include all files from the config directory
#
!includedir /etc/my.cnf.d

注意
server-id = 1
log_bin = /var/lib/mysql/mysql_slave.log

2.从机配置

[mysqld]
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
# Disabling symbolic-links is recommended to prevent assorted security risks
symbolic-links=0
# Settings user and group are ignored when systemd is used.
# If you need to run mysqld under a different user or group,
# customize your systemd unit file for mariadb according to the
# instructions in http://fedoraproject.org/wiki/Systemd
 
transaction-isolation = READ-COMMITTED
key_buffer_size = 32M
max_allowed_packet = 32M
thread_stack = 256k
thread_cache_size = 64
query_cache_limit = 8M
query_cache_size = 64M
query_cache_type = 1
max_connections = 550
 
server-id = 2
log_bin = /var/lib/mysql/mysql_slave.log
binlog_format = mixed
read_buffer_size = 2M
read_rnd_buffer_size = 16M
sort_buffer_size = 8M
join_buffer_size = 8M
 
innodb_file_per_table = 1
innodb_flush_log_at_trx_commit = 2
innodb_log_buffer_size = 64M
innodb_buffer_pool_size = 4G
innodb_thread_concurrency = 8
innodb_flush_method = O_DIRECT
innodb_log_file_size = 512M
 
character_set_server = utf8
 
[client]
 
[mysqld_safe]
log-error=/var/log/mysql/mysql.log
pid-file=/var/run/mysql/mysql.pid
sql_mode=STRICT_ALL_TABLES
 
 
#
# include all files from the config directory
#
!includedir /etc/my.cnf.d

注意
server-id = 2
log_bin = /var/lib/mysql/mysql_slave.log

3.主从设置(主机)

  • 登陆主机 mysql
mysql -uroot -p
  • 创建同步专用账号
grant replication slave on *.* to 'repl'@'%' identified by '123456';
  • 查看状态
    查看主机master状态
show master status;

在这里插入图片描述

4.主从设置(从机)

  • 登陆从节点mysql(root角色)
mysql -uroot -p
  • 执行主从设置
change master to  master_host='192.168.6.6' ,master_user='repl',  master_password='123456',master_port=3306,master_log_file='mysql_master.000001',master_log_pos=578;

注意:
master_log_file、master_log_pos就是master的file、position

  • 起动从机
start slave;
  • 查看同步状态
show slave status \G;

在这里插入图片描述

常见问题

常见问题:Slave_SQL_Running = NO
这个需要重新从0开始同步主库与从库,操作如下:

master

#登陆mysql
mysql -uroot -p

RESET MASTER;
FLUSH TABLES WITH READ LOCK;
SHOW MASTER STATUS;
EXIT;

mysqldump -u root -p --all-databases > mysqldump.sql

#再次登陆mysql,执行解锁
mysql -uroot -p

UNLOCK TABLES;

slave

#导入数据
mysql -uroot -p < mysqldump.sql
# 进入mysql 执行
mysql -uroot -p

RESET SLAVE;
CHANGE MASTER TO master_host='192.168.88.203',\
                        master_user='repl',\
                        master_password='123456',\
                        MASTER_LOG_FILE='mysql-bin.000001', MASTER_LOG_POS=98;
START SLAVE;
SHOW SLAVE STATUS;
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/100393.html原文链接:https://javaforall.net

(0)
上一篇 2021年5月13日 下午12:00
下一篇 2021年5月13日 下午1:00


相关推荐

  • [Elasticsearch]如何通过python操作ES数据库 pythonElasticsearch入门

    [Elasticsearch]如何通过python操作ES数据库 pythonElasticsearch入门[Elasticsearch]如何通过python操作ES数据库pythonElasticsearchElasticsearch基本介绍Elasticsearch入门安装与启动python操作ES数据库连接ES数据库无用户名密码状态有密码创建索引(ES中的索引即数据库)插入数据单条数据多条数据查询数据查询结果返回参数各字段含义最直接的查询方法用body指定条件模糊查询term精确查询multi_match,多字段查询prefix,前缀查询wildcard,通配符查询regexp,正则匹配bool,多条

    2022年5月8日
    313
  • 自旋锁、互斥锁和信号量

    自旋锁、互斥锁和信号量自旋锁 Linux 内核中最常见的锁是自旋锁 spinlock 自旋锁最多只能被一个可执行线程持有 如果一个执行线程试图获得一个被已经持有的自旋锁 那么该线程就会一直进行忙循环 旋转 等待锁重新可用 要是锁未被争用 请求锁的执行线程便能立刻得到它 继续执行 在任意时间 自旋锁都可以防止多于一个的执行线程同时进入临界区 同一个锁可以用在多个位置 例如 对于给定数据的所有访问都可以得到保护和同

    2026年3月18日
    2
  • JVM内存模型详解「建议收藏」

    JVM内存模型详解「建议收藏」笔记大纲1、jvm内存结构图2、jvm按照线程共享和私有内存区域划分结构图3、堆和栈在功能、内存大小、线程共享私有进行比较4、JVM运行结构图5、线程安全本质时序图6、jdk6、7、8三个版本内存模型比较7、jdk1.8为什么将方法区移除到本地内存8、jvm内存启动参数详解JVM内存结构图(JDK1.6)多线程共享内存区域:方法区、堆。每一个线程独享内存:java栈、本地方法栈、程序计数器。程序计…

    2022年6月4日
    35
  • flex和圣杯布局「建议收藏」

    flex和圣杯布局「建议收藏」flex和圣杯布局

    2022年4月20日
    84
  • ssh sftp端口_sftp端口号是多少

    ssh sftp端口_sftp端口号是多少ssh/sftp默认端口是22.开通网络策略时,多会因为安全问题产生不便,所以需要修改端口。与其说是修改,不如说是增加,以增加2222端口为例。方法如下:修改ssh配置文件/etc/ssh/ssh_config及/etc/ssh/sshd_config将Port22前面的#放开,并在下面添加Port2222执行命令使配置生效servicesshdrestart检查是否生效sftp-P2222ip…

    2025年11月17日
    5
  • CAS原理图_cas机制原理

    CAS原理图_cas机制原理cas原理流程图

    2022年8月31日
    7

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号