为什么MySQL 5.7主库崩溃并切换到备库?
场景:
MySQL主库无故崩溃:判断是IO问题导致。
http://dev.mysql.com/doc/mysql/en/crashing.html 上的手册页包含
可以帮助您找出导致崩溃的原因的信息.
200118 02:11:39 mysqld_safe 现在运行的进程数:0
200118 02:11:39 mysqld_safe mysqld 已重新启动
我的原始 main库.cnf:
# 有关如何更改设置的建议,请参阅
# http://dev.mysql.com/doc/refman/5.7/en/server-configuration - defaults.html
# *** 不要编辑此文件。这是一个模板,在安装过程中将被复制到
# *** 默认位置,并且如果您
# 则会被替换*** 升级到较新版本的 MySQL。
[mysqld]
# 删除前导 # 并设置为最重要数据的 RAM 量
# MySQL 中的缓存。对于专用服务器,从总 RAM 的 70% 开始,否则为 10%。
# innodb_buffer_pool_size = 128M
# 删除前导 # 以打开非常重要的数据完整性选项:日志记录 p>
# 备份之间二进制日志的更改。
# log_bin
# 这些是常用设置,删除 # 并根据需要设置。
# basedir = .....
# datadir = .....
# port = ... ..
# server_id = . ....
#套接字=.....
basedir=/usr/local/mysql
datadir=/data/bak1
socket=/tmp/mysql.sock
server-id =11224722
default_password_lifetime=0
log-bin=/data/bak1/ mysql-bin2
expire_logs_days = 1
max_binlog_size =600M
binlog_format = MIXED
#max_allowed_packet =1*1024*1024*1024
max_allowed_packet =1024M
event_scheduler = 1
事务隔离=READ-C已省略
max_connections=5000
innodb_buffer_pool_size = 80G
# 删除前导 # 以设置主要对报告服务器有用的选项。
#服务器默认值对于事务和快速选择来说更快。
# 根据需要调整大小,通过实验找到最佳值。
# join_buffer_size = 128M
# sort_buffer_size = 2M
# read_rnd_buffer_size = 2M
sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES
1.确保所有中继日志都已更新,并执行stop Slave io_thread;显示进程列表;在每个从库上。
直到看到Has read all relay log,则表示从库已经更新。全部已被处决。
2.登录所有从库,查看master.info文件,比较后选择pos最大的作为新的主库,这里我们选择192.168.112.10作为新的主库。
3.登录192.168.112.10,执行stop Slave;并进入数据库目录,删除e master.info和relay-log.info文件,并配置my.cnf文件,
p>
启用log-bin。如果有log-slaves-updates并且是只读的,将其注释掉并执行reset master。
新主库的my.cnf:
[mysqld]
#datadir=/var/lib/mysql
# socket =/var/lib/mysql/mysql.sock
datadir=/data/db
socket=/tmp/mysql.sock
服务器ID = 111210
log-bin = /data/db/mysql-bin.log
# binlog_format = MIXED
#relay-log = rep_relay_log1
#relay-log-index=rep_relay_log1
#log-error=/data/bak/mysqld1.err
#skip-slave-start = 1
>default_password_lifetime=0
# binlog-ignore-db=mysql
#expire_logs_days =7
max_connections = 2000
# user=mysql
# 建议禁用符号链接以防止各种安全风险
#symbolic-links=0
max_allowed_packet =1024M
#master_info_repository=表
#relay_log_info_repository=表
#relay_log_recovery=1
p>#transaction-isolation = READ-COMMITTED
sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES
[mysqld_safe]
log -error=/var/log /mysqld.log
pid-file=/var/run/mysqld/mysqld.pid
4.显示主状态;查询主数据库状态。
好的。
以上就是小编给大家分享的关于MySQL 5.7主库崩溃、备份数据库切换的原因。如果你正好有类似的疑惑,不妨参考上面的分析来了解一下。如果您想了解更多相关知识,请关注行业资讯频道。
2. 本站积分货币获取途径以及用途的解读,想在本站混的好,请务必认真阅读!
3. 本站强烈打击盗版/破解等有损他人权益和违法作为,请各位会员支持正版!
4. 编程技术 > 为什么MySQL 5.7主库崩溃并切换到备库?