CN105912596B - 一种操作数据库的方法和装置 - Google Patents
一种操作数据库的方法和装置 Download PDFInfo
- Publication number
- CN105912596B CN105912596B CN201610206311.2A CN201610206311A CN105912596B CN 105912596 B CN105912596 B CN 105912596B CN 201610206311 A CN201610206311 A CN 201610206311A CN 105912596 B CN105912596 B CN 105912596B
- Authority
- CN
- China
- Prior art keywords
- container
- database
- image
- target
- mirror image
- 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.)
- Active
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/21—Design, administration or maintenance of databases
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/21—Design, administration or maintenance of databases
- G06F16/214—Database migration support
Abstract
本发明公开一种操作数据库的装置和方法。装置包括:数据库部署装置,其被配置成执行:制作数据库容器镜像,并且将该镜像存入镜像仓库,从该镜像仓库中获取一个或多个目标数据库容器镜像,然后将该一个或多个目标数据库容器镜像批量发送到一个或者多个目标服务器上,使用目标数据库容器镜像初始化容器,其中,该容器定义数据库的运行环境,基于该容器启动数据库来完成数据库的部署。
Description
技术领域
本发明的实施例涉及操作数据库的方法和装置。
背景技术
传统的数据库部署管理方式有以下缺陷:
无法对数据库运行时的计算资源进行隔离,导致在同主机上的数据库之间互相干扰、无法在一台主机上部署太多数据库。
没有办法方便有效地在同一台主机上部署不同版本的数据库,导致数据库软件版本兼容性差。
发明内容
一种操作数据库的方法,包括:制作数据库容器镜像,并且将该镜像存入镜像仓库,从该镜像仓库中获取一个或多个目标数据库容器镜像,然后将该一个或多个目标数据库容器镜像批量发送到一个或者多个目标服务器上,使用目标数据库容器镜像初始化容器,其中,该容器定义数据库的运行环境,基于该容器启动数据库来完成数据库的部署。
一种操作数据库的装置,包括:数据库部署装置,其被配置成执行:制作数据库容器镜像,并且将该镜像存入镜像仓库,从该镜像仓库中获取一个或多个目标数据库容器镜像,然后将该一个或多个目标数据库容器镜像批量发送到一个或者多个目标服务器上,使用目标数据库容器镜像初始化容器,其中,该容器定义数据库的运行环境,基于该容器启动数据库来完成数据库的部署。
当结合附图阅读以下描述时也将理解本发明的实施例的其它特征和优势,其中附图借助于实例示出了本发明的实施例的原理。
附图说明
图1是根据本发明一个实施例的操作数据库的装置的示意图。
图2是根据本发明一个实施例的使用操作数据库的装置的示意图。
具体实施方式
在下文中,将结合实施例描述本发明的原理。应当理解的是,给出的实施例只是为了本领域技术人员更好地理解并且实践本发明,而不是限制本发明的范围。本说明书中包含许多具体的实施细节不应被解释为对发明的范围或可能被要求保护的范围的限制,而是应该被视为特定于实施例的描述。在各实施例的上下文描述的特征可被组合在单一实施例中来实施。在单一实施例的上下文中描述的特征可在多个实施例来实施。
图1是根据本发明一个实施例的操作数据库的装置的示意图。如图所示,该装置可以包括四个功能模块,分别是数据库部署装置、数据库资源管理装置、数据库迁移装置、数据库升级装置。
数据库部署装置,其被配置成执行:制作数据库容器镜像,并且将该镜像存入镜像仓库,从该镜像仓库中获取一个或多个目标数据库容器镜像,然后将该一个或多个目标数据库容器镜像批量发送到一个或者多个目标服务器上,使用目标数据库容器镜像初始化容器,其中,该容器定义数据库的运行环境,基于该容器启动数据库来完成数据库的部署。在该实施例中,将数据库的介质以及运行环境封装在容器里面,但将数据库的数据存储在容器之外。也就是说,容器不存储数据库的数据(例如,表数据),这样可以确保数据不会因为容器异常导致数据丢失。数据库的介质可以包括数据库按照软件和配置参数文件。运行环境可以包含参数配置。
数据库资源管理装置,其被配置成执行:调整用于容器的计算资源。
数据库迁移装置,其被配置成执行:在第一服务器上部署数据库容器镜像,使用该数据库容器镜像初始化第一容器,停止并删除第二服务器上的第二容器,将与该第二容器关联的数据存储链接至所述第一服务器和所述第一容器,其中,所述第二容器与所述第一容器相同;启动所述第一容器来完成数据库迁移。
数据库升级装置,其被配置成执行:停止并删除第一容器,与该第一容器对应的第一数据库容器镜像,重新部署第二数据库容器镜像,并且根据该第二数据库容器镜像初始化第二容器,将与该第一容器关联的数据存储链接到所述第二容器,其中,所述第二容器是所述第一容器的升级版本。启动所述第二容器来完成数据库版本升级。这里,将与该第一容器关联的数据存储链接到所述第二容器可以通过结合存储和操作系统完成的对于SAN存储的操作来实现。具体地,可以将SAN存储从一台服务器断开重新分配给另外一台服务器,这能够通过SAN存储操作命令和操作系统命令完成。
上述实施例可在硬件、软件或其组合中来实施。但很好理解的是,这里描述的这些装置可在作为非限制性实例的系统中被实现为功能模块。此外,上述装置不应被理解为要求在所有的实施例中进行这种分离,而应该被理解为所描述的程序组件和系统通常可以被集成在单一的软件产品中或打包成多个软件产品。
图2是根据本发明一个实施例的使用操作数据库的装置的示意图。如上所述的数据库部署装置、数据库资源管理装置、数据库迁移装置、数据库升级装置可以被设置在图2的容器管理服务器中。如图2所示,容器管理服务器可以访问镜像仓库,图中示例性地示出了数据库容器镜像A和B。容器管理服务器还可以与第一服务器、第二服务器通信,例如向第一服务器发送数据库容器镜像A,向第二服务器发送数据库容器镜像B。容器管理服务器还可以基于数据库容器镜像A初始化容器A1、A2,基于数据库容器镜像B初始化容器B1、B2。在各个实施例中,被初始化的容器规定的数据库介质、运行环境、或者其它配置参数。
在一些实施例中,利用容器管理服务器同时向多个服务器发送相同的数据库容器镜像,来实现快速部署。在一些实施例中,利用容器管理服务器同时向一个服务器发送不同的数据库容器镜像,来实现多版本部署。此外,还可以利用容器本身具有的完整的资源隔离特性,对单个容器的计算资源进行动态调整。
可以利用容器技术Docker制作不同版本和不同配置参数的数据库容器镜像。然后入库镜像仓库由容器管理服务器进行同一管理。容器管理服务器能够从仓库获取不同版本的数据库容器镜像推送至需要部署数据库的服务器上,然后在此数据库容器镜像的基础上启动一个或多个数据库容器,由此可以快速实现数据库的大规模标准化部署、管理及运维,同时可以快速方便实现对数据库的版本替换以及迁移升级等维护管理。
根据本发明一个实施例的操作数据库的方法包括以下过程的一个或多个。
(1)制作数据库容器镜像,并且将该镜像存入镜像仓库,从该镜像仓库中获取一个或多个目标数据库容器镜像,然后将该一个或多个目标数据库容器镜像批量发送到一个或者多个目标服务器上,使用目标数据库容器镜像初始化容器,其中,该容器定义数据库的运行环境,基于该容器启动数据库来完成数据库的部署。
(2)调整用于容器的计算资源。
(3)在第一服务器上部署数据库容器镜像,使用该数据库容器镜像初始化第一容器,停止并删除第二服务器上的第二容器,将与该第二容器关联的数据存储链接至所述第一服务器和所述第一容器,其中,所述第二容器与所述第一容器相同;启动所述第一容器来完成数据库迁移。
(4)停止并删除第一容器,与该第一容器对应的第一数据库容器镜像,重新部署第二数据库容器镜像,并且根据该第二数据库容器镜像初始化第二容器,将与该第一容器关联的数据存储链接所述第二容器,其中,所述第二容器是所述第一容器的升级版本,启动所述第二容器来完成数据库版本升级。
上述各个过程可被视为方法步骤、和/或被视为由于运行计算机程序代码而导致的操作、和/或被视为构建为实施相关功能的多个耦合的逻辑电路元件。
相关领域的技术人员当结合附图阅读前述说明书时,对本发明的前述示例性实施例的各种修改和变形对于相关领域的技术人员会变得明显。因此,本发明的实施例不限于所公开的特定实施例,并且变形例和其它实施例意在涵盖在所附权利要求的范围内。
Claims (6)
1.一种操作数据库的方法,其特征在于,包括:
制作数据库容器镜像,并且将该镜像存入镜像仓库,
从该镜像仓库中获取一个或多个目标数据库容器镜像,然后将该一个或多个目标数据库容器镜像批量发送到一个或者多个目标服务器上,使用目标数据库容器镜像初始化容器,其中,该容器定义数据库的运行环境,
基于该容器启动数据库来完成数据库的部署,
在第一服务器上部署数据库容器镜像,使用该数据库容器镜像初始化第一容器,
停止并删除第二服务器上的第二容器,将与该第二容器关联的数据存储链接至所述第一服务器和所述第一容器,其中,所述第二容器与所述第一容器相同;
启动所述第一容器来完成数据库迁移。
2.如权利要求1所述的方法,其特征在于,还包括:
调整用于容器的计算资源。
3.如权利要求1所述的方法,其特征在于,还包括:
停止并删除第一容器,与该第一容器对应的第一数据库容器镜像,
重新部署第二数据库容器镜像,并且根据该第二数据库容器镜像初始化第二容器,将与该第一容器关联的数据存储链接所述第二容器,其中,所述第二容器是所述第一容器的升级版本,
启动所述第二容器来完成数据库版本升级。
4.一种操作数据库的装置,其特征在于,包括:数据库部署装置,其被配置成执行:
制作数据库容器镜像,并且将该镜像存入镜像仓库,
从该镜像仓库中获取一个或多个目标数据库容器镜像,然后将该一个或多个目标数据库容器镜像批量发送到一个或者多个目标服务器上,使用目标数据库容器镜像初始化容器,其中,该容器定义数据库的运行环境,
基于该容器启动数据库来完成数据库的部署,
还包括:数据库迁移装置,其被配置成执行:
在第一服务器上部署数据库容器镜像,使用该数据库容器镜像初始化第一容器,
停止并删除第二服务器上的第二容器,将与该第二容器关联的数据存储链接至所述第一服务器和所述第一容器,其中,所述第二容器与所述第一容器相同;
启动所述第一容器来完成数据库迁移。
5.如权利要求4所述的装置,其特征在于,还包括:数据库资源管理装置,其被配置成执行:
调整用于容器的计算资源。
6.如权利要求4所述的装置,其特征在于,还包括:数据库升级装置,其被配置成执行:
停止并删除第一容器,与该第一容器对应的第一数据库容器镜像,
重新部署第二数据库容器镜像,并且根据该第二数据库容器镜像初始化第二容器,将与该第一容器关联的数据存储链接所述第二容器,其中,所述第二容器是所述第一容器的升级版本,
启动所述第二容器来完成数据库版本升级。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610206311.2A CN105912596B (zh) | 2016-04-05 | 2016-04-05 | 一种操作数据库的方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610206311.2A CN105912596B (zh) | 2016-04-05 | 2016-04-05 | 一种操作数据库的方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105912596A CN105912596A (zh) | 2016-08-31 |
CN105912596B true CN105912596B (zh) | 2019-12-24 |
Family
ID=56745266
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610206311.2A Active CN105912596B (zh) | 2016-04-05 | 2016-04-05 | 一种操作数据库的方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105912596B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107016059A (zh) * | 2017-03-10 | 2017-08-04 | 北京聚睿智能科技有限公司 | 一种数据库集群部署方法、装置及物理服务器 |
CN108040080A (zh) * | 2017-11-01 | 2018-05-15 | 镇江千月广告传媒有限公司 | 一种实现能源云服务系统应用模式快速转换的方法 |
CN111796838B (zh) * | 2020-06-30 | 2023-08-11 | 中国工商银行股份有限公司 | Mpp数据库自动部署方法及装置 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102685733B (zh) * | 2012-04-27 | 2016-08-03 | 王兰睿 | 一种用于创建和维护移动台信息镜像数据库的方法和系统 |
CN105119952B (zh) * | 2015-07-07 | 2018-12-21 | 北京京东尚科信息技术有限公司 | 云平台下自动弹性地分配资源的方法和系统 |
CN105245373B (zh) * | 2015-10-12 | 2017-08-04 | 天津市普迅电力信息技术有限公司 | 一种容器云平台系统的搭建及运行方法 |
CN105357296B (zh) * | 2015-10-30 | 2018-10-23 | 河海大学 | 一种Docker云平台下弹性缓存系统 |
-
2016
- 2016-04-05 CN CN201610206311.2A patent/CN105912596B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN105912596A (zh) | 2016-08-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP3353672B1 (en) | Method and apparatus for transferring data between databases | |
CN102799464B (zh) | 虚拟机创建方法及系统、虚拟机重装方法及系统 | |
US10678447B2 (en) | Containerizing a block storage service | |
US9965307B2 (en) | Building virtual appliances | |
US10146942B2 (en) | Method to protect BIOS NVRAM from malicious code injection by encrypting NVRAM variables and system therefor | |
CN109240754B (zh) | 一种配置bios启动项的逻辑器件及方法、系统 | |
CN103412769A (zh) | 外接卡参数配置方法、设备以及系统 | |
US11171824B2 (en) | Configuration of computing devices via containers | |
CN105912596B (zh) | 一种操作数据库的方法和装置 | |
CN107977223B (zh) | 一种配置兼容性检查方法及装置 | |
CN113127150B (zh) | 云原生系统的快速部署方法、装置、电子设备和存储介质 | |
CN106873970B (zh) | 一种操作系统的安装方法和装置 | |
US10901621B2 (en) | Dual-level storage device reservation | |
CN106020837A (zh) | 一种加载机顶盒驱动的方法及系统 | |
JP6975153B2 (ja) | データ格納サービス処理方法及び装置 | |
CN103455346A (zh) | 应用程序部署方法、部署主控机、部署客户端和集群 | |
CN111026455A (zh) | 插件生成方法、电子设备及存储介质 | |
US8539048B2 (en) | Electronic device and method for loading configuration files using the same | |
US20150200805A1 (en) | Dynamic server to server configuration and initialization | |
CN110083366B (zh) | 应用运行环境的生成方法、装置、计算设备及存储介质 | |
CN102541620A (zh) | 无缝应用集成设备和方法 | |
US9158641B2 (en) | Cloud auto-test system, method and non-transitory computer readable storage medium of the same | |
CN108133099B (zh) | 一种基于多分辨率模型框架的仿真系统实现方法 | |
CN113791862A (zh) | 国产CPU和OS环境中基于Docker的java应用瘦身部署方法及系统 | |
US11631011B2 (en) | Automatically remediating storage device issues using machine learning techniques |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |