企业虚拟化数据安全策略探讨
2019-08-27徐嘉铭
徐嘉铭
[摘 要]本文利用数据库技术和虚拟化技术相结合的方式,提出了一种基于DataGuard的虚拟化数据库容灾方法,有效解决了企业因提高数据库可用性忽略服务器使用效率的问题,从而降低了企业硬件投入成本,提高了运维效率。
[关键词]数据库同步;DataGuard;高可用
doi:10.3969/j.issn.1673 - 0194.2019.14.038
[中图分类号]TP393.08[文献标识码]A[文章编号]1673-0194(2019)14-00-02
0 引 言
随着现代企业信息技术的飞速发展,企业各种各样的信息系统进行协同办公,这些系统数据都存储在数据库中,作为企业信息化的重要數据支撑。因此,建立一套可靠、有效的安全策略,保证数据的高可用性至关重要。传统数据库分布式容灾系统中最安全的模式是一台数据库服务器作为主机运行,另一台服务器作为备机数据库服务器,备机数据库服务器可以快速恢复某些类型的故障,也就是“1+1模式”。该模式虽然提高了数据库的可用性,但大大增加了企业基础设施投资,不利于企业信息化发展,企业可以利用DataGuard技术和虚拟化技术相结合的方法,解决这一问题。
1 方案设计
使用一台高性能的服务器作为数据库备机,采用微软虚拟技术Hyper-V,建立多套安装备用数据库的虚拟机,同时使用有DataGuard功能的Oracle 11G,作为备用数据库软件。
DataGuard+虚拟机模式的优点主要有以下3条。①成本低。可以在一台服务器上虚拟出多个备机,对应不同主机数据库服务器。②部署快。虚拟机可以在短时间内配置出跟主库同样的存储空间和操作系统的虚拟机服务器,便于安装部署多个Oracle数据库备机。③维护成本低。对维护人员的要求不高,只需知道如何切换主机备机即可。
2 系统实现
该方案主要包括以下两个方面的操作方式:①根据主库数据库服务器配置情况建立虚拟机;②在虚拟机上安装数据库环境,配置DataGuard模式。
2.1 准备工作
首先准备2台数据库服务器、1台虚拟机,微软的Hyper-V Server技术在这里作为虚拟服务器技术,建立2套安装Oracle11G的操作系统作为备用数据库服务器。
2.2 DataGuard配置
以数据中心库做主库(Primary Database)为例,在上面做准备工作。
(1)设置Oracle生产库为归档模式
SQL>alter database archivelog;
(2)在主库 primary database上设置force logging
SQL>alter database force logging;
(3)创建备库控制文件和参数文件
启动主数据库到mount模式下,在主库上创建备库的参数文件和控制文件。
create pfile='d:\oracle\initDATATEST.ora'from spfile;
create standby controlfile as 'd:\ standbyDATATEST.ctl';
这里只需要创建一个备用控制文件即可,然后保存为control01、control02、control03。
(4)修改参数文件
修改主库参数,确认归档日志文件位置参数和主库备库信息,包括以下几条。
LOG_ARCHIVE_DEST_1 主库归档日志文件位置
LOG_ARCHIVE_DEST_2 备库归档日志文件位置
DATATEST%t_%s_%r.arc 归档日志文件格式
FAL_CLIENT 主机数据库名称
FAL_SERVER 备机数据库名称
这里注意一定要将参数STANDBY_FILE_MANAGEMENT设置为AUTO自动,否则会造成备库无法与主库同步,增加或者减少数据文件。修改备库参数文件,只需要在记事本中将刚才导出的initDATATEST.ora做如下修改即可。
*.DB_UNIQUE_NAME=DATATEST02
*.LOG_ARCHIVE_CONFIG='DG_CONFIG=(DATATEST,
DATATEST02)'
*.LOG_ARCHIVE_DEST_STATE_1=ENABLE
*.LOG_ARCHIVE_DEST_STATE_2=ENABLE
*.LOG_ARCHIVE_FORMAT=DATATEST %t_%s_%r.arc
*.FAL_SERVER=DATATEST
*.FAL_CLIENT=DATATEST02
(5)迁移数据库
在虚拟机中安装Oracle数据库系统,停止主库,把数据库的数据文件拷贝到当前备库相应位置,拷贝由生产库生成control01 control02 control03作为灾备库的控制文件,将其存放在同生产库相同的文件目录下,并设置在参数文件中。拷贝生产库参数文件到灾备库服务器相应目录中,然后为灾备库创建参数文件。
(6)在备库上配置standby redo log
配置过程中要需要注意以下3点内容:①主备库目录最好一致,这样在设置过程中不会因为目录不同出现错误;②logfile创建要求与primary的redo logfile的大小相同,个数至少多一个;③保证主库备库使用相同的用户密码进行通信来传输数据。
2.3 启动虚拟机上的备用数据库
SQL>ALTER DATABASE RECOVER MANAGED STANDBY DATABASE DISCONNECT FROM SESSION;
启动灾备系统,一旦主库出现问题,可以立刻将备库与主库进行转换,操作如下。
(1)在主库上
SQL>alter database commit to switchover to physical standby;
(2)在备库上
SQL>alter database commit to switchover to primary;
将备用数据库启动到open状态下,这样既可以保证生产数据库不间断运行,也可以利用这个时间段迅速修复、恢复原主库数据。
2.4 测试验证
在主库用插入数据,验证主库备库数据是否同步,保持同步速度,利用循环语句向主库插入1 000 000条数据,备库同步成功,用时不超过2分钟。利用压力测试工具swingbench测试比对,内存写环境中宽带在虚拟化环境中的备机增加73.82%,而在主机上面的Oracle数据库增加88.83%,说明虚拟化环境中的Oracle数据库性能总体上不如物理机,但作为恢复数据的备机用,不会有太大影响。
3 结 语
将虚拟机技术应用到Oracle数据库中,技术上是可行的,最重要的是DataGuard都是Oracle本身自带功能,在Windows 2008 server以上版本自动安装Hyper-V,不需要额外购买。将虚拟机技术应用同Oracle的DataGuard相结合,在保证数据库高可用性的同时,提升企业信息基础设施利用率,降低企业基础设施投资费用。
主要参考文献
[1]潘群华.数据复制及备份技术研究[D].北京:国防科学技术大学,2002.
[2]赵隆军.虚拟技术在Oracle数据库备份中的应用[J].中国石油和化工标准与质量,2011(8).
[3]何木喜,谭铁伟.高校计算机网络安全管理存在的问题及对策[J].肇庆学院学报,2003(2).
[4]周晴.浅析高校计算机网络安全问题及对策[J].电脑知识与技术,2010(15).
[5]王松.浅析高校计算机网络的安全管理[J].计算机时代,2007(10).
[6]阙宏宇.高校校园网络安全管理存在的问题及对策研究[J].信息与电脑:理论版,2014(7).
[7]宋建松.浅谈高校网络安全问题及处理措施[J].电脑知识与技术,2017(35).
[8]张亮.高校网络安全管理的问题及对策研究[J].科技风,2018(23).
[9]钱霂馨,张辉鹏.虚拟化数据中心的安全问题分析[J].信息安全与技術,2013(8).
[10]吕芳.虚拟化与云架构的数据中心带来的安全挑战与应对[J].智能建筑,2015(10).
[11]姜建伟.企业数据中心网络虚拟化环境中边界感知安全技术和应用[J].计算机应用与软件,2012(8).
[12]曹卫民.基于虚拟化技术的石化企业过程信息集成的安全策略[J].计算机与应用化学,2013(11).
[13]张殿,陈运,赵柏波.煤炭施工企业安全培训虚拟化战略[J].中国商界,2009(1).
[14]梅正宇.安全大数据分析:构建企业安全生态[J].软件和信息服务,2015(9).
[15]刘兆强.区域数据中心虚拟化技术安全机制的探讨[J].金融科技时代,2009(2).
[16]陈威,徐小天,陈乐然,等.虚拟化数据安全中VMware虚拟化高可用和容灾探讨[J].华北电力技术,2013(12).