APP下载

钢铁企业Oracle数据库运维的深度应用

2020-12-28陈利平

消费电子 2020年5期
关键词:集群

陈利平

【关键词】Oracle 数据迁移 集群

1. 引言

Oracle 数据库是钢铁企业普遍使用的一种大型数据库系统,作为数据库基础管理层面的运维管理,是保证数据库系统稳定且高性能运行的重要环节。运维管理包括操作系统层面,和数据库系统层面。操作系统层面的数据库备份,数据库迁移,集群管理,以及基础运维监控,是钢铁企业在Oracle 运维管理方面重要的部分。

2. 自带备份功能应用

备份是数据库运维管理中重要的项目,Oracle 数据库系统自带了强大的备份管理功能,利用这些自带的功能,结合操作系统的计划任务,就可以完整的实现企业需要的备份需求。实现Oracle 数据库的备份,主要是通过RMAN 备份,以及数据泵的导出功能,在有条件的企业,建议每个月做一次完整的数据库离线备份。

RMAN 备份是Oracle 自带的专用的备份,许多的备份软件,实际上也是调用RMAN 的备份接口,结合备份软件的自动化管理功能,实现数据库的备份。在不使用备份软件的情况下,利用操作系统的计划任务,结合OracleRMAN 的備份脚本,可以实现完整的备份功能,包括规定时间窗口和时间周期下的,数据库的完整在线备份,增量备份,以及差异备份。实现归档日志和数据库备份的保留时间周期规划,自动删除归档日志,自动删除归档日志备份和数据库备份。

数据泵技术主要是实现数据库中的数据的移动,具备逻辑备份和逻辑恢复的能力,通过操作系统层面计划任务,调用数据泵导出的方式,可以实现基础的数据库备份功能,在操作系统的脚本中,对数据泵的导出文件进行定期的删除,实现数据库备份的周期管理。

3. 数据迁移应用

3.1 异构平台迁移

Oracle 的异构平台数据库迁移,主要是Unix,Linux,Windows 之间的互相迁移。钢铁企业在信息化建设的过程中,从最初的大规模使用Windows 平台,逐渐的将业务迁移到Unix 和Linux 平台;近几年,由于Unix 小型机平台的成本较高,同时由于OracleRAC 技术的成熟和普及,在Unix 平台上的Oracle 数据库系统,开始迁移到Linux 系统平台上;随着虚拟化的普及,Oracle 数据库系统也发展到了虚拟化平台,但是虚拟化平台上的相应的操作系统,主要还是使用Linux 系统。

在异构平台迁移时,可以使用数据泵的导入导出功能,DataGuard(数据卫士),RMANConvert,以及按照数据库中表的内容传输,等。DataGuard 是独立的产品,主要应用的手段还是数据泵和RMAN 两种技术。

数据泵的方式,由于是运行在服务器端,可以做到一定程度的版本兼容性,但是,仍然要明确Oracle 官方的兼容性说明。用数据泵的方式,为了保证数据的一致性,数据库需要处于离线状态。数据泵是逻辑上的数据移动,可以确保异构平台的数据迁移的兼容性。

RMAN 备份迁移数据库的方式,需要用到CONVERT 转换参数,使用跨平台传输表空间,平台之间可以是不同的字节顺序,即ENDIAN_FORMAT。当源平台和目的地平台的字节顺序不同,源平台要传输表空间下的数据文件的字节存储顺序,需要转换成和目的平台字节顺序相同。

3.2 同构平台迁移

同构平台的迁移,仍然可以通过数据泵,RMAN 来进行。在离线的情况下,Unix 和Linux 的同构平台迁移,可以直接使用拷贝数据库文件的方式进行。同构平台的迁移,在相同Oracle 版本的前提下,不存在数据库的兼容性问题。

3.3RAC 架构迁移

Oracle 数据库在采用RAC 集群时,会使用ASM(自动存储管理)来实现磁盘卷的管理。ASM 提供了以平台无关的文件系统、逻辑卷管理以及软RAID 服务。由于数据库文件存储在ASM 卷组中,给RAC 系统的迁移带来了较大的困难。RAC 系统架构的数据库迁移,一般使用数据泵或RMAN 的方式,而目标数据库需要完整搭建后,将数据库的内容迁移到搭建好的空数据库环境里。

3.4 测试环境搭建

测试环境的搭建,由于对数据环境的一致性要求没有那么高,可以在不停数据库的情况下,使用数据泵或RMAN 的方式。测试环境,一般对系统稳定性的要求不会太高,有时为了达到尽快测试的目的,会将测试系统搭建在虚拟化平台、性能不高的PC 服务器,或者性能较好的台式电脑上。测试环境的操作系统,一般会选用Linux 或Windows,以单机的方式运行。钢铁企业的实际情况,多数以UNIX 或Linux 下的RAC 架构到Windows 或Linux 的单机架构为主也有单机生产数据库到单机测试数据库的情况。RAC 数据库到单机数据库的测试环境搭建,一般都会使用数据泵在线导出的方式,而不会去使用RMAN 转换字节顺序的方式。

4. 集群环境下的应用

Oracle 数据库系统的集群环境,包括两种主要的架构,RAC 集群和操作系统级的双机热备架构。操作系统级的双机热备架构,同时只能有一个主应用在线,另一个应用处于热备状态,底层的数据库文件,同时只能被一个应用系统读写。RAC 集群的底层数据库是同时共享给上层的应用系统,应用系统可以有多个,并且可以实现负载均衡的同时读写。所以,在钢铁企业的重要的核心业务系统上,普遍使用的是Oracle的RAC 集群架构。

在关闭OracleRAC 数据库时, 如果是逐个通过SHUTDOWN 命令关闭数据库节点,必须每个节点都执行SHUTDOWN 操作,不然数据库实际上只在执行了命令的节点停下来,其他没有执行命令的节点,并没有完全停下来。所以要所有的节点都执行SHUTDOWN 命令才可以。

在RAC 集群管理时,主要用到CRSCTL 和SRVCTL 两个命令,CRSCTL 命令,是用于集群层的管理;而SRVCTL命令,是用于集群层之下,集群内的各项服务资源的管理。

操作系统级的双机集群,在实现上有两种方式,一种是不使用RAC 架构的双机热备,一种是RAC 架构和双机热备结合方式。RAC 和双机热备结合的方式,不推荐使用,因为多了一层操作系统级的资源的调度,而实际上RAC 本身已经具备了强大的集群能力。单纯操作系统级的双机热备,直接利用集群软件的管理功能即可,但由于同时只有一个节点在线,会浪费一个节点的硬件资源,并且节点切换时会有时间的损失。

在使用RAC 架构和双机热备结合的方式时,需要明确操作系统级的双机切换脚本的资源控制,配置为双机启动后,可以实现在硬件节点启动后,自动的以Oracle 数据库RAC资源启动的方式,全自动化的启动数据库。

5. 结束语

数据已经成为钢铁企业的核心资源,数据库作为存储数据的重要载体,已经成为钢铁企业的核心基础平台。深入掌握钢铁企业普遍使用的Oracle 数据库系统,将Oracle 数据库系统稳定、可靠、高效的特点充分的发挥,为钢铁企业信息化建设奠定牢固的基础。

猜你喜欢

集群
海上小型无人机集群的反制装备需求与应对之策研究
一种无人机集群发射回收装置的控制系统设计
Python与Spark集群在收费数据分析中的应用
对构建智慧产业集群的几点思考
中华医学会医学期刊集群化发展的模式分析