mysql5.7.17版本升级源码方式及恢复主主复制
版本升级--自测
从库
------------
停止主从复制
stop slave
全库备份
mysqldump -u root -p -S mysql.sock --all-databases>/data/mysql/standby/dump.sql
加-R参数可备份函数
备份数据库global variables参数
mysql -uroot -p -Bse "show global variables" > /data/mysql/standby/before_var.cnf
备份my.cnf配置文件
cp standby.cnf standby.cnf.bak
备份basedir目录
mkdir -p /mysqlbackup/basedir_bak
cd /usr/local
tar -cvf mysql.tar mysql
mv *.tar /mysqlbackup/basedir_bak
mkdir -p /mysqlbackup/
mv mysql/ /mysqlbackup/
进入到bin目录关闭mysql服务
cd /mysqlbackup/mysql/bin
设置慢关闭
./mysql -uroot -p -e "SET GLOBAL innodb_fast_shutdown=0;" --socket=/data/mysql/standby/mysql.sock
查看是否设置为0
./mysql -uroot -p --socket=/data/mysql/standby/mysql.sock -e "show global variables like '%fast_shutdown%';"
关闭mysql数据库
./mysqladmin -uroot -p -S /data/mysql/standby/mysql.sock shutdown
记录binlog位置和pos信息
tail -300f /data/mysql/standby/elog/mysql.err
read up to log 'mysql-bin.000001', position 6451
解压软件包
cd /data/mysql
tar -xvf mysql-boost-5.7.21.tar.gz
编译5.7.21版本
cd mysql-5.7.21
cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_DATADIR=/usr/local/mysql/data -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DEXTRA_CHARSETS=all -DENABLED_LOCAL_INFILE=1 -DWITH_BOOST=/data/mysql/mysql-5.7.21/boost
修改版本
[root@rac02 mysql-5.7.21]# cat VERSION
MYSQL_VERSION_MAJOR=5
MYSQL_VERSION_MINOR=7
MYSQL_VERSION_PATCH=99
MYSQL_VERSION_EXTRA=
编译
make && make install
查看是否升级成功
mysql -V
mysql Ver 14.14 Distrib 5.7.99, for Linux (x86_64) using EditLine wrapper
从库起库
/usr/local/mysql/bin/mysqld_safe --defaults-file=/data/mysql/standby.cnf --ledir=/usr/local/mysql/bin &
执行升级脚本
/usr/local/mysql/bin/mysql_upgrade -uroot -p -S /data/mysql/standby/mysql.sock
Enter password:
Checking if update is needed.
Checking server version.
Running queries to upgrade MySQL server.
Checking system database.
mysql.columns_priv OK
mysql.db OK
mysql.engine_cost OK
mysql.event OK
mysql.func OK
mysql.general_log OK
mysql.gtid_executed OK
mysql.help_category OK
mysql.help_keyword OK
mysql.help_relation OK
mysql.help_topic OK
mysql.innodb_index_stats OK
mysql.innodb_table_stats OK
mysql.jzw OK
mysql.jzw2 OK
mysql.jzw3 OK
mysql.jzw4 OK
mysql.ndb_binlog_index OK
mysql.plugin OK
mysql.proc OK
mysql.procs_priv OK
mysql.proxies_priv OK
mysql.server_cost OK
mysql.servers OK
mysql.slave_master_info OK
mysql.slave_relay_log_info OK
mysql.slave_worker_info OK
mysql.slow_log OK
mysql.tables_priv OK
mysql.time_zone OK
mysql.time_zone_leap_second OK
mysql.time_zone_name OK
mysql.time_zone_transition OK
mysql.time_zone_transition_type OK
mysql.user OK
The sys schema is already up to date (version 1.5.1).
Checking databases.
sys.sys_config OK
Upgrade process completed successfully.
Checking if update is needed.
mysql> \s
--------------
mysql Ver 14.14 Distrib 5.7.99, for Linux (x86_64) using EditLine wrapper
Connection id: 5
Current database:
Current user: root@localhost
SSL: Not in use
Current pager: stdout
Using outfile: ''
Using delimiter: ;
Server version: 5.7.99-log Source distribution
Protocol version: 10
Connection: Localhost via UNIX socket
Server characterset: utf8
Db characterset: utf8
Client characterset: utf8
Conn. characterset: utf8
UNIX socket: mysql.sock
Uptime: 5 min 56 sec
Threads: 3 Questions: 2729 Slow queries: 0 Opens: 274 Flush tables: 1 Open tables: 39 Queries per second avg: 7.665
--------------
-------------------------------------------------------------------------------------------------------------------------------------------------------
主库
------------
停止主从复制
stop slave
全库备份
mysqldump -u root -p -S mysql.sock --all-databases>/data/mysql/primary/dump.sql
备份数据库global variables参数
mysql -uroot -p -Bse "show global variables" > /data/mysql/primary/before_var.cnf
备份my.cnf配置文件
cp primary.cnf primary.cnf.bak
备份basedir目录
mkdir -p /mysqlbackup/basedir_bak
cd /usr/local
tar -cvf mysql.tar mysql
mv *.tar /mysqlbackup/basedir_bak
mkdir -p /mysqlbackup/
mv mysql/ /mysqlbackup/
进入到bin目录关闭mysql服务
cd /mysqlbackup/mysql/bin
设置慢关闭
./mysql -uroot -p -e "SET GLOBAL innodb_fast_shutdown=0;" --socket=/data/mysql/primary/mysql.sock
查看是否设置为0
./mysql -uroot -p --socket=/data/mysql/primary/mysql.sock -e "show global variables like '%fast_shutdown%';"
关闭mysql数据库
./mysqladmin -uroot -p -S /data/mysql/primary/mysql.sock shutdown
记录binlog位置和pos信息
tail -300f /data/mysql/primary/elog/mysql.err
read up to log 'mysql-bin.000001', position 6451
解压软件包
cd /data/mysql
tar -xvf mysql-boost-5.7.21.tar.gz
编译5.7.21版本
cd mysql-5.7.21
cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_DATADIR=/usr/local/mysql/data -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DEXTRA_CHARSETS=all -DENABLED_LOCAL_INFILE=1 -DWITH_BOOST=/data/mysql/mysql-5.7.21/boost
修改版本
[root@rac02 mysql-5.7.21]# cat VERSION
MYSQL_VERSION_MAJOR=5
MYSQL_VERSION_MINOR=7
MYSQL_VERSION_PATCH=99
MYSQL_VERSION_EXTRA=
编译
make && make install
查看是否升级成功
mysql -V
mysql Ver 14.14 Distrib 5.7.99, for Linux (x86_64) using EditLine wrapper
从库起库
/usr/local/mysql/bin/mysqld_safe --defaults-file=/data/mysql/primary.cnf --ledir=/usr/local/mysql/bin &
执行升级脚本
/usr/local/mysql/bin/mysql_upgrade -uroot -p -S /data/mysql/primary/mysql.sock
Enter password:
Checking if update is needed.
Checking server version.
Running queries to upgrade MySQL server.
Checking system database.
mysql.columns_priv OK
mysql.db OK
mysql.engine_cost OK
mysql.event OK
mysql.func OK
mysql.general_log OK
mysql.gtid_executed OK
mysql.help_category OK
mysql.help_keyword OK
mysql.help_relation OK
mysql.help_topic OK
mysql.innodb_index_stats OK
mysql.innodb_table_stats OK
mysql.jzw OK
mysql.jzw2 OK
mysql.jzw3 OK
mysql.jzw4 OK
mysql.ndb_binlog_index OK
mysql.plugin OK
mysql.proc OK
mysql.procs_priv OK
mysql.proxies_priv OK
mysql.server_cost OK
mysql.servers OK
mysql.slave_master_info OK
mysql.slave_relay_log_info OK
mysql.slave_worker_info OK
mysql.slow_log OK
mysql.tables_priv OK
mysql.time_zone OK
mysql.time_zone_leap_second OK
mysql.time_zone_name OK
mysql.time_zone_transition OK
mysql.time_zone_transition_type OK
mysql.user OK
The sys schema is already up to date (version 1.5.1).
Checking databases.
sys.sys_config OK
Upgrade process completed successfully.
Checking if update is needed.
mysql> \s
--------------
mysql Ver 14.14 Distrib 5.7.99, for Linux (x86_64) using EditLine wrapper
Connection id: 5
Current database:
Current user: root@localhost
SSL: Not in use
Current pager: stdout
Using outfile: ''
Using delimiter: ;
Server version: 5.7.99-log Source distribution
Protocol version: 10
Connection: Localhost via UNIX socket
Server characterset: utf8
Db characterset: utf8
Client characterset: utf8
Conn. characterset: utf8
UNIX socket: mysql.sock
Uptime: 5 min 56 sec
Threads: 3 Questions: 2729 Slow queries: 0 Opens: 274 Flush tables: 1 Open tables: 39 Queries per second avg: 7.665
--------------
-------------------------------------------------------------------------------------------------------------------------------------------------------
升级完成后恢复主主复制
先做主从复制
------------------------
从库
stop slave;
start slave;
show slave status\G
如果有报错SQL,就要去修正,或者用set GLOBAL SQL_SLAVE_SKIP_COUNTER=1;跳过
反向复制
-----------------------
主库
stop slave;
start slave;
show slave status\G
如果有报错SQL,就要去修正,或者用set GLOBAL SQL_SLAVE_SKIP_COUNTER=1;跳过
同步错误处理
发现mysql slave服务器经常因为一些特殊字符或者符号产生的更新语句报错,整个同步也会因此而卡在那,最初的办法只是手动去出错的机器执行下面三条SQL语句,跳过错误即可。
mysql>slave stop;
mysql>set GLOBAL SQL_SLAVE_SKIP_COUNTER=1;
mysql>slave start;
mysql5.7.17版本升级源码方式及恢复主主复制的更多相关文章
- 源码方式安装mysql5.5
mysql5.5开始,源码配置编译工具configure变成了cmake,所以先要去把cmake装上.并安装make,bison,cmake,gcc-c++,ncurses的包 去http://www ...
- 烂泥:mysql5.5数据库cmake源码编译安装
本文由秀依林枫提供友情赞助,首发于烂泥行天下. 以前也写过一篇有关mysql5.0源码编译的文章,该文章为<烂泥:mysql5.0数据库源码编译安装>.但是MySQL自5.5版本以后,就开 ...
- 第6章 RTX 操作系统源码方式移植
以下内容转载自安富莱电子: http://forum.armfly.com/forum.php 本章教程为大家将介绍 RTX 操作系统源码方式移植,移植工作比较简单,只需要用户添加需要的源码文件即可, ...
- mysql-5.5 for linux源码安装
mysql-5.5 for linux源码安装 1.使用Yum安装依赖软件包 # yum install -y gcc gcc-c++ gcc-g77 autoconf automake bison ...
- centos7下源码方式安装gitlab8.9+发送邮件+ldap
CentOS7下源码方式安装gitlab 环境描述 操作系统: centos7 redis: >=2.8 mysql >=5.5.14 git >=2.7.4 架构设计 一台gitl ...
- 源码方式安装 lrzsz 库
我们都知道安装了lrzsz工具的linux系统环境: 在shell里可以非常方便的上传和下载linux里面的文件: 通常的安装方式: yum install lrzsz sudo apt-get in ...
- win10下通过编译源码方式在chrome中成功安装react-devtools开发工具插件
win10下通过编译源码方式在chrome中成功安装react-devtools开发工具插件 1.去git上下载react-devtools文件到本地,https://github.com/fac ...
- 源码方式安装 lrzsz库
源码方式安装 lrzsz库:https://www.cnblogs.com/cocoajin/p/11731787.html 我们都知道安装了lrzsz工具的linux系统环境,在shell里可以非常 ...
- Linux上生产环境源码方式安装配置postgresql12
1.Linux上源码方式安装postgresql12 01.准备操作系统环境 echo "192.168.1.61 tsepg61" >> /etc/hosts mou ...
随机推荐
- Maven全局配置
Maven的全局配置文件是Maven安装目录conf/settings.xml文件,该文件可以配置仓库.代理.profile.镜像.插件等 <settings> <localRepo ...
- Cookie 判断页面是否为第一次打开 包括刷新
$.cookie = function(e, t, n) { if(arguments.length > 1 && (!/Object/.test(Object.prototyp ...
- SpringBoot配置
多模块Maven项目 .gitignore文件 .idea *.iml targetout log tmp test 父模块pom文件 <?xml version="1.0" ...
- FM算法(二):工程实现
主要内容: 实现方法 Python实现FM算法 libFM 一.实现方法 1.FM模型函数 变换为线性复杂度的计算公式: 2.FM优化目标 根据不同的应用,FM可以采用不同的损失函数loss fu ...
- 金蝶K/3 BOS产品培训教案
K/3 BOS产品培训教案 1 K/3 BOS IDE练习案例... 2 1.1新建基础资料... 2 1.1.1新增基础资料交货地点... 2 1.2新建业务单据... 2 1.2.1新建寄 ...
- Debian Jessie升级至Stretch小记
昨天Debian Stretch正式发布.为了尝新,昨天晚上便从Jessie升到了Stretch.结果,早上起来发现系统已无法进入X视窗环境,且NVIDIA的官方驱动无法成功编译和安装.看来,每次系统 ...
- 02.Control
01.if ''' 제어문 = 조건문(if) + 반복문(while, for) 조건문 기본 형식1) python 블럭 if 조건식 : 실행문 실행문 cf) c언어 블럭 if 조건식 { ...
- java集成swagger
概览: java集成Swagger Swagger-UI的使用 Springboot跨域请求的访问解决 Swagger 是一个规范和完整的框架,用于生成.描述.调用和可视化 RESTful 风格的 W ...
- redis学习(八)——redis应用场景
毫无疑问,Redis开创了一种新的数据存储思路,使用Redis,我们不用在面对功能单调的数据库时,把精力放在如何把大象放进冰箱这样的问题上,而是利用Redis灵活多变的数据结构和数据操作,为不同的大象 ...
- 【Linux】-- 在linux上安装mysql及基本操作
1.MySQL的安装 1.删除mariadb数据库 yum remove mariadb-libs.x86_64 CentOS7默认安装mariadb数据库,所以要先删除 2.下载mysql源 进入m ...