神州数码信息系统有限公司数据库日常运维手册神州数码信息系统有限公司2015/9/5日常运维操作手册主要针对ORACLE数据库管理员对数据库系统做定期监控:(1). 每天对ORACLE数据库的运行状态、日志文件、备份情况、数据库的空间使用情况、系统资源的使用情况进行检查,发现并解决问题。
并要有相关的人员负责每天查看,发现问题及时上报分析。
检查每天的数据库备份完成情况。
(2). 每周对数据库对象的空间扩展情况、数据的增长情况进行监控、对数据库做健康检查、对数据库对象的状态做检查。
(3). 每月对表和索引等进行Analyze、检查表空间碎片、寻找数据库性能调整的机会、进行数据库性能调整、提出下一步空间管理计划。
对ORACLE数据库状态进行一次全面检查(4)根据公司数据库的安全策略对ORACLE DB进行加固一.日维护过程1.1、确认所有的INSTANCE状态正常登陆到所有数据库或例程,检测ORACLE后台进程:$ps –ef|grep ora1.2、检查文件系统的使用(剩余空间)如果文件系统的剩余空间小于20%,需删除不用的文件以释放空间。
#df –k1.3、检查日志文件和trace文件记录检查相关的日志文件和trace文件中是否存在错误。
A、连接到每个需管理的系统使用’telnet’命令B、对每个数据库,进入到数据库的bdump目录,unix系统中BDUMP目录通常是$ORACLE_BASE/<SID>/bdump#$ORACLE_BASE/<SID>/bdumpC、使用Unix ‘tail’命令来查看alert_<SID>.log文件#tail $ORACLE_BASE/<SID>/bdump/alert_<SID>.logD、如果发现任何新的ORA- 错误,记录并解决1.4、检查数据库当日备份的有效性。
对RMAN备份方式:1.5、检查数据文件的状态检查所有数据文件并记录状态不是“online”的数据文件,并做恢复。
Sqlplus> Select file_name from dba_data_files where status=’OFFLINE’1.6、检查表空间的使用情况SELECT tablespace_name, max_m, count_blocksfree_blk_cnt,sum_free_m,to_char(100*sum_free_m/sum_m, '99.99') || '%' AS pct_free FROM( SELECT tablespace_name,sum(bytes)/1024/1024 AS sum_m FROM dba_data_files GROUP BY tablespace_name), ( SELECT tablespace_name AS fs_ts_name, max(bytes)/1024/1024 AS max_m, count(blocks) AS count_blocks, sum(bytes/1024/1024) AS sum_free_m FROM dba_free_space GROUP BY tablespace_name ) WHERE tablespace_name = fs_ts_name1.7、检查剩余表空间SELECT tablespace_name, sum ( blocks ) as free_blk ,trunc ( sum ( bytes ) /(1024*1024) ) as free_m,max ( bytes ) / (1024) as big_chunk_k,count (*) as num_chunks FROM dba_free_space GROUP BY tablespace_name;1.8、监控数据库性能(重点)运行bstat/estat生成系统报告或者使用statspack收集统计数据1.9、检查数据库系统性能(重点)主要检查并记录数据库系统的cpu使用率、pagespaces、IO、buffer命中率等等,可以使用topas、vmstat、iostat、glance、top等命令1.10、日常出现问题的处理。
二.每周维护过程2.1、监控数据库对象的空间扩展情况根据本周每天的检查情况找到空间扩展很快的数据库对象,并采取相应的措施-- 删除历史数据--- 扩表空间alter tablespace<name> add datafile ‘<file>’ size <size>--- 调整数据对象的存储参数next extentpct_increase2.2、监控数据量的增长情况根据本周每天的检查情况找到记录数量增长很快的数据库对象,并采取相应的措施-- 删除历史数据--- 扩表空间altertablespace<name> add datafile ‘<file>’ size <size>2.3、系统健康检查检查以下内容:init<sid>.oracontrolfileredo log filearchivingsort area sizetablespace(system,temporary,tablespace fragment)datafiles(autoextend,location)object(number of extent,nextextent,index)rollback segmentlogging&tracing(alert.log,max_dump_file_size,sqlnet)2.4、检查无效的数据库对象SELECT owner, object_name, object_type FROM dba_objects WHERE status=’INVALID’。
2.5、检查不起作用的约束SELECT owner, constraint_name, table_name, constraint_type, status FROMdba_constraints WHERE status = 'DISABLED’ AND constraint_type = 'P'2.6、检查无效的triggerSELECT owner, trigger_name, table_name, status FROM dba_triggers WHERE status = 'DISABLED’三.月维护过程3.1、Analyze Tables/Indexes/Clusteranalyze table <name> estimate statistics sample 50 percent;3.2、对索引进行维护和管理使用analyze 和DBMS_STATS,DBMS_UTILITY对库进行分析工作。
对于频繁更新的表,需进行索引重建 alter index XXXXX rebulid online (建议在非繁忙时刻进行重建工作)。
对一些运行非常慢的查寻语句进行分析,根据execution plan确定问题的原因:是否没用到索引,索引需重建,需增加索引等。
3.3、检查表空间碎片根据本月每周的检查分析数据库碎片情况,找到相应的解决方法3.4、寻找数据库性能调整的机会(重点)比较每天对数据库性能的监控报告,确定是否有必要对数据库性能进行调整3.5、数据库性能调整(重点)如有必要,进行性能调整3.6、提出下一步空间管理计划根据每周的监控,提出空间管理的改进方法四,oracle数据库加固4.1 建多个用户profile,并设置给相应的用户,例如Create profile user_profile{Password Management = EnabledPASSWORD_LIFE_TIME = 90PASSWORD_GRACE_TIME = 5PASSWORD_REUSE_TIME = UnlimitedPASSWORD_REUSE_MAX = 5FAILED_LOGIN_ATTEMPTS =5PASSWORD_LOCK_TIME = UnlimitedIDLE_TIME = 15SESSIONS_PER_USER = Unlimitedmin length = 8}设置用户密码策略4.2 限制资源在INIt<SID>.ora文件中设置RESOURCE_LIMIT=TRUE 审计AUDIT_TRAIL=DBAUDIT_SYS_OPERATIONS=TRUE等4.3 改变默认账号的密码,lock 有关用户的登录如demo,outli,scott等4.4 数据文件,日志文件,control file,archive file权限设置等Chown–R 600 *.dbf4.5 设置create table,connect,RESOURCE,CREATE ANY VIEW,ALTER的权限Select * from dba_sys_privs where privilege like ‘create table’; Select * from dba_sys_privs where privilege like ‘alter%’;等4.6 Oracle Listener control帧听控制Example:SAVE_CONFIG_ON_STOP_<listener_name> = ON PASSWORDS_<listener_name> = 2D6C48144CF753AC 2D6C48144CF753AC is only an example value.命令:1、检查SQL Server服务启动类型;方法:配置工具——SQL Server外围应用配置器:(1)检查SQL Server服务启动类型;(2)检查SQL Server Agent服务启动类型。
2、通过“任务管理器”检查系统进程,判断是否有异常进程。
如果存在异常进程,则记录并查询;3、检查SQL Server管理端口;方法:SQL Server配置管理器——SQL Server协议——TCP/IP协议——IP地址选显卡注:SQL Server默认端口号为:14334、SQL Server实例连接检查;方法:(1)启动SSMS;(2)依照实际情况,使用“本地”或“SA”方式登录;(3)登录成功后,检查实例运行情况(“启动”或“停止”);(4)通过实例属性检查“身份验证模式”与“服务器身份验证模式”。