CN102779191A - 一种MySQL数据库平滑升级的实现系统及实现方法 - Google Patents

一种MySQL数据库平滑升级的实现系统及实现方法 Download PDF

Info

Publication number
CN102779191A
CN102779191A CN2012102294284A CN201210229428A CN102779191A CN 102779191 A CN102779191 A CN 102779191A CN 2012102294284 A CN2012102294284 A CN 2012102294284A CN 201210229428 A CN201210229428 A CN 201210229428A CN 102779191 A CN102779191 A CN 102779191A
Authority
CN
China
Prior art keywords
database
mysql
source
service
data
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN2012102294284A
Other languages
English (en)
Other versions
CN102779191B (zh
Inventor
潘海东
梅春
李丙洋
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Interactive Encyclopedia Network Technology Co.,Ltd.
Beijing ByteDance Network Technology Co Ltd
Original Assignee
Interactive Online (beijing) Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Interactive Online (beijing) Technology Co Ltd filed Critical Interactive Online (beijing) Technology Co Ltd
Priority to CN201210229428.4A priority Critical patent/CN102779191B/zh
Publication of CN102779191A publication Critical patent/CN102779191A/zh
Application granted granted Critical
Publication of CN102779191B publication Critical patent/CN102779191B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明涉及一种MySQL数据库平滑升级的实现系统及实现方法,该方法包括如下步骤:1)初始化中转数据库S;2)配置MySQLReplication复制环境;3)检查源端数据库服务M和目标数据库S的数据一致性;4)执行角色切换,将S切换为新的M;5)清除Replication复制环境。本发明在操作过程对前端应用完全透明,业务也几乎不需要中断,升级操作对于数据库的版本也并不敏感,适用范围更加广泛。

Description

一种MySQL数据库平滑升级的实现系统及实现方法
 
技术领域
本发明涉及数据库升级方法,特别是涉及一种MySQL数据库平滑升级的实现系统及实现方法。
背景技术
 MySQL数据库的升级是一项非常传统的需求,MySQL官方建议的升级方案操作步骤如下:
