资源描述
内部公开▲
广西区质量技术监督局数据库
维保服务方案
南宁秦唐科技有限公司
2016年8月
目录
广西区质量技术监督局数据库 1
维保服务方案 1
1 项目背景及目标 3
1.1 项目背景 3
1。2 项目目标 3
2 需求分析 3
3 维保范围 4
4 数据库维保方案 5
4.1 系统健康状态检查 5
4.1。1 Oracle数据库运维主要核查项 5
4。1。2 Mysql数据库运维主要检查项 9
4。1。3 SqlServer数据库运维主机检查项 10
4.2 数据库性能分析与优化调整 10
4。3 数据库备份以及恢复服务 11
4。4 数据库补丁分析与安装 12
4.5 7*24小时数据库救援服务 12
5 技术支持以及服务体系 13
5。1 故障处理要求 13
5.2 重大活动现场护航 13
5。3 维护作业计划 14
5。4 信息安全保障 14
5.5 第三方协助服务 14
5.6 服务质量分析 14
6 项目实施以及管理 15
6。1 项目实施策略 15
6。2 项目实施计划 15
6.3 项目交付文档 15
6.4 交付要求 15
6.5 提交文件资料 16
1 项目背景及目标
1.1 项目背景
广西区质量技术监督局信息化建设经过多年的发展和完善,已经建立成熟的网络环境及生产经营管理的各类应用系统,目前质监局拥有多套不同类型的数据库(多种操作系统)混合使用(Oracle,Mysql,SqlServer),共十几个节点,其中最大的oracle生产数据库已高达3TB;随着质监工作的业务发展,各系统数据量逐年增加 ,作为业务核心的数据库,安全性,可靠性的要求也变得越来越高, 需要更加专业细致地对数据库维护,以便更好地为全区质监工作提供IT服务。
1.2 项目目标
通过建立规范的维护作业体系,及时发现数据库运行中的风险问题,防患于未然,保障数据库运行健康持续。
对数据库运行性能进行监测分析,及时发现瓶颈,通过外部资源调优、行的重新安排调优、SQL 性能调优、表格和索引存储参数设置调优等方式,及时对性能问题进行处理,保障数据库稳定高效工作;
对各个系统数据库进行补丁升级服务,安装补丁前需要对补丁的可行性及风险性进行分析,并制定升级计划和应急回退计划。同时要做好系统备份准备及详细的测试工作,确保系统的稳定性、安全性,保障系统业务数据的安全;
2 需求分析
广西区质量技术监督局项目现场多种数据库共存,相互为多个应用系统服务。为保证数据库系统的稳定、安全、合理和高效,减低故障对生产的影响,消除生产故障的薄弱环节,现需购买对以下数据库的保修和维护服务.
ID
数据库节点
数据库类型
应用说明
保障级别
1
oracle rac 双节点(HP主机)
oracle10g
金质工程核心数据库
重要
2
oracle rac 双节点(Linux)
oracle10g
金质工程核心数据库
重要
3
Oracle 单节点
Oracle 10g
边界交换数据库
重要
4
Oracle 单节点
Oracle 10g
云平台数据库(内网)
重要
5
Oracle 单节点
Oracle 10g
云平台数据库(外网)
重要
6
SQL SERVER MSCS1
mssql server2008
外部门户数据库
重要
7
SQL SERVER MSCS2
mssql server2008
外部门户数据库
重要
8
SQL SERVER MSCS3
mssql server2008
OA考核
重要
10
SQL SERVER MSCS4
mssql server2008
-—
重要
11
mysql 集群1
--
——
普通
12
mysql 集群2
—-
-—
普通
3 维保范围
1) 提供常态化服务和技术支持,并配备资深工程师,工程师熟悉oracle/sqlserver/mysql等各种主流数据库技术,保证能快速、有效的解决各类故障。
2) 配置和优化系统安全、加固,故障的诊断与排除等.
3) 数据库系统恢复服务,确保系统崩溃后的快速恢复。
4) 为客户提供各个版本数据库系统运行和维护的合理建议.
5) 数据库系统软件升级(用户要求)和不限次(或配合用户)安装。
6) 对数据库系统本身存在的安全隐患和安全问题,进行修复;对系统配置和数据定期备份
7) 提供系统维修及维护报告。
4 数据库维保方案
数据库维保工作主要包括:数据库健康状态检查、数据库性能分析与调整、数据库备份与恢复、数据库补丁分析与安装、7*24小时数据库救援等工作。
4.1 系统健康状态检查
检查内容包括:
Ø Oracle数据库和CRS错误日志和分析;
Ø 文件系统空间使用情况检查;
Ø Oracle数据库及RAC系统运行情况状态、性能分析和优化建议;
Ø 检查其OS状况,包括CPU、内存和交换区使用情况,硬盘和网络的IO情况检查;
Ø 记录Oracle数据库存储空间的逻辑结构;
Ø Oracle 数据库备份情况检查;
等
根据检查结果分析并给出数据库可行的调整建议和实施;
每月至少进行一次系统健康状态的检查,根据制定的维保服务内容和流程对Oracle、Mysql,SqlServer进行一次全面巡检,包括检查数据库设备、系统的运行情况;每月25日之前提供数据库巡检报告.
4.1.1 Oracle数据库运维主要核查项
数据库的运维主要结合广西质量技术监督局的实际情况,提供切实可行的运维建设机制,内容覆盖 ORACLE 数据库的日常维护、紧急故障处理,软件升级等,客户可依据服务内容进行相应的定制.我们将会提供全面的、针对性的服务解决方案,以保客户系统稳定、高效、可靠的运行,以达到对业务系统的有效支持。
4.1.1.1 检查数据库cpu、I/O、内存性能
记录数据库的cpu使用、IO、内存等使用情况,使用vmstat,iostat,sar,top
等命令进行信息收集并检查这些信息,判断资源使用情况。
4.1.1.2 检查rman备份的有效性
restore preview/restore database preview命令
此命令用来查看还原需要使用哪个备份集来执行特定的恢复使用validate和check logical参数的restore命令,检查备份集,以确认数据库是可恢复的
restore database validate;
使用check logical参数可以更完全的检查最新备份集
run
{
restore database check logical validate;
}
使用validate backupset命令使用具有validate参数或check logical参数的restore命令只能检查最新的备份集,如果要检查任意的备份集,就需要用validate backupset命令.首先必须确认要检查的备份集的键(backup set key)
list backupset;
再执行检查
validate backupset 141;
或
validate backupset 141 check logical;
4.1.1.3 检查oracle数据库集群运行状况
用crs_stat–t命令检查oracle数据库的几个集群模块是否有offline的
4.1.1.4 检查数据库的Alert。log日志,是否有ora错误
对每个数据库,cd 到bdump目录,通常是$ORACLE_BASE/admin/〈SID>/bdump
查看最新时候有ora错误,找出来分析
4.1.1.5 收集每个数据库的AWR报告,根据报告内容,优化数据库
排查是否存在影响系统性能的等待事件、top 5 SQL、硬解析是否太高、缓冲区命中率是否高
4.1.1.6 检查ASM磁盘组空间是否足够
select instance_name,host_name,startup_time,status,database_status from gv$instance;
确保数据磁盘组有足够的空间给数据库使用,如果是用于归档日志用的ASM磁盘组空间满,必须及时用rman备份并删除旧的归档日志。
4.1.1.7 检查各个数据库操作系统的磁盘空间利用率
df–h或者df–m
文件系统空间使用率超过80%,必须要清理磁盘无用的文件或者日志
4.1.1.8 检查数据库各个节点都处于读写模式
select name,log_mode,open_mode from gv$database;
各个节点都正常,数据库才能实现负载均衡和失败切换的功能
4.1.1.9 查看表空间使用率,及时添加数据文件
SELECTUPPER(F。TABLESPACE_NAME) "表空间名",
D。TOT_GROOTTE_MB ”表空间大小(M)",
D。TOT_GROOTTE_MB — F.TOTAL_BYTES "已使用空间(M)”,
TO_CHAR(ROUND((D。TOT_GROOTTE_MB — F.TOTAL_BYTES) / D。TOT_GROOTTE_MB * 100,
2),
’990.99') "使用比",
F。TOTAL_BYTES ”空闲空间(M)”,
F。MAX_BYTES "最大块(M)"
FROM (SELECT TABLESPACE_NAME,
ROUND(SUM(BYTES) / (1024 * 1024), 2) TOTAL_BYTES,
ROUND(MAX(BYTES) / (1024 * 1024), 2) MAX_BYTES
FROM SYS.DBA_FREE_SPACE
GROUPBY TABLESPACE_NAME) F,
(SELECT DD。TABLESPACE_NAME,
ROUND(SUM(DD.BYTES) / (1024 * 1024), 2) TOT_GROOTTE_MB
FROM SYS。DBA_DATA_FILES DD
GROUPBY DD。TABLESPACE_NAME) D
WHERE D.TABLESPACE_NAME = F。TABLESPACE_NAME
ORDERBY4DESC;
密切关注各个表空间使用情况,使用率查过85%以上的,要及时添加数据文件到表空间,并与上个月巡检结果对比,估算主要业务表空间增长增长情况,一次性添加做过数据文件
4.1.1.10 检查失效的索引
Select * from dba_indexes where status=’UNUSABLE';
如果有失效索引,alter index index_name rebuild online在线重建.
4.1.1.11 检查大表,分析是否需要转换成分区表存放
SELECT SEGMENT_NAME, ROUND(SUM(BYTES) / 1024 / 1024 / 1024, 2) G
FROM DBA_SEGMENTS
WHERE OWNER NOTIN ('SYS', ’SYSTEM')
AND segment_type NOTIN
(’INDEX’, ’INDEX PARTITION’, ’INDEX SUBPARTITION')
GROUPBY SEGMENT_NAME
ORDERBY G DESC;
对于日志大表,建议改造成采用按时间分区的分区表,提升数据库读写效率。
4.1.1.12 检查oracle每个实例的的实际连接数和数据库配置的连接数
Select count(1) from v$session; —-实际连接的session数量
show parameter session;
如果实际连接的session连接数快要达到系统配置的session数量,需要增加session的数量,以免有业务无法正常连接数据库
4.1.1.13 检查数据库运行慢的SQL
SELECT USERNAME,
SID,
OPNAME,
ROUND(SOFAR * 100 / TOTALWORK, 0) || ’%’ AS PROGRESS,
TIME_REMAINING,
SQL_TEXT
FROM V$SESSION_LONGOPS, V$SQL
WHERE TIME_REMAINING <〉 0
AND SQL_ADDRESS = ADDRESS
AND SQL_HASH_VALUE = HASH_VALUE;
4.1.1.14 检查占用CPU比较多的SQL
SELECT P.PID PID,
S。SID SID,
P.SPID SPID,
S。USERNAME USERNAME,
S。OSUSER OSNAME,
P.SERIAL# S_#,
P。TERMINAL,
P。PROGRAM PROGRAM,
P。BACKGROUND,
S.STATUS,
RTRIM(SUBSTR(A。SQL_TEXT, 1, 80)) SQLFROM V$PROCESS P,
V$SESSION S,
V$SQLAREA A WHERE P。ADDR = S。PADDR AND S.SQL_ADDRESS = A。ADDRESS(+) AND P。SPID LIKE'%&1%’;
4.1.1.15 检查最消耗内存资源的SQL
select b。pga_alloc_mem / 1024 / 1024, a.*
from v$session a, v$process b
where a.PADDR = b.addr
and pga_alloc_mem / 1024 / 1024 〉 100;
4.1.2 Mysql数据库运维主要检查项
4.1.2.1 检查数据库备份是否正常
检查是否有备份机制,已有备份机制,且最后一个备份成功为正常
4.1.2.2 检查数据库后台日志,最近是否有error错误
检查data目录下host_name。err近期是否有错误
4.1.2.3 检查MySQL数据库连接统计
show status; 检查
Aborted_clients 由于客户没有正确关闭连接已经死掉,已经放弃的连接数量.
Aborted_connects 尝试已经失败的MySQL服务器的连接的次数。
Threads_connected 当前打开的连接的数量.
Max_used_connections 同时使用的连接的最大数目
以 Max_used_connections 远小于my。cnf中的最大连接数目则正常。如果接近则考虑增大最大数目。
4.1.2.4 检查MySQL数据库表锁统计(包括立即锁及等待锁)
show status like ’table%';
如果 waited的数值比较高,说明数据库锁争用比较严重
4.1.2.5 主库查看状态
Show master status
4.1.2.6 查询从服务器状态
Show slave status,经常检查从服务器的复制状态,防止复制过程中出现故障从而导致进程停止
4.1.2.7 Mysql连接数排查
Show variables like ‘%max_connectins%'
Show gloable status like ‘max_use_connections’
当前数据库已经使用的最大连接数不能超过阀值
4.1.2.8 Mysql文件打开数检查
Show global status like ‘open_files’;
Show variables like ‘open_files_limit'
打开数量要小于limit值
4.1.3 SqlServer数据库运维主机检查项
4.1.3.1 检查数据库自动备份是否正常
检查是否有备份机制,以有备份机制,且最后一个备份成功为正常
4.1.3.2 验证备份集
验证备份集(RESTORE VERIFYONLY )
4.1.3.3 检查数据库集群是否能正常工作
4.1.3.4 检查磁盘空间是否足够
检查数据文件所在的磁盘空间使用情况
检查日志文件所在的磁盘空间使用情况
检查备份的磁盘空间使用情况
4.1.3.5 检查系统日志
使用“事件查看器”,查看系统日志,关注错误信息排查错误.
重点关注与SQLServer相关的日志信息。
及时备份与清理过期的日志信息。
4.2 数据库性能分析与优化调整
根据用户需要进行数据库的性能分析,针对发现的问题提出合理的解决方案;每月巡检中包含对数据库运行性能的分析。
主要包括:数据库性能的监控和调整、系统资源的监控及管理。如:
l 优化服务器配置
根据现有硬件配置及用户访问量及服务器性能指标,确定是否存在系统(cpu,内存,硬盘)瓶颈及数据库配置问题,提出解决瓶颈的方法及建议。
l 优化应用程序
根据应用程序配置,确定是否存在应用程序问题使系统运行缓慢,提出应用程序优化建议(如:负载均衡)。
l 数据库及应用程序整合
分析数据库与应用布局是否合理,提出整合建议。
l 数据库参数调整
优化参数,使数据库在最优的环境下运行.
l 数据库潜在重要问题
数据库是否存在潜在问题,对数据库有什么重要的影响, 或深圳广西质量技术监督局方面认为紧急的。
l 优化内存配置与系统后台进程
l 优化物理文件的存放,对大型数据库考虑用磁盘阵列柜存放
l 优化数据库逻辑结构
优化表空间、临时表空间、回滚段
l 优化数据库对象
优化表结构、建立分区表,优化索引结构、更新统计信息
l 优化SQL语句
查询运行慢的SQL语句,并给出优化建议
l 提供数据库优化方案及实施方案、报告等
4.3 数据库备份以及恢复服务
根据现场情况,制定合理的备份计划,定期备份各个数据库.具备条件的情况下,要定期对备份集进行异机恢复,测试备份集是否可用。
数据库发生重大故障时(如磁盘阵列故障导致的数据库瘫痪),以最快的速度从备份系统中恢复数据,并使系统能够在最短的时间内恢复正常运行。
4.4 数据库补丁分析与安装
根据用户需要提供相关系统软件升级服务;当数据库ORACLE、MYSQL、SQLSERVER软件有最新更新升级时,维保方须及时通知广西质量技术监督局,并根据广西质量技术监督局的要求和安排到现场进行更新升级(每年一般不超过两次).
4.5 7*24小时数据库救援服务
提供7×24小时应急响应热线,由具有丰富工作经验的资深OCP认证工程师 在用户的Oracle产品出现重大故障时提供现场紧急救援服务.
重大故障包括:
OS故障,导致Oracle不能正常启动或运行
硬件故障(包括CPU、硬盘等),导致数据库崩溃
人为故障,包括维护人员不小心删除数据库文件,或人为将Table中的数据删除等等
导致数据库不能正常运行的情况,如控制文件遭破坏,Redo Log文件遭破坏,数据文件遭破坏等等
其他故障,包括影响数据库正常运行的各类紧急故障
5 技术支持以及服务体系
5.1 故障处理要求
25分钟内故障处理电话响应服务,故障服务的现场响应时间小于1小时,即1小时内有能够处理故障的技术人员到达现场,并立即投入对故障的处理,并能够在2个小时内恢复故障系统的正常运行。
如果用户的问题不能通过电话解决,客户服务部会立刻派经验丰富的工程师到现场为用户解决问题,客户服务人员对解决的过程进行记录,并向用户提供解决问题的报告.包括问题原因、解决方法、解决问题的方式和进程,以及建议用户对系统进行正常使用的指导和培训.问题解决后需要用户进行确认。
5.2 重大活动现场护航
敏感时期、重大节假日、领导巡查,维护技术原因提前入场做详细巡检,并于活动时间段内入驻客户驻地,提供5*8小时的现场保障服务.
在国家节假日期间前一个星期,提供节日值班表,包含:当日负责人姓名及联系电话、反应时间、到现场时间、处理好时间等内容。以发电子邮件方式告知客户负责人。
5.3 维护作业计划
为保障数据库系统的长效运行。我们制定日、周、月的检查内容,通过自动、远程、现场相结合的方式,形成日常作业计划,对数据库运行情况检查,及早发现问题和处理问题。如:每日的数据库表自动分析、每周的远程备份情况检查、每月的现场设备检查等。
5.4 信息安全保障
系统的安全性是业务正常运行的保障,其重要性不言而喻。我公司会根据标准的安全规范和成功经验,为用户的系统进行安全性检查,包括文件权限的设置、用户访问的限制、增补软件的更新等技术方面,同时对系统安全策略进行评估,将发现的问题隐患及改进建议以报告的形式提交给用户.通过系统安全性检查,可以提高系统的安全级别,防止系统遭到恶性攻击口.
5.5 第三方协助服务
协助用户或第三方完成对系统设备、软件的维护、升级、扩容等技术支持工作,确保客户生产系统的安全平稳运行。
5.6 服务质量分析
提供每月1次对oracle、sqlserver、mysql全面巡检服务,对维保范围系统进行细致全面地监视、检查、隐患排除等.并按照用户要求提供特殊时段保障要求的巡检。
每月提交月度服务报告、包括并不限于服务天数、次数、电话接通延迟时间、报修故障及原因、恢复措施报告等定量数据;根据用户需要召开服务质量分析例会,对该阶段服务进行总结.并对例会纪要中的意见与建议部分于7日内反馈并跟踪落实。
工程师将在巡检后进行日志分析,及时发现潜在故障隐患以及系统错误日志,并提供巡检报告一册,巡检报告内容包括设备运行状态、错误日志、以及针对问题的优化建议等。
6 项目实施以及管理
6.1 项目实施策略
项目的实施成功与否主要表现为“两个机制、一个测试”:顺畅沟通机制和技术转移机制、模拟测试。顺畅沟通机制:建立和用户方的良好顺畅的协调机制;技术转移机制:系统在移交后,日常的管理工作有比较大的专业性,成功的技术转移是以后系统良好运作的前提和保证。建议用户方的技术牵头人和系统管理员对项目的全程深入参与。
模拟测试:通过在模拟环境完成系统调试后并在真实环境完成试运行测试.因而在本次Oralce日常运行维护服务的过程中,我公司将按照软件项目实施的策略来进行管理,从而保证整个项目的维护就如同开发过程一样严格管理.
6.2 项目实施计划
ORACLE 产品日常运行维护年度服务项目是一个长期的优化维护项目,我公司根据多年的开发维护经验可分为两个阶段。第一个阶段为优化实施阶段,包括各个应用系统的环境情况调查,应用系统的统计登记、数据库系统的优化等。第二个阶段为运维阶段,主要包括相关应用的培训,数据库管理培训、数据库备份恢复的培训以及后期系统运维、检查等保护措施,定期对全厂数据库及系统进行巡检,巡检内容包括:系统日志、网络状况、系统空间状况、存储设备状态、系统性能、产品参数与配置、数据库各种文件的状态与配置、数据库安全审计、数据对象配置的合理性、实例的运行效率、SQL 代码性能调优等.
6.3 项目交付文档
6.4 交付要求
我公司提供的资料将使用国家法定单位制即国际单位制,语言为中文.提供的纸介质文件时需同时提供 Office 电子版文件。资料的组织结构清晰、逻辑性强。资料内容正确、准确、一致、清晰完整,满足项目要求.
6.5 提交文件资料
文档的内容至少包括系统的维护手册、数据库定期巡检记录、数据库日常运维手册、文档介质包括:
Ø 系统信息表
Ø 数据库日常运维手册
Ø 数据库定期巡检记录表
Ø 应用系统巡检记录
Ø 其他相关的技术资料
本文中的所有信息均为秦唐科技有限公司所有,未经许可不得向外传播。
第13/13页
展开阅读全文