5 系统运维指南-20140408_第1页
5 系统运维指南-20140408_第2页
5 系统运维指南-20140408_第3页
5 系统运维指南-20140408_第4页
5 系统运维指南-20140408_第5页
已阅读5页,还剩54页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

现场软件系统日常运维指南1. 概述1.1、 目的软件系统日常运行维护的目标,主要是通过常驻运行维护人员和后台支撑团队,提供常态、规范和专业的巡检、故障应急抢修服务来保证系统可靠稳定运行。本指南主要是为了系统运维目标的实现,提供规章制度的保证,规定了运维对象和范围,确保巡检和抢修活动有操作要求、流程可依,并指导读者如何进行现场软件系统日常运维,如何制定软件系统日常运维手册,确保软件系统在预定的环境中使用。1.2、 适用范围本用于公司负责所有建设项目的系统试运行、正式运行和软件质保阶段,以及公司负责的所有维护项目的合同期。1.3、 内容本指南主要涵盖了对软件系统资料整理、日常运维工作(巡检)和系统故障处置等方面的要求。同时,指南也从实际出发,对运维活动给出了团队组成、规模以及排班的建议。1.4、 参考文档2. 项目软件系统运维流程项目软件系统运维整体主要流程如下:3. 主要角色和职责3.1、 角色及职责在制定软件系统日常运维手册、实施系统日常运维和故障处置的过程中,所涉及的角色和职责如下:角色职责项目经理1. 协调相关人员,包括设备厂商技术人员。2. 确定巡检执行人。软件项目经理1.安排相关人员共同制定项目软件系统现场维护手册;2.负责制定项目系统功能巡检手册的制定;3.负责对巡检执行人进行培训;集成工程师1.负责整理项目集成相关资料;2.负责项目网络运行环境、主机与存储环境巡检手册的制定;3.协助软件项目经理对巡检执行人进行培训;数据库管理员1.负责整理项目数据库系统相关资料;2.负责项目数据库系统环境巡检手册的制定;3.协助软件项目经理制定关键业务表巡检手册;4.协助软件项目经理对巡检执行人进行培训;交通工程小组1.协助软件项目经理制定系统功能巡检手册;设备厂商1.协助集成工程师、数据库管理员制定巡检手册;巡检执行人1.确认项目软件系统现场维护手册的所有内容可操作;2.根据项目软件系统现场维护手册执行日常维护工作;3.2、 巡检执行人应具备的条件熟练使用windows系统,会查询与查看系统日志;能熟练运用sql语句;熟悉ORACLE、SQLSERVER、MYSQL等常用数据库的使用;熟悉Weblogic、Apache Tomcat、JBoss等常用中间件的使用;熟悉Linux基本操作,能够部署软件、系统等操作;4. 项目资料要求。4.1、 网络环境网络环境项目资料应包括: 设备的IP分配表(外场,主机,网络设备)设备ip地址分配表参考格式如下:序号设备id设备类型(必填)安装位置(必填)IP地址(必填)掩码(必填)网关(必填)MAC连通情况(必填)接入交换机ip其他属性1已连通/未连通2设备id:设备的唯一标示设备类型:如线圈车检器、电子警察、车牌识别、防火墙、网闸、交换机、服务器、数据库等安装位置:设备安装的位置,如路口名、断面名、桩号;内场设备应表明安装的机房、机柜号;应便于运维人员识别。ip地址:设备配置的ip地址掩码:设备配置的子网掩码网关:设备配置的网关地址MAC:设备的MAC地址连通情况:设备的实际连通情况,需根据情况及时更新接入交换机ip:设备接入的交换机ip其他属性:上述未尽描述的其他属性 网络设备配置信息表序号设备id设备类型(必填)配置策略配置文件存放位置1端口:tcpudp单向访问双向访问2设备id:设备的唯一标示设备类型:如防火墙、网闸、交换机等 设备互联的拓扑图及相应的设计说明;如果比较复杂的话,可以考虑提交逻辑拓扑及物理拓扑 如果网络系统和外系统有互联关系,请说明外系统互联的要求及相应约束(IP分配、安全策略要求、路由策略要求等) 如果设计中存在冗余链路的设计,请说明采用的冗余技术及策略要求 如有其他非常规的网络技术运用(负载均衡、VPDN、AAA、策略路由、路由图等)请提供专文说明 其他未尽事宜需要一事一议4.2、 主机及存储关于主机及存储项目资料应包括: 设备基本信息表设备基本信息表参考格式如下:序号设备id系统用户名及密码(必填)操作系统版本(必填)CPU(必填)内存(必填)本地硬盘容量(必填)阵列容量(必填)使用网口其他连接12设备id:设备的唯一标示系统用户名及密码:巡检管理访问的系统用户名及密码操作系统版本:设备安装的操作系统版本,包括补丁版本;CPU:设备的CPU配置内存:设备的内存配置本地硬盘容量:主机本地硬盘的配置阵列容量:服务器被分配的存储阵列的容量使用网口:接入系统使用的网口号,设备上也应做好标示,当网线脱落时,应能帮助运维人员找到正确的接入口。其他连接:与其他设备连接的端口描述如光纤口等。4.3、 数据库系统环境 数据库基本信息表序号项目内容备注1数据库系统软件版本2字符集3数据库服务名4数据库IP/端口5最大连接数6设计的最大存储空间 数据库存储说明表空间信息;序号表空间名表空间增长策略表空间最大设计容量用途12数据表存储说明表如下:序号表名存储分区分区策略索引策略设计最大记录数12 用户信息序号用户名用户描述类型12 数据库字典包含表、视图、作业、存储过程4.4、 应用软件环境项目需整理应用软件部署情况,参考格式如下: 应用软件静态属性表服务器ip程序名可执行文件名应用软件类别安装地址功能描述1视频事件交换软件数据交互/通信软件/计算处理/展示软件/管理软件/统计软件服务器ip:软件部署的服务器ip地址程序名称:软件中文名称可执行文件名:应用软件可执行程序文件名应用软件类别:按照应用软件的用途分为数据交互、通信软件、计算处理、展示软件、管理软件和统计软件。安装地点:软件安装的目录位置。功能描述:软件实现的功能。 应用软件运行属性表:服务器ip程序名称应用软件输入应用软件输出运行周期中间件日志位置配置文件及重要属性1视频事件交换软件服务器ip:软件部署的服务器ip地址程序名:软件名称应用软件类别:按照应用软件的用途分为数据交互、通信软件、计算处理、展示软件、管理软件和统计软件。应用软件输入:是指软件的数据来源,如数据库的某业务表,则列明表名。应用软件输出:是指软件正常运行情况下的输出形式,如数据库的某业务表或者xml文件等。运行周期:软件运行的周期。中间件:软件运行所需要的中间件名、版本、安装位置等;日志位置:软件日志存放位置及名称,该日志为软件异常时,需要巡检人员作为附件一起上报的日志。配置文件及重要属性:软件运行相关配置文件的存放位置,及重要属性,如数据库连接串的相关描述;4.5、 支撑软件 arcgis基本信息序号项目内容备注1gis软件版本2sde库连接名3数据库连接名4本地文件夹连接 图层信息序号图层名图层描述安装位置1234.6、 界面功能 界面功能描述表:访问地址:访问地址:巡检用户名及密码菜单名功能描述功能操作及操作结果访问地址:界面访问的地址,或者巡检界面安装地址巡检用户名及密码:巡检用户使用的用户名及密码菜单名:功能菜单访问名,如为多级菜单则用“-”分割,如“信息发布”-“情报板人工发布”功能描述:菜单功能的描述信息功能操作及操作结果:巡检人员进行界面功能日常巡检时应做的操作步骤及应看到的结果描述5. 巡检对象和基本要求根据系统的不同等级,实行不同的巡检周期。系统级别级别定义巡检周期A类系统业务实时性较高,或者受众用户多,易产生社会不良效应。如采处发系统、集成指挥平台平台;每日至少一次B类系统业务实时性较高,但受众用户有限,系统故障时,影响有限范围,如卡口系统;每两日一次C类系统业务实时性较低,受众用户也有限,系统故障时,只要能恢复故障时的业务即可,例如电警系统;每周一次A类系统,应实行每日巡检,每日上午9-10时和下午16-17时,应根各根据巡检流程对关键业务进行完整巡检,其他时间可不定期进行项目基本巡检,发现问题应及时解决。B类系统,应实行每两日一次巡检,应根各根据巡检流程对关键业务进行完整巡检,其他时间可不定期进行项目基本巡检,发现问题应及时解决。C类系统,应实行每周一次巡检,应根各根据巡检流程对关键业务进行完整巡检,其他时间可不定期进行项目基本巡检,发现问题应及时解决。定期维护:系统涉及的服务器每月应进行一次系统健康检查,检查服务器和数据库运行状态,清理磁盘空间、无用的交换文件备份、垃圾文件和过期的日志文件,相关设备之间连接状态,备份系统日志、操作系统日志和必要的业务数据并做好相关维护记录。以上周期均可根据项目实际情况进行调整。5.1、 支撑运行环境支撑运行环境主要是指支撑软件运行的各种外部系统、硬件或环境。主要的运行支撑环境包括网络、主机系统、数据库和存储。5.1.1、 网络环境从支撑软件系统运行的角度,对网络环境日常巡检的基本要求主要是确保主干网网络连通性和网络服务质量(QoS)。巡检内容:巡检项巡检方法参考值频率连通性检查采用Ping命令进行,建议至少对每个目标点做两组重复测量,每组测量次数不要少于200个。专网:丢包率应为0、时延应不超过10ms互联网:丢包率应接近0,时延不超过300ms,但应比较稳定无线链路(GSM、HSDPA等):丢包率最高不要超过5%,时延不超过300ms每天路由路径检查采用Tracert/traceroute命令检查,检查实际路由路径与设计路由路径是否一致。应一致。每月网络设备的CPU、内存负荷运用命令/管理界面(不同的厂商不一样)对网络设备的运行时CPU、内存负荷进行检查。CPU 5分钟利用率和内存利用率都应小于45%,45%-49%建议较快处理(建议4天内响应),50%急需处理(建议2天内响应)每天以上内容的巡检结果需填写到巡检记录表单RP001,RP005。. 连通性检查在自建有线网络的情况下,Ping丢包率应为0,建议至少对每个目标点做两组重复测量,每组测量次数不要少于200个;Ping的时延数据依赖于通信的网络带宽及ping包的长度,目前典型的百兆/千兆情况下应不超过10ms,且时延分布应比较窄(没有特别高的时延值出现),一般应在10ms内;Internet链路的Ping,丢包率应接近0,时延可能为几十或几百毫秒(200-300ms),但应比较稳定。运营商的无线链路(GSM、HSDPA等),丢包率应接近0(最高不要超过5%-10%),时延可能为几十或几百毫秒(200-300ms)。根据项目ip地址分配表,对中心所有服务器、重要工作站进行连通性检查,检查时需记录测试主机ip、延时和丢包情况。巡检结果记录到表单RP005。. 路由路径检查Tracert/traceroute用于检查三层路由转发是否符合设计要求,具体的正常值和网络的拓扑设计、冗余设计等均相关。通常采用Tracert/traceroute命令检查,检查实际路由路径与设计路由路径是否一致。巡检结果记录到表单RP006。. 网络设备的CPU、内存负荷一般网络设备的CPU及内存负荷应低于45%,当负载过高时,会引起网络时断时通的现象、网速变慢等现象。运用命令/管理界面(不同的厂商不一样)对网络设备的运行时CPU、内存负荷进行检查。CPU 5分钟利用率和内存利用率都应小于45%,45%-49%建议较快处理(建议4天内响应),50%急需处理(建议2天内响应)。巡检结果记录到表单RP001。5.1.2、 主机与存储环境对主机环境的运维服务包括:主机设备的日常监控,设备的运行状态监控,故障处理,操作系统维护,补丁升级等内容。. 主机及存储环境巡检项主机及存储环境基本巡检内容:巡检项说明频率硬件显示器每月键盘/鼠标每月磁带机每月电源及风扇每月线缆每月HBA卡状态每周SAN端口状态每周网卡状态每周系统系统指示灯状态前面板指示灯每周电源指示灯每周磁盘指示灯每周系统控制板指示灯(CPU/MEM,I/O等)每周系统日志信息IML日志按需操作系统日志每日系统性能CPU (使用率小于80%) 每日内存 (使用率小于80%) 每日交换区(使用率小于80%) 每日磁盘I/O性能每日磁盘分区使用率Windows系统磁盘工具/ Unix系统用命令 df -k每周系统时间校时偏差每日xx进程占用资源Top-c进程名,察看具体某个进程占用资源的具体情况每日集群进程状态每日集群日志每月以上内容的巡检结果需填写到巡检记录表单RP002。. 硬件信息外部设备运行状态,对磁盘阵列、磁带机、外置光驱、维护终端等的状态、设置进行检查;对风扇、后备电池、磁盘、磁带、键盘等敏感部件进行重点检查,查看是否有故障征兆。连接件检查,对连接插头、电缆、电源插座等进行检查. 系统指示灯状态前面板指示灯:查看是否有黄灯、红灯告警;电源指示灯:查看是否有黄灯、红灯告警;磁盘指示灯:查看是否有黄灯、红灯告警;系统控制板指示灯(CPU/MEM,I/O等):查看是否有黄灯、红灯告警;如有,则对异常进行上报;. 系统日志信息通过控制面板或者系统命令获得系统日志,首先对比系统日志文件的大小,查看是否有异常增长,如发现增长异常,则需进一步分析操作系统日志文件内容。检查系统日志中是否有设备重启日志。如存在多次重启,则需将问题上报,待技术人员对其进行分析。. 系统性能通过控制面板或者系统命令获得服务器当前CPU、内存、交换区使用率与磁盘I/O情况,应至少观察5分钟,获得性能平均值,并观察是否有异常的波动。各项指标平均使用率应低于80%,如超过则应将此异常情况上报。. 磁盘分区使用率通过控制面板或者系统命令获得主要磁盘的使用率、剩余空间。至少应查询的,windows系统:c盘、D盘。linux系统:/usr、/var。如剩余空间比例小于10%则应进行磁盘清理操作或将结果上报。. 系统时间通过控制面板或者系统命令获得系统时间与参考服务器时间,并检查服务器是否按计划校时。如系统时间与参考服务器时间差超过1分钟,则应进行人工校时操作,如人工校时失败,则应将此异常情况上报。. 进程占用资源通过控制面板或者系统命令获得进程占用资源,首先应观察相应的进程是否正常开启,如没有被开启,则应启动相应的进程。接着观察进程占用资源,应至少观察5分钟,获得平均占有资源,并观察是否有异常的波动。如进程资源比过高,或者出现异常的波动,则应首先重启相应进程与相关进程,如重启后问题仍未解决,则应将此异常情况上报。5.1.3、 数据库系统环境. 数据库系统环境巡检项数据库系统主要的巡检内容如下:l 实例状态l 监听状态l 会话l 进程l 定时作业l 表空间由于不同版本、不同集成方式的数据巡检方法差异较大,故巡检项的巡检方法、参考值等将在后续章节展开。以上内容的巡检结果需填写到巡检记录表单RP003。. oracle数据库RAC状态巡检项检查RAC状态首先需要了解数据库包含几个实例节点,也就是说组成数据库集群的有几台服务器,数据文件是通过何种方式存储的。目前RAC数据库的文件的存储方式有两种一种是裸设备,一种是自动存储管理。只有使用了自动存储管理方式才需要查看自动管理实例状态。 巡检项巡检方法参考值频率RAC总体状态crs_stat -t State字段为online每天RAC 实例状态Srvctl status database d Instance is not running on ,表示异常。每天RAC 监听状态Srvctl status listener Listener is enabled Listener is running on node(s): db1每天自动管理实例状态(可选)srvctl status asmASM is running on db1,db2每天RAC节点状态srvctl status nodeapps每天.1. RAC总体状态RAC是oracle集群软件运行的基础,需要重点关注. RAC集群软件有若干个管理进程组成,其中最重要的3个是crsd,cssd,evmd. 服务名称服务器描述应有状态OSSD服务ocssd是最关键的进程.如果这个进程出现异常,会导致系统重启. CSS服务通过多种心跳机制实时监控集群健康状态,提供rac主机群间的信息同步保护等服务功能OnlineCRSD服务CRSD服务是实现高可用性服务的进程.这个服务的功能是监控应用层资源,并在这些资源运行异常时进行干预,包括关闭,重启进程或者转移服务。OnlineEVMD服务EVMD服务负责发布CRS产生的各种事件. 另外负责CRS和CSS两个服务间的通讯。OnlineRACGIMON服务此进程负责检查数据库健康状态,负责service 的启动,停止,故障转移.这个进程会建立到数据库的持久连接,定期检查SGA中的特定信息。OnlineOPROCD服务如果是非linux平台上,此功能由第三方集群软件提供. 此进程是用来检测集群中主机CPU运行状态. 如果超过预设时间CPU没有回应,就认为主机工作异常,会重启主机。Online命令: crs_stat -t结果中有以下几个内容,服务名称类型应有状态实际状态节点主机名NameTypeTargetstateHost只要保证实际状态列中都是online就说明RAC状态时完全正常的.其中重点保证type列中是db、vip、lsnr、asm的服务状态是online。并记录下服务状态不是online 的服务名称。.2. RAC实例状态实例进程组提供整套数据库管理服务的核心功能,如果集群中有一个节点出现故障,数据库软件的性能会大幅下降。所以需要重点关注实例状态,发现故障必须及时修复。命令: Srvctl status database d 结果:可以看到数据库下所有实例的状态是runing就是正常的.例如以下Instance is running on rac1Instance is not running on rac2。则表示异常。.3. RAC 监听状态监听服务是用来接受客户端机器对oracle提出请求的。集群中每个节点都会有一个监听进程。如果监听进程出现故障,则除集群内服务器外的所有请求都无法响应。命令:Srvctl status listener结果:Listener is enabled Listener is running on node(s): db1,db2。.4. ASM管理服务实例状态ASM管理服务是10g以后出现的服务进程。他是用来管理数据文件所在的磁盘空间的一个软件。只有使用ASM方式管理存储系统才需要关注此服务的运行状态。命令:srvctl status asm 结果:ASM is running on db1,db. 单节点oracle数据库系统环境巡检项巡检内容:巡检项巡检方法参考值频率系统实例状态select inst_id,instance_name,status from gv$instance Status为online每天监听状态Lsnrctl statusInstance 监听名, status READY, has 1 handler(s) for this service每天会话查询会话Select inst_id,count(*) from gv$session group by inst_id应低于250。(可视不同系统实际情况而定)每天死锁select b.owner,b.object_name,b.object_type,a.* from v$locked_object a left join ( select distinct owner, object_name, object_type form dba_objects) b on a.OBJECT_ID=b.object_id应为空每天进程ps -ef |grep crsps -ef |grep ora每天定时作业select job,log_user,last_date,next_date,broken,failures from dba_jobs order by jobFAILURES列的值应为0每天表空间利用率select a.tablespace_name,a.mbytes as total_size ,nvl( b.mbytes,0) as free_size , round( a.mbytes - nvl( b.mbytes,0) ) *100/ a.mbytes ,2) as used_ratio from ( select tablespace_name , sum(bytes) / 1024/1024 as mbytes from dba_data_files group by tablespace_name union all select tablespace_name , sum(bytes)/1024/1024 as mbytes from dba_temp_files group by tablespace_name) a left join ( select tablespace_name , sum(bytes) /1024/1024 as mbytes from dba_free_space group by tablespace_name union all select tablespace_name , sum(s.free_space)/1024/1024 as mbytes from dba_temp_free_space s group by tablespace_name ) b on a.tablespace_name = b.tablespace_name;used_ratio列应低于90%每天以上内容的巡检结果需填写到巡检记录表单RP003。.1. 数据库实例数据库实例是数据库管理程序。检查数据库实例状态就是查看数据库软件是否在正常运行。方法如下:(1)使用数据库DBA用户登录数据库(2)命令select inst_id, instance_name, version , status from gv$instance 主要查看status这个字段的值如果是open表示数据库实例是正常的否则就是不正常。 另外需要注意的是如果是oracle rac的版本,需要知道有几个节点,以上语句的查询出来的结果就有几行数据,数据条数少于节点数也表示数据库实例不正常。.2. 数据库监听单节点数据库监听检查方法使用oracle用户登录安装数据库软件的服务器,在操作系统命令行的模式下输入如下命令:lsnrctl status 单实例结果反馈是下面的红色字符显示表示监听是正常的。Service orcl has 2 instance(s). Instance orcl, status UNKNOWN, has 1 handler(s) for this service. Instance orcl, status READY, has 1 handler(s) for this service.Service orclXDB has 1 instance(s). Instance orcl, status READY, has 1 handler(s) for this service.The command completed successfullyRAC数据库监听检查方法使用oracle用户登录安装数据库软件的服务器,在操作系统命令行的模式下输入如下命令: Srvctl status listener 结果中会显示出每个节点的监听状态,只要每个节点的监听都处于运行(running)的状态就表示监听状态是正常的。. ORACLE数据库运行环境巡检项巡检项巡检方法参考值频率系统会话查询会话Select inst_id,count(*) from gv$session group by inst_id应低于250。(可视不同系统实际情况而定)每天死锁select b.owner,b.object_name,b.object_type,a.* from v$locked_object a left join ( select distinct owner, object_name, object_type form dba_objects) b on a.OBJECT_ID=b.object_id应为空每天进程ps -ef |grep crsps -ef |grep ora每天定时作业select job,log_user,last_date,next_date,broken,failures from dba_jobs order by jobFAILURES列的值应为0每天表空间利用率select a.tablespace_name,a.mbytes as total_size ,nvl( b.mbytes,0) as free_size , round( a.mbytes - nvl( b.mbytes,0) ) *100/ a.mbytes ,2) as used_ratio from ( select tablespace_name , sum(bytes) / 1024/1024 as mbytes from dba_data_files group by tablespace_name union all select tablespace_name , sum(bytes)/1024/1024 as mbytes from dba_temp_files group by tablespace_name) a left join ( select tablespace_name , sum(bytes) /1024/1024 as mbytes from dba_free_space group by tablespace_name union all select tablespace_name , sum(s.free_space)/1024/1024 as mbytes from dba_temp_free_space s group by tablespace_name ) b on a.tablespace_name = b.tablespace_name;used_ratio列应低于90%每天.1. 会话及连接要定时对数据库的连接情况进行检查,看与数据库建立的会话数目是不是正常,如果建立了过多的连接,会消耗数据库的资源。同时,对一些“挂死”的连接,可能会需要DBA手工进行清理。每个实例下会话数查询方法:Select inst_id,count(*) from gV$session group by inst_id 检查每个实例的会话数是否超过参考值。视各个应用系统而定,参考值一般为250/实例. .2. 死锁对象死锁对象查询:select b.owner,b.object_name,b.object_type,a.* from v$locked_object a left join ( select owner, object_name, object_type ,object_id from dba_objects) b on a.OBJECT_ID=b.object_id 将对象记录到检查表中。.3. 进程进程查询语句:ps -ef |grep crsps -ef |grep ora.4. 定时作业如果数据库使用了Oracle的JOB来完成一些定时作业,要对这些JOB的运行情况进行检查,select job,log_user,last_date,next_date,broken,failures,what from dba_jobs order by job如果FAILURES 列是一个大于0 的数的话,说明JOB运行失败,需要记录下失败JOB的编号,以及调用的程序的名称,从而进一步的检查失败的原因。.5. 表空间表空间是数据以及索引存储的媒介,如果表空间中利用率大于90%可能会引起诸多书就写入表的性能问题,当表空间利用率98%以上时可能会使大部分的数据无法写入表中。因此观察表空间的使用情况是保证数据库正常运行非常关键的项目。oracle 的表空间分为系统表空间,数据表空间,UNDO表空间,TEMP表空间。以下是各类表空间利用率的上限参考值。类型上限参考值系统表空间90% 用于oracle系统管理,如果此表空间写满会直接导致数据库软件挂死数据表空间90% 保存应用数据,如果此类表空间写满会导致数据无法写入。UNDO表空间95% 用于数据的事物处理回滚操作,一般有回收和重复利用。数据库需要避免大数据事务操作,否则也会导致表空间增长或写满。如果此表空间利用率过高会影响其他数据写入到库中。TEMP表空间95% 用于字段排序中间结果保存。如果利用率过高,会导致orader by 命令执行报错查询表空间利用率的语句:select a.tablespace_name,a.mbytes as total_size ,nvl( b.mbytes,0) as free_size , round( a.mbytes - nvl( b.mbytes,0) ) *100/ a.mbytes ,2) as used_ratio from ( select tablespace_name,sum(bytes) / 1024/1024 as mbytes from dba_data_files group by tablespace_name union all select tablespace_name, sum(bytes)/1024/1024 as mbytes from dba_temp_files group by tablespace_name) a left join ( select tablespace_name , sum(bytes) /1024/1024 as mbytes from dba_free_space group by tablespace_name union all select tablespace_name , sum(s.free_space) /1024/1024 as mbytes from dba_temp_free_space s group by tablespace_name ) b on a.tablespace_name = b.tablespace_name;结果格式:表空间名称类型总容量(兆字节)空闲空间(兆字节)占有率%.6. 分区有效性当表中的数据量不断增大,查询数据的速度就会变慢,应用程序的性能就会下降,这时就应该考虑对表进行分区。表进行分区后,逻辑上表仍然是一张完整的表,只是将表中的数据在物理上存放到多个表空间(物理文件上),这样查询数据时,不至于每次都扫描整张表。通常项目中的表分区采用的是范围分区,并且分区键经常采用日期。当使用范围分区时,1、每一个分区都有一个VALUES LESS THEN子句,它指定了一个不包括在该分区中的上限值。分区键的任何值等于或者大于这个上限值的记录都会被加入到下一个高一些的分区中。2、所有分区,除了第一个,都会有一个隐式的下限值,这个值就是此分区的前一个分区的上限值。因此需要对表的最后一个分区进行巡检,查看其上限值是否以失效,例如是否是今天之前的一个日期。查询语句如下:select c.partition_name ,c.high_value, b.* , d.column_name from(select max(a.partition_position)maxpart , a.table_owner , a.table_name from dba_tab_partitions a where table_owner in (用户名1,用户名2) group by a.table_owner , a.table_name ) b , dba_tab_partitions c,dba_part_key_columns d where b.maxpart = c.partition_position and b.table_owner = c.table_owner and b.table_name=c.table_name and b.table_name = and d.object_type = TABLE结果格式:分区名分区依据最近分区号用户名表名分区字段查看“分区依据”字段是否有效,若该字段内容所代表的日期小于巡检日期则表式分区失效,应作为异常上报。.7. 数据库其他维护操作等待事件通过oracle提供等待事件类型和等待事件相对的资源信息从而可以找出数据库运行瓶颈的所在。v$session_wait的P1,p2,p3告诉我们等待事件的具体含义,根据事件不同其内容也不同。查询等待事件命令;Select * from V$session_wait order by 1数据库I/O性能1、数据库的数据文件绝大部分的平均的读取时间20ms,表示当前的数据库I/O速度是可以接受的,如果有一些数据文件的平均读取时间大于20ms,需要引起注意。2、如果一个数据文件的平均读取时间一直大于20ms的话,建议:应该检查对该数据文件上的查询语句,并且优化SQL语句。如果该数据文件包含索引,一个可以考虑的选择是使用压缩索引来减少I/O。数据文件应该尽量条带化,分布在不同的物理硬盘上面。数据库文件要及时查看数据库中数据文件的状态(如被误删除),根据实际情况决定如何进行处理. 在oracle数据库中“数据库初始化文件”,“数据库密码文件”,“控制文件”,“重做日志文件”,“系统数据文件”都是关键文件不能丢失或者破坏否则数据库将无法运行。数据库初始化文件:$ORACLE_HOME/dbs/init+.ora。 用于保存数据库启动时的运行参数读取。数据库密码文件:$ORCLE_HOME/dbs/pwd+.ora。用于保存数据文件:主要看status和online_status两列,如果status不是AVAILABLE 或者online_status 是offline 则这个数据文件就是有问题的需要DBA视情况处理 select file_name,tablespace_name,status,online_status from dba_data_files union all select file_name,tablespace_name, as status,c.STATUS as online_status from dba_temp_files c控制文件:以下语句结果中status列都是空值则是正常的。select name,status from v$controlfile 重做日志文件:select a.GROUP#,a.THREAD#,a.ARCHIVED,a.status ,b.TYPE,b.STATUS ,b.MEMBER from v$log a left join v$logfile b on a.GROUP#=b.GROUP# 归档日志文件异常增长的数据库对象每个表的增长在一定时间范围内基本是有规律的,并且每个稳定的运行系统中每个动态表都有保持周期。所以每个表占用空间基本稳定。当发现表空间有异常增加时,就需要关注是哪些表或者索引导致异常增长,从而锁定目标,便于需找原因。无效对象在数据库中常常以为某些对象结构的改变而造成与之相关的对象失效,将失效对象找出并将处理成有效对象,从而不会导致应用软件使用失效对象是出错。l 失效主键删除重复键值的记录,重新启用主键l 失效外键删除不存在的键值记录,重新启用外键。l 无效索引查询:Select owner,object_name,subobject_name, object_id,object_type,status from dba_objects where object_type like INDEX% and status valid and owner = 处理:重建一般索引。Alter index rebuild ;重建分区索引Alter index rebuild partition l 无效视图查询:Select owner,object_name,subobject_name, object_id,object_type,status from dba_objects where object_type like VIEW% and status valid and owner = 处理:重新编译失效视图l 无效存储过程查询:Select owner,object_name,subobject_name, object_id,object_type,status from dba_objects where object_type like VIEW% and status valid and owner = 处理:重新编译存储过程用户安全l 用户整理每个完成的系统中的数据库用户都需要对能够连接的数据库的用户权限作控制.整理并限制其权限.把DBA用户和应用系统连接的用户分开,形成一张在使用用户清单. 格式如下用户名权限是否是DBA用户用途(主要由那些程序连接)l 无用用户清理查询用户信息和允许开放的用户做对比,将没有授权的用户做锁定标记,将锁定2月以上的用户删除。锁定用户命令:alter user account lock ;查询用户信息命令:select a.username, user_id,account_status,lock_date,created from dba

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论