1)    暂停当前正在运行的MySQL数据库服务;
2)    安装新版本数据库软件;
3)    执行备份任务,创建当前数据库的完整备份,以备恢复;
4)    启动数据库服务:
5)    执行mysql_upgrade升级命令,将数据库中对象更新至新版本;
这种方式操作步骤相对简单,但适用性稍差,首先是MySQL官方的升级脚本对于版本有很多限制条件,例如4.1版本无法直接升级至5.1或更高版本,因此并非所有环境均能直接使用;其次执行升级的过程中必须停止MySQL数据库服务,在此时间段内前端业务也必然受到影响,实际应用场景有限。
发明内容
为改善上述现有技术的不足,本发明提供一种MySQL数据库平滑升级的实现系统及实现方法,以解决数据库升级时需要长时间停止数据库服务的问题。
本发明的目的通过以下技术方案来实现:
一种MySQL数据库平滑升级的实现方法,该方法包括如下步骤:
1)初始化中转数据库S;
2)配置MySQL Replication复制环境;
3)检查源端数据库服务M和目标数据库S的数据一致性;
4)执行角色切换,将S切换为新的M;
5)清除Replication复制环境。
所述初始化中转数据库S主要包括配置初始化操作系统,配置用户和环境变量,安装新目标版本数据库软件,配置MySQL的系统参数,创建数据库服务。
所述配置MySQL Replication复制环境包括利用MySQL Replication特性对源端和中转端进行数据同步,具体步骤为:
201)将源端M配置为Master角色,生成二进制日志;
202)在源数据库服务M端创建一致性备份,并将备份集复制到目标数据库S端执行恢复;
203)将目标数据库S配置为Slave角色,读取M端自备份后新产生的二进制日志,并在本地应用这些日志。
所述检查源端数据库服务M和目标数据库S的数据一致性包括:查看源数据库服务M端二进制日志文件的写入状态和目标数据库S端二进制日志的应用状态,并判断当前源端M和目标端S的数据是否处于一致性状态。
所述执行角色切换,将S切换为新的M具体包括当确认源端M和目标端S数据已处于一致性状态时,执行实际切换操作,具体步骤为:
401)停止源端数据库M的写入操作;
402)收回源端数据库M绑定的对外提供数据库服务的ip;
403)将对外提供服务的ip绑定至目标数据库S端。
本发明的优点在于:
本发明在操作过程对前端应用完全透明,业务也几乎不需要中断,升级操作对于数据库的版本也并不敏感,适用范围更加广泛。
附图说明
图1:本发明升级方法流程图。
具体实施方式
如图1所示为本发明升级方法流程图,本发明所实现的平滑升级方法,涉及的组件有源数据库服务M和中转数据库S,M和S之间数据同步基于MySQL Replication特性进行升级。
具体实施方式如下:
1>.初始化中转数据库S
对中转数据库S进行配置,主要配置工作包括初始化操作系统,配置用户和环境变量,安装新(目标)版本数据库软件,配置MySQL的系统参数,创建数据库服务;
2>. 配置MySQL Replication复制环境
利用MySQL Replication特性对源端和中转端进行数据同步,具体步骤为:
将源端M配置为Master角色,生成二进制日志;
在源数据库服务M端创建一致性备份,并将备份集复制到目标数据库S端执行恢复;
将目标数据库S配置为Slave角色,读取M端自备份后新产生的二进制日志,并在本地应用这些日志。
Replication特性的具体配置步骤多有文档描述,此处略过该项技术的实施细节。
3>. 检查源端数据库服务M和目标数据库S的数据一致性
查看源数据库服务M端二进制日志文件的写入状态,重点关注当前写入的二进制文件名(File项)和写入位置(Position)两个指标,执行命令如下:
mysql> Show master status;
查看目标数据库S端二进制日志的应用状态,执行命令如下:
mysql> Show slave status\G
重点关注目标数据库S端应用状态中下列三项:
Seconds_Behind_Master项,该选项值应为0;
Master_Log_File项,该选项值应与刚刚查看的M端FILE选项值相同;
Read_Master_Log_Pos项,该选项值应不小于刚刚查看的M端POSITION选项值;
上述三个选项的条件全部成立,则表示当前源端M和目标端S的数据处于一致性状态,否则表示数据不同步,需要等待目标端S继续应用日志,直到上面三个选项条件成立。
4>. 执行角色切换,将S切换为新的M
当确认源端M和目标端S数据已处于一致性状态时,就可以执行实际切换操作,具体操作步骤为:
停止源端数据库M的写入操作,在M端执行命令如下:
mysql> Set global read_only=1;
收回源端数据库M绑定的对外提供数据库服务的ip,执行命令如下:
shell> /sbin/ifconfig eth0:35 down
将对外提供服务的ip绑定至目标数据库S端,执行命令如下:
shell> /sbin/ifconfig eth0:35 192.168.1.35 netmask 255.255.255.0 broadcast 192.168.1.255
IP绑定成功后,前端应用就会改为连接目标数据库S端,此时,它也就相当于变成了新的M端,至此就已将对外提供服务的MySQL数据库升级至新版本。
5>. 清除Replication复制环境
检查前端应用及后端的数据库服务,确保各项业务均运行正常,接下来就可以清除升级过程中所做的诸多项中转设置。
首先关闭原M端数据库,执行命令如下:
shell> mysqladmin -uroot -p -........ shutdown
而后清除原M端的数据,可以直接使用rm命令删除相关文件,而后卸载数据库软件。
新的M端执行下列命令清除S身份:
mysql> reset slave。

Claims (5)

1.一种MySQL数据库平滑升级的实现方法,其特征在于,该方法包括如下步骤:
1)初始化中转数据库S;
2)配置MySQL Replication复制环境;
3)检查源端数据库服务M和目标数据库S的数据一致性;
4)执行角色切换,将S切换为新的M;
5)清除Replication复制环境。
2.根据权利要求1所述的一种MySQL数据库平滑升级的实现方法,其特征在于,所述初始化中转数据库S主要包括配置初始化操作系统,配置用户和环境变量,安装新目标版本数据库软件,配置MySQL的系统参数,创建数据库服务。
3.根据权利要求1所述的一种MySQL数据库平滑升级的实现方法,其特征在于,所述配置MySQL Replication复制环境包括利用MySQL Replication特性对源端和中转端进行数据同步,具体步骤为:
201)将源端M配置为Master角色,生成二进制日志;
202)在源数据库服务M端创建一致性备份,并将备份集复制到目标数据库S端执行恢复;
203)将目标数据库S配置为Slave角色,读取M端自备份后新产生的二进制日志,并在本地应用这些日志。
4.根据权利要求1所述的一种MySQL数据库平滑升级的实现方法,其特征在于,所述检查源端数据库服务M和目标数据库S的数据一致性包括:查看源数据库服务M端二进制日志文件的写入状态和目标数据库S端二进制日志的应用状态,并判断当前源端M和目标端S的数据是否处于一致性状态。
5.根据权利要求1所述的一种MySQL数据库平滑升级的实现方法,其特征在于,所述执行角色切换,将S切换为新的M具体包括当确认源端M和目标端S数据已处于一致性状态时,执行实际切换操作,具体步骤为:
401)停止源端数据库M的写入操作;
402)收回源端数据库M绑定的对外提供数据库服务的ip;
403)将对外提供服务的ip绑定至目标数据库S端。
CN201210229428.4A 2012-07-03 2012-07-03 一种MySQL数据库平滑升级的实现系统及实现方法 Active CN102779191B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201210229428.4A CN102779191B (zh) 2012-07-03 2012-07-03 一种MySQL数据库平滑升级的实现系统及实现方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201210229428.4A CN102779191B (zh) 2012-07-03 2012-07-03 一种MySQL数据库平滑升级的实现系统及实现方法

