《谈谈医院数据库日常运行维护.docx》由会员分享,可在线阅读,更多相关《谈谈医院数据库日常运行维护.docx(7页珍藏版)》请在第一文库网上搜索。
1、谈谈医院数据库日常运行维护目录摘要1前言11 .数据库日常运维频率及内容21.1. 数据库每日维护内容21.2. 数据库每月维护内容21.3. 数据库定期维护内容32 .数据库可用空间运维33 .数据库内存参数运维44 .医院信息系统数据库结构分析41. 1.医院信息系统44. 2.医院信息系统数据库架构55 .医院信息系统中的数据库维护途径55.1. 加强数据库日常检查工作55.2. 及时排查数据库故障66 .结束语7参考文献:7摘要本文在研究中以医院信息系统中的数据维护为核心,分析医院信息系统结构框架,提出医院信息系统中的数据维护途径,提高数据安全性和完整性,保证医院信息系统的正常高效运行
2、,并为相关研究人员提供一定的借鉴和帮助。关键词:医院信息系统;数据库;信息化建设;安全维护刖百数据库日常运维工作是指生产系统正式上线运行后,随着数据量和用户数的不断增加,医院信息中心需要投入专业的技术人员按照一定的时间周期来对数据库进行的一系列预防性检查的工作。数据库日常运维工作非常重要,因为除了突发的故障以外,运维期间大部分的问题都会在日常运维中发现。因此,日常运维工作做得好不好,直接关系到数据库是否能稳定运行。1 .数据库日常运维频率及内容通常来讲,数据库运维的频率分为每日维护、每月维护和定期维护。1.1. 数据库每日维护内容数据库运维一般都由专门的DBA来完成,DBA要负责每天对数据库的
3、运行状态进行检查,同时需要和数据库之前的运行状态进行对比,通过对比分析来及时对数据库进行必要的调整,保障数据库运行的稳定。DBA每天对数据库进行的工作有:确认数据库状态正常,DBA需要登录操作系统或者数据库,确认数据库的运行状态是处于OPEN状态;检查操作系统的文件系统的状态,主机操作系统的文件系统空间或者I/O异常会造成数据库运行异常;检查日志文件记录,数据库的日志文件用来记录数据库在运行过程中重要的状态和错误;检查数据库备份和容灾的状态,需要检查最新的备份工作是否成功完成,及时找出失败的原因并处理;每天至少检查一次容灾系统的运行状态,保证容灾系统工作正常;检查数据库空间使用情况,数据库都是
4、通过数据文件来分配空间的,需要定期检查数据文件是否还有剩余空间来存放数据,及时增加数据文件或者扩展数据文件;监控数据库性能表现,监控主要侧重于数据库的重要性能指标。如实例命中率、SQL执行时间等和昨天的同时间段比较是否有明显变化,如果出现明显性能下降的趋势,如SQL执行时间同比超过50%,则需要启动数据库优化的工作。1.2. 数据库每月维护内容数据库每月的日常运维,主要分析数据库当月的运行趋势和未来的发展趋势,以便DBA及时对数据库进行调整来适应新的运维需求。监控数据库重要表的空间扩展情况,针对数据库中存放数据最多的重要的大数据表,如医嘱明细表、住院明细表等,每月收集最大10个表的占用空间,同
5、比上个月的数据对比得出月数据增长量;检查失效的数据库对象,数据库对象状态失效的原因很多,如存储过程中相关的表改名后,存储过程就变成失效的状态;检查无效的触发器和约束,数据库触发器和约束失效后,数据库和应用系统可能没有马上报错,但是与这些触发器相关的应用数据可能会出现不一致的情况;数据库报错和处理情况进行汇总,每月对当月检查到的错误和排除的过程进行汇总和归档,一方面,以后遇到类似错误可以很快找到解决方案;另一方面,也可以为数据库运行稳定状态提供可靠的数据。1. 3.数据库定期维护内容有一些日常维护的工作,需要定期执行但是执行的频率需要根据数据库运行的实际情况来做弹性的调整,这部分维护工作包括:检
6、查和处理数据表的碎片情况,医院信息系统的数据库是一个典型的OLTP数据库,在数据库日常使用过程中必然会发生很多更新和删除操作,随着时间的推移,数据库中会产生越来越多分隔的、离散的、较小的自由空间,随着数据库碎片数量的增加,会给数据库带来性能低下,空间使用效率不高等问题。因此,根据数据库实际使用情况,需要对重要表进行碎片整理,消除碎片对数据库的影响;定期对索引进行维护和管理,在OLTP的数据中创建索引是为了提高数据检索的速度,特别是创建唯一性的索引。但是数据库的索引并不是越多越好,数据库维护索引的代价很大。定期检查和分析数据库索引的合理性,根据业务需求添加合适的索引,删除无须要的索引也是DBA必
7、不可少的维护工作;定期分析数据库性能表现,数据库的性能表现随着数据量的增加,理论上来说会呈下降趋势,简单来讲就是同一条SQL语句执行时间越来越久。因此,应该定期观察数据库的性能表现,如SQL的执行时间、数据库的繁忙时间、数据库的等待事件等,并和之前的数据库性能进行对比。如果发现性能有明显下降的趋势,需要及时启动数据库优化工作,以免对正常业务运行造成影响。2 .数据库可用空间运维一般来说,数据库可用空间包含3个部分:用以存放数据文件的文件系统或磁盘组剩余空间、数据库表空间的剩余空间、数据库系统软件的安装目录剩余空间。数据库文件包括数据文件、日志文件、控制文件等,这些文件在数据库建立的时候就需要选
8、择操作系统适当的位置来存放,一般存放的位置是文件系统、裸设备或者ASM磁盘组(Oracle独有)。如果这几部分空间不足,短期内不会影响数据库的正常使用,但是如果遇到数据库需要扩展表空间或者增加数据文件,就会面临无空间可用的情况。DBA需要及时扩充对应的存储空间来为数据库的扩充预留空间。数据库表空间是用来存放数据表的数据空间,如果这部分空间不足,数据库会马上挂起,无法响应大部分的业务操作,特别是数据库特殊的表空间(用于存放元数据)若空间不足则可能引起数据库宕机等更严重的故障。如果一次性地给数据库表空间分配大量空间,则会影响数据库备份等其他维护操作的难度和复杂度。因此,在日常维护中,数据库表空间按
9、足够未来36个月使用的原则来分配,随时添加数据文件来保障数据库的正常运行。数据库软件存放的文件系统一般来说不会有太大的数据增量,其中最多的数据增量来源于数据库的日志文件、错误告警文件等。当数据库出现大量的错误时,会产生大量的错误告警文件,这些文件会把文件系统爆满。如果发生这样的情况,数据库也会无法响应连接请求,应用系统也会出现异常。3 .数据库内存参数运维数据库相关配置参数,特别是内存参数,在数据库建立之前就已经根据数据量大小和用户数多少设计好相对优化的数据。在数据库运维过程中,需要观察数据库内存参数是否满足业务需求:无论何种数据库,都需要将经常访问的数据存放在数据高速缓冲区中,利用内存百倍于
10、硬盘的响应速度来提高整个数据库的响应速度,减少I/O等待时间。正常情况下,医院HIS这种OLTP系统数据高速缓冲区的命中率都应该在90%以上。通过定期观察数据高速缓冲区的命中率来判断是否需要调整内存参数,在命中率下降的情况下调大数据高速缓冲区可以提高数据响应速度。但是建议数据库占用内存总和不要超过物理内存的一半。4 .医院信息系统数据库结构分析4. 1.医院信息系统医院信息系统以IBM System X5系列机型为主,内存为256GB,安装Redhat Enterprise Linux 6.4操作系统,配以Sybase数据库,运用两台服务器联接共同运作的方式,构建双机备用保护,在实际应用中,服
11、务器利用核心交换机中的单模光纤连接实现双机通信。从另一个角度上看,为了提高数据库数据的安全水平,设置EMC的两台VNX5500,借助EMC同城双活技术进行VPLEX组建异地双活机制,形成集中的存储资源池,在任何一个VNX5500中设置40个300GB的硬盘,并在其中一个信息系统服务器中增设EMC持续数据保护系统,可以自动将需要保护的数据保存至CDP保护空间中,一旦信息系统出现逻辑错误,也不会影响被保护数据,根据需求可以将CDP保护磁盘中的保护数据进行恢复。4.2. 医院信息系统数据库架构本文研究的信息系统数据库为Sybase Adaptive Server Enterprise 15.7版本,
12、这一数据库不仅储存大量的数据,也是信息系统日常使用业务库,信息系统相关业务均在数据库实例中运行,其中还包括镜像数据库SVEZY,与正式数据库的配置相同,使用Replication Server服务器中的单向复制功能,正式生产库中的执行操作都要通过复制队列通道按照相关顺序逐步复制到镜像数据库中。设置镜像数据库的目的有以下几方面:1)第一,镜像数据库可以当作备用数据库,一旦数据库发生故障问题,可以切换至镜像数据库中,利用操作系统可用组件下发clusvcadm命令,把数据库服务切换至镜像数据库中,开启数据库服务,切换时间短,进而达到快速恢复数据库正常使用的目的。2)第二,可以把信息系统相关数据进行外
13、围系统处理,包括医院感染信息系统和手术追溯信息系统等,与镜像数据库相连,由于这些数据信息的实时性要求低,将其转移到镜像数据库中,可以有效缓解数据库的存储压力,防止其他应用干扰数据库的正常使用,降低故障率,进而提高医院信息系统运行的稳定性和有效性。5.医院信息系统中的数据库维护途径5.1. 加强数据库日常检查工作在医院信息系统运行中,系统管理人员要日常监控服务器与数据库的运行情况,定期查看与监控数据库的数据,检查服务器与储存硬件,检查机房内湿温度环境与消防控制系统情况,做好操作系统层面中的监控工作,检查操作系统中的CPU利用率、I/O以及进程数等数据,并查看数据库监控软件,检查数据库是否存在异常
14、情况,查看数据库每日产生的数据量。对此,系统管理人员要将以上提到的检查内容进行整合,制定服务器与数据库运行状态监控表,根据表里内容进行监控检查工作,检查完毕要做好记录,及时填写表格,记录下医院信息系统运行状态。由于每个医院信息系统设计都有差异,对此,系统管理人员在监控检查中找到侧重点,具体为以下几点内容:第一,检查服务器在线进程数、最大连接数,通过这两个参数来分析服务器目前的负载能力,连接数或是在线进程数过大,都会造成服务器宕机。第二,检查数据库相关设备现有容量、日增量、日志大小以及实际大小,通过对这些基本信息参数的分析,得到数据库总体运行状态,考虑是否根据当前储存容量而增加设备或是日志。第三
15、,检查是否存在alert,系统管理人员检查alert文件,一旦数据库发生异常情况,alert文件中会形成告警信息,查看文件中反应的数据库问题,及时发现,控制数据库故障出现率。第四,检查数据库备份情况,备份数据正常情况下会储存在计划任务中定期执行,查看备份基本信息,包括备份起始时间、备份文件大小,保证增量备份完整,防止备份使用过程中发生备份文件缺失的情况。第五,检查CPU、I/O、无阻塞进程实际运行情况,在数据库图形界面软件中,检查阻塞进程且杀掉,进而保证数据库正常运行。第六,检查数据库配置,包括内存分配、用户连接数、锁个数和储存过程缓冲等参数设置,控制I/O系统操作,强化数据分析能力与计算能力,根据客户端规模、系统使用需求进行参数调整,进而提高数据库运行的安全性和流畅性。5. 2.及时排查数据库故障通过数据库日常检查工作,可以有效发现数据库运行故障和异常情况,而面对这一情况,系统管理人员要及时排查数据库故障原因,具体可从以下几方面入手:第一,检查最早进程时间,通过最早进程时间判断数据库潜在