版本升级--自测

从库

------------

停止主从复制

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版本升级源码方式及恢复主主复制的更多相关文章

  1. 源码方式安装mysql5.5

    mysql5.5开始,源码配置编译工具configure变成了cmake,所以先要去把cmake装上.并安装make,bison,cmake,gcc-c++,ncurses的包 去http://www ...

  2. 烂泥:mysql5.5数据库cmake源码编译安装

    本文由秀依林枫提供友情赞助,首发于烂泥行天下. 以前也写过一篇有关mysql5.0源码编译的文章,该文章为<烂泥:mysql5.0数据库源码编译安装>.但是MySQL自5.5版本以后,就开 ...

  3. 第6章 RTX 操作系统源码方式移植

    以下内容转载自安富莱电子: http://forum.armfly.com/forum.php 本章教程为大家将介绍 RTX 操作系统源码方式移植,移植工作比较简单,只需要用户添加需要的源码文件即可, ...

  4. mysql-5.5 for linux源码安装

    mysql-5.5 for linux源码安装 1.使用Yum安装依赖软件包 # yum install -y gcc gcc-c++ gcc-g77 autoconf automake bison  ...

  5. centos7下源码方式安装gitlab8.9+发送邮件+ldap

    CentOS7下源码方式安装gitlab 环境描述 操作系统: centos7 redis: >=2.8 mysql >=5.5.14 git >=2.7.4 架构设计 一台gitl ...

  6. 源码方式安装 lrzsz 库

    我们都知道安装了lrzsz工具的linux系统环境: 在shell里可以非常方便的上传和下载linux里面的文件: 通常的安装方式: yum install lrzsz sudo apt-get in ...

  7. win10下通过编译源码方式在chrome中成功安装react-devtools开发工具插件

    win10下通过编译源码方式在chrome中成功安装react-devtools开发工具插件   1.去git上下载react-devtools文件到本地,https://github.com/fac ...

  8. 源码方式安装 lrzsz库

    源码方式安装 lrzsz库:https://www.cnblogs.com/cocoajin/p/11731787.html 我们都知道安装了lrzsz工具的linux系统环境,在shell里可以非常 ...

  9. Linux上生产环境源码方式安装配置postgresql12

    1.Linux上源码方式安装postgresql12 01.准备操作系统环境 echo "192.168.1.61 tsepg61" >> /etc/hosts mou ...

随机推荐

  1. NB-IoT不一定最完美 但足以成为决定ofo与摩拜物联网胜负的关键【转】

    转自:http://news.rfidworld.com.cn/2017_11/3d5ed5c5d8cb9949.html 2018年到来之前,如果还不懂物联网,你会被淘汰. 今年1月,工信部< ...

  2. Lua中字符串库中的几个重点函数

    [前言] 在<Lua中的一些库(1)>中也说到了,要对string库的模式匹配进行单独的讲解.对于字符串的处理,对于任何语言的学习来说,都是一个难点,而且也是一个必会的知识点.给你一个字符 ...

  3. MySQL问题汇总

    1.中文乱码 连接设置: 数据库设置:

  4. 【原创】大数据基础之Quartz(1)简介、源代码解析

    一简介 官网 http://www.quartz-scheduler.org/ What is the Quartz Job Scheduling Library? Quartz is a richl ...

  5. 第一章:OEL6.8之虚拟机安装

    一.在   Windows 上安装  VMware Workstation 具体安装请参考<VMware Workstation 15 Pro 永久激活密钥 下载> 二.创建虚拟机 1:选 ...

  6. 《剑指offer》连续子数组的最大和

    本题来自<剑指offer> 反转链表 题目: 思路: C++ Code: Python Code: 总结:

  7. Python学习笔记八

    类的高级用法 多态:   在其他语言,使用的是类的继承. 在python中,不需要指定数据类型. 基于TCP协议的socket通信实现: 类似于打电话的情景. 服务端: 1.买手机 2.插卡 3.开机 ...

  8. [转]安装v2ray,部署手机电脑***

    https://www.coding996.com/digitalocean-build-v2ray-0-1/https://blog.verkey.org/209.html 环境信息 服务器系统:C ...

  9. mysql安装运行(centos)

    http://repo.mysql.com寻找需要的版本 wget -P /opt/downloads http://repo.mysql.com/mysql57-community-release- ...

  10. 工作笔记——使用Jest时遇到的一些问题

    最近公司想要从mocha+karma的前端单元测试方式转换到Jest,然后任务就分配给我了,好吧,在这之前连单元测试是什么都不知道.硬生生的开始写单元测试了,写这篇文章的初衷是因为在配置Jest的过程 ...