Publications (2)

Publication Number Publication Date
CN102779191A true CN102779191A (zh) 2012-11-14
CN102779191B CN102779191B (zh) 2015-09-02

Family

ID=47124103

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201210229428.4A Active CN102779191B (zh) 2012-07-03 2012-07-03 一种MySQL数据库平滑升级的实现系统及实现方法

Country Status (1)

Country Link
CN (1) CN102779191B (zh)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103500229A (zh) * 2013-10-24 2014-01-08 北京奇虎科技有限公司 一种数据库同步方法和数据库系统
CN104252505A (zh) * 2013-06-29 2014-12-31 北京新媒传信科技有限公司 数据库管理平台中数据库实例的同步方法和装置
CN104598463A (zh) * 2013-10-31 2015-05-06 阿里巴巴集团控股有限公司 用于切换数据库的方法和装置
CN105335361A (zh) * 2014-05-26 2016-02-17 小米科技有限责任公司 数据升级方法和装置
CN107861838A (zh) * 2017-10-18 2018-03-30 福建中金在线信息科技有限公司 自动备份MySQL数据库从库的方法及装置
CN108170464A (zh) * 2017-12-27 2018-06-15 联想(北京)有限公司 一种版本升级方法、服务平台及电子设备
CN110618829A (zh) * 2019-09-20 2019-12-27 中国银行股份有限公司 一种升级数据库系统的业务数据检查方法及系统
CN110879718A (zh) * 2019-11-15 2020-03-13 北京浪潮数据技术有限公司 mariadb升级方法、装置及电子设备和存储介质

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1741664A (zh) * 2004-08-29 2006-03-01 华为技术有限公司 通信设备子系统升级方法
CN1908934A (zh) * 2006-08-02 2007-02-07 华为技术有限公司 一种嵌入式数据库的在线升级控制方法和装置
US20070261049A1 (en) * 2006-05-05 2007-11-08 Microsoft Corporation Techniques to perform gradual upgrades
CN101464888A (zh) * 2008-12-29 2009-06-24 深圳市迈科龙电子有限公司 信息系统平滑升级的装置和方法
CN101876924A (zh) * 2009-04-30 2010-11-03 升东网络科技发展(上海)有限公司 数据库故障自动检测及转移方法
CN101996083A (zh) * 2009-08-21 2011-03-30 中兴通讯股份有限公司 一种镜像升级的方法和装置

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1741664A (zh) * 2004-08-29 2006-03-01 华为技术有限公司 通信设备子系统升级方法
US20070261049A1 (en) * 2006-05-05 2007-11-08 Microsoft Corporation Techniques to perform gradual upgrades
CN1908934A (zh) * 2006-08-02 2007-02-07 华为技术有限公司 一种嵌入式数据库的在线升级控制方法和装置
CN101464888A (zh) * 2008-12-29 2009-06-24 深圳市迈科龙电子有限公司 信息系统平滑升级的装置和方法
CN101876924A (zh) * 2009-04-30 2010-11-03 升东网络科技发展(上海)有限公司 数据库故障自动检测及转移方法
CN101996083A (zh) * 2009-08-21 2011-03-30 中兴通讯股份有限公司 一种镜像升级的方法和装置

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104252505A (zh) * 2013-06-29 2014-12-31 北京新媒传信科技有限公司 数据库管理平台中数据库实例的同步方法和装置
CN104252505B (zh) * 2013-06-29 2017-08-04 北京新媒传信科技有限公司 数据库管理平台中数据库实例的同步方法和装置
CN103500229A (zh) * 2013-10-24 2014-01-08 北京奇虎科技有限公司 一种数据库同步方法和数据库系统
CN103500229B (zh) * 2013-10-24 2017-04-19 北京奇虎科技有限公司 一种数据库同步方法和数据库系统
CN104598463A (zh) * 2013-10-31 2015-05-06 阿里巴巴集团控股有限公司 用于切换数据库的方法和装置
CN104598463B (zh) * 2013-10-31 2018-06-15 阿里巴巴集团控股有限公司 用于切换数据库的方法和装置
CN105335361A (zh) * 2014-05-26 2016-02-17 小米科技有限责任公司 数据升级方法和装置
CN107861838A (zh) * 2017-10-18 2018-03-30 福建中金在线信息科技有限公司 自动备份MySQL数据库从库的方法及装置
CN108170464A (zh) * 2017-12-27 2018-06-15 联想(北京)有限公司 一种版本升级方法、服务平台及电子设备
CN110618829A (zh) * 2019-09-20 2019-12-27 中国银行股份有限公司 一种升级数据库系统的业务数据检查方法及系统
CN110618829B (zh) * 2019-09-20 2023-04-28 中国银行股份有限公司 一种升级数据库系统的业务数据检查方法及系统
CN110879718A (zh) * 2019-11-15 2020-03-13 北京浪潮数据技术有限公司 mariadb升级方法、装置及电子设备和存储介质

Also Published As

Publication number Publication date
CN102779191B (zh) 2015-09-02

Similar Documents

Publication Publication Date Title
CN102779191A (zh) 一种MySQL数据库平滑升级的实现系统及实现方法
US9286052B1 (en) Upgrading software on a pair of nodes in a clustered environment
JP5757509B2 (ja) システム・リセット
US20150261546A1 (en) Baseboard management controller and method of loading firmware
CN103955363A (zh) 一种程序升级安装包的制作方法
TW201415365A (zh) 作業系統更新的方法及手持電子裝置
US10592354B2 (en) Configurable recovery states
KR101730291B1 (ko) 디스크 배신 시스템
CN102693144B (zh) 一种Android移动终端的电容屏固件升级的方法
CN104142847A (zh) 云计算环境下的无状态化虚拟机及其应用
CN105320718B (zh) 同步复制环境中的事务完成
JP5868986B2 (ja) アイテム単位でのリカバリー
CN104935618A (zh) 一种集群部署方法
CN102937909A (zh) 一种部署和更新Linux系统的方法
CN103051689A (zh) 一种程序升级下载方法和装置
JP5665889B2 (ja) サブバージョンリポジトリをバックアップする方法及び装置
CN101872306A (zh) 一种实现软件更新和软件备份的嵌入式系统及其实现方法
CN103984585A (zh) 一种Linux内核可热插拨内核模块运行时升级方法
US20130041868A1 (en) Data synchronization
CN104951348A (zh) 一种可中断的recovery升级方法及装置
US20090070626A1 (en) Methods and systems for operating system bare-metal recovery
US20200349009A1 (en) Information Handling System And Method To Restore System Firmware To A Selected Restore Point
US20200341746A1 (en) Snapshot recovery states
CN104077196A (zh) 一种Linux引导失败的恢复方法及装置
CN103559059A (zh) 一种快速的免介质Linux系统升级方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
C56 Change in the name or address of the patentee
CP03 Change of name, title or address

Address after: 100085 Haidian District on the road to information on the ground floor, building A7F, No. 28, Beijing

Patentee after: BEIJING HUDONG BAIKE NETWORK TECHNOLOGY CO.,LTD.

Address before: 100029 Chaoyang District, the stability of the door outside the court in the town of miracle Plaza, No. 1 Interactive Encyclopedia building, Fortune Plaza, Beijing

Patentee before: Hudong Online (Beijing) Technology Co.,Ltd.

CP01 Change in the name or title of a patent holder

Address after: 100085 Haidian District on the road to information on the ground floor, building A7F, No. 28, Beijing

Patentee after: Beijing Interactive Encyclopedia Network Technology Co.,Ltd.

Address before: 100085 Haidian District on the road to information on the ground floor, building A7F, No. 28, Beijing

Patentee before: BEIJING HUDONG BAIKE NETWORK TECHNOLOGY CO.,LTD.

CP01 Change in the name or title of a patent holder
TR01 Transfer of patent right

Effective date of registration: 20190924

Address after: 100041, room 2, building 3, building 30, Xing Xing street, Shijingshan District, Beijing,

Patentee after: BEIJING BYTEDANCE NETWORK TECHNOLOGY Co.,Ltd.

Address before: 100085 Haidian District on the road to information on the ground floor, building A7F, No. 28, Beijing

Patentee before: Beijing Interactive Encyclopedia Network Technology Co.,Ltd.

TR01 Transfer of patent right