(完整版)大数据库维护工作手册簿
数据库维护工作手册

数据库维护处事脚册之阳早格格创做文档编号:文档称呼:编写:审核:批准: 接受日期:目录1概括22数据库监控3数据库监控处事真质3数据库监控处事步调3查看数据库日志3查看是可有做废的数据库对付象5查看数据库结余空间6沉面表查看6查看数据库是可寻常7死锁查看7监控SQL语句的真止7支配系统级查看8其余83数据库维护9数据库维护处事真质9数据库维护处事事项9页里建复9数据库对付象沉建9碎片回支(数据沉组)9简略不必的数据10备份回复10履历数据迁移11定期建改暗号11简略掉不需要的用户11其余124数据库管制时常使用SQL足本125凡是维护战问题管制23脚法23例止处事提议23相关挖表证明241概括数据库的凡是监控是使管制员即时相识系统非常十分的脚法.大部分情况下,系统经常寻常运止的.惟有对付寻常情况的充分相识,才搞通过对付比寻常情况创制非常十分情况.对付于数据库的凡是监控要有记录,笔墨记录大概者电子文档保存.对付于数据库非常十分举止分解,提出办理规划.凡是处事包罗监控战维护二个部分.此文档中关于数据库的运止下令示例主要针对付于ORACLE数据库,但是对付于SYBASE数据库共样有参照价格,只消换用相对付应的语句即可.数据库监控2数据库监控数据库监控处事真质制定战矫正监控规划,编写监控足本.对付于数据库举止凡是监测,提接记录.根据监测截止举止分解、预测,提接相映的系统矫正提议规划.数据库监控处事步调2.1.1查看数据库日志数据库的日志上会有洪量对付于管制员有用的疑息.ORACLE的Alert日志记录了数据库系统所报的系统级过得疑息,以及数据块做废等宽沉过得疑息.过得疑息的爆收,会爆收相映的逃踪文献,通过查看告诫日志战逃踪文献可查找过得本果,对付于创制的问题应即时办理战报告.如:1.表空间是可谦,是可需要举止增加大概者扩展.Alert文献中会隐现有表块无法扩展的提示.2.表的块大概者页里是可益坏.(往往那时alert文献中会隐现ora-600的过得.)3.数据库是可举止了非常十分支配.(如:droptablespace等等).真用下令:·报警日志文献(alert.log大概alrt<SID>.ora)记录数据库开用,关关战一些要害的堕落疑息.数据库管制员该当时常查看那个文献,并对付出现的问题做出纵然的反应.不妨通过以下SQL 找到他的路径select value from v$parameter where upper(name) ='BACKGROUND_DUMP_DEST',大概通过参数文献赢得其路径,大概者show parameter BACKGROUND_DUMP_DEST.·背景逃踪文献路径与报警文献路径普遍,记录了系统背景进程堕落时写进的疑息.·用户逃踪文献记录了用户进程堕落时写进的疑息,普遍不可能读懂,不妨通过ORACLE的TKPROF工具转移为不妨读懂的圆法.用户逃踪文献的路径,您不妨通过以下SQL找到他的路径select value from v$parameter where upper(name) ='USER_DUMP_DEST',大概通过参数文献赢得其路径,大概者show parameter USER_DUMP_DEST.不妨通过树立用户逃踪大概dump下令去爆收用户逃踪文献,普遍正在调试、劣化、系统分解中有很大的效用.可正在参数文献种用SQL_TRACE=TRUE挨开该文献(对付所有用户),也可用alter session set sql_trace=true挨开目前会话,也可用execute dbms_system.set_sql_trace_in_session(sid,serial#,true)挨开指定会话.2.1.2查看是可有做废的数据库对付象主要关注索引,触收器,保存历程,函数等等.如:查找user_objects数据字典,瞅其中是可有状态为invalid的对付象.推断做废本果(如:视图做废的本果有大概是由于创制视图的基表被简略等等),找出本果可举止对付象沉建大概建复.真用下令:Select object_name,object_typeFrom user_objectsWhere object_type=’INV ALID’;2.1.3查看数据库结余空间1.结余空间缺累时要扩展空间,普遍的,当结余空间小于10%时,要举止空间扩展.对付于ORACLE数据库,通过查找TABLESPACES相关的数据字典不妨瞅到有用的疑息.2.查看数据赶快删少的表,通过对付于DBA_SEGMENTS数据字典的监视不妨找到,当过快删万古,协做开垦人员,决定办理规划.2.1.4沉面表查看1.查看系统核心接易表.果为那些表健壮与可与凡是接易的寻常运止稀切相关.沉面查看那些表的索引是可做废,表的统计疑息是可即时革新,如:当那些表举止了大的数据拆载大概者简略支配之后.准则上需要查看所有的表,不过由于上头那些表更关键,提议管制员给以更多的关注.2.沉面查看数据量超出百万止的表,各天的情况大概纷歧样,当数据超出百万止之后,如果索引做废会引导表扫描,占用洪量系统IO,宽沉效用系统本能.2.1.5查看数据库是可寻常包罗数据库真例是可寻常处事、listener是可处事寻常,保证数据库系统环境寻常.数据库对接是可寻常、查看是可有超出寻常火仄的对接数.如:寻常500个,某天下午忽然达到600个.应记录那种非常十分情况.分解爆收那种情况的本果,如:正在矮版本的ORACLE中,很大概是一些其余非常十分的应用堕落后爆收的死对接.2.1.6死锁查看监控数据库运止历程中,出现的阻塞,记录局里,记录爆收阻塞的SQL语句,真止的用户,爆收时间,频次,处理(杀掉、等待自然解锁等).ORACLE版本中的死锁会正在alert文献中爆收记录,oracle会自动解锁(本去是采用一个杀掉).对付于死锁的处理历程要举止记录.不妨使用OEM工具大概者查找相关的V$视图去确认爆收阻塞的语句.2.1.7监控SQL语句的真止查找效用矮下的SQL语句,通联协做开垦人员,举止相关处理.可使用ORACLE提供的AWR举止,也可使用ORACLE提供的OEM工具真止,大概者自止体例的足本等等.2.1.8支配系统级查看运止vmstat,sar,topas(AIX系统),glance(HP系统)等下令查看CPU、内存、假制内存等的使用情况.运止df,du,iostat查看磁盘使用情况运止netstat查看搜集情况运止脚工体例的监控足本查看.针对付于支配系统的分歧,使用的下令也会有分歧,请参照相映的支配系统文档.提议使用man下令瞅察相映的助闲疑息.2.1.9其余每天查看早间定时真止的数据库疑息支集做业战备份做业的日志输出,确认皆已寻常完毕.往往不克不迭寻常完毕是由于如下的本果:请确认足本是可变动(过得的建变革成等等),设备(主机,磁盘阵列,磁戴库,搜集等等)是可寻常,空间是可足够等等.提议每天按接易峰值情况,对付数据库本能数据举止定时支集及分解.3数据库维护数据库维护处事真质包罗维护、障碍诊疗、过得建复、备份回复、履历数据迁移等历程.数据库维护处事事项3.1.1页里建复根据凡是监控的截止,举止页里(大概者数据库坏块)建复,如将表数据导出后沉建表,而后导进数据.提接建复记录.3.1.2数据库对付象沉建根据数据库监控的截止,沉建做废的对付象.如:索引、保存历程、函数、视图、触收器等等.真用下令:Alter index <索引名> rebuild [online];3.1.3碎片回支(数据沉组)当某些数据库运止一段时间后,表会爆收碎片,效用数据库的本能.可根据凡是查看的截止,使用功具大概足本对付于数据库空间举止沉组大概回支.由于ORACLE数据库自己的本果,正在举止了DELETE支配之后也不会使HWM (High Water Mark下火位线)落矮,果此不会释搁所占用的空间,所以提议正在举止了数据迁移之后将齐库举止EXP,而后举止IMP支配,以释搁占用的空间.3.1.4简略不必的数据此项处事要得到开垦圆、安排人员、以及相关人员的确认后,圆可真止.3.1.5备份回复需要定期对付于数据库备份举止灵验性检测,定期举止数据回复的演练支配.以预防万一的数据库事变时准备缺累.数据库需要采与正在线的热备份,不需要关关数据库举止,正在备份的共时不妨举止寻常的数据库的百般支配,谦足了7*24的系统的需要.数据库的备份不克不迭效用用户对付数据库的考察.目标需要正在线热备份多级删量备份并止备份,回复减小所需要备份量备份,回复使用简朴可参照如下的规划:1.每月搞一个数据库的齐备份(包罗只读表空间)2.每星期搞一次整级备份(不包罗只读表空间)3.每个星期三搞一次一级备份4.每天搞一个二级备份5.所有表空间改成只读状态后搞一个该表空间的备份.6.当需要时(如四个小时归档文献系统便要靠近谦了)备份归档文献.3.1.6履历数据迁移定期举止履历数据迁移,缩小死产数据库的压力.3.1.7定期建改暗号包罗SYS,SYSTEM等用户.3.1.8简略掉不需要的用户对付于系统拆置时的演示用户,如:hr,scott等.提议每周定期浑理战备份一周所爆收的Alert日志、逃踪文献战dump文献.分别位于$ORACLE_BASE/admin/$ORACLE_SID/bdump, $ORACLE_BASE/admin/$ORACLE_SID/udump, $ORACLE_BASE/admin/$ORACLE_SID/cdump,等目录下.定期对付表举止统计分解,(如可使用analyze等下令,8i 以上有dbms_stats包去真止,使SQL劣化器经常能找到最佳的查询战术.制定战真止记录包管死产库的仄安:应千万于克制正在死产库上举止开垦、尝试.3.1.9其余针对付分歧的数据库版本的分歧特性举止相映的维护支配.简直情况请拜睹ORACLE文档大概者考察metalink.4数据库管制时常使用SQL足本时常使用的SQL足本,正在真施时可供数据库管制员参照,正在真止时,需要举止相映的建改.1.结余空间查看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_chunksFROM dba_free_spaceGROUP BY tablespace_name2.表空间数据量情况隐现SELECT tablespace_name, max_blocks, count_blocks, sum_free_blocks, to_char(100*sum_free_blocks/sum_alloc_blocks, '99.99') || '%' AS pct_freeFROM ( SELECT tablespace_name, sum(blocks) AS sum_alloc_blocksFROM dba_data_filesGROUP BY tablespace_name), ( SELECT tablespace_name AS fs_ts_name, max(blocks) AS max_blocks, count(blocks) AS count_blocks, sum(blocks) AS sum_free_blocksFROM dba_free_spaceGROUP BY tablespace_name )WHERE tablespace_name = fs_ts_name3.表战索引分解BEGINdbms_utility.analyze_schema ( '&OWNER', 'ESTIMATE', NULL, 5 ) ;END ;4.查看空间情况FROM all_tables a,( SELECT tablespace_name, max(bytes) as big_chunkFROM dba_free_spaceGROUP BY tablespace_name ) f5.查看已经存留的空间扩展FROM dba_tablespaces dt, dba_extents dxs AND dx.owner = '&OWNER'6.查看不主键的表SELECT table_nameFROM all_tablesWHERE owner = '&OWNER'MINUSSELECT table_nameFROM all_constraintsWHERE owner = '&&OWNER'AND constraint_type = 'P'7.查看做废的主键SELECT owner, constraint_name, table_name, statusFROM all_constraintsWHERE owner = '&OWNER' AND status = 'DISABLED’ AND constraint_type = 'P'8.沉建索引,简直参数请根据本质情况举止建改SELECT 'alter index ' || index_name || ' rebuild ', 'tablespace INDEXES storage ( initial 256 K next 256 K ) ; ' FROM all_indexesWHERE ( tablespace_name != 'INDEXES'OR next_extent != ( 256 * 1024 ))AND owner = '&OWNER'9.对付比二个真例的分歧SELECT object_name, object_typeFROM user_objectsMINUSSELECT object_name, object_typeFROM user_objects@&my_db_link10.查看动向本能视图Select * from V$FIXED_TABLE11.查看拘束select a.constraint_name, a.constraint_type,a.*from user_constraints awhere table_name='table_name';select constraint_name, column_namefrom user_cons_columnswhere table_name='table_name';12.查看索引user_indexes包罗索引的名字,user_ind_columns包罗索引的列.13.查看数据库开用参数:show parameter para,v$parameter提供目前会话疑息,v$system_parameter提供目前系统疑息.其中isses_modifiable,issys_modifiable表示是可允许动向建改.14.查看进程号:select p.spid, ernamefrom v$process p, v$session swhere p.addr=s.paddr;15.查看数据文献:select name, statusfrom v$datafile;select *from dba_data_files;16.查看数据文献状态from v$datafile d, v$datafile_header hwhere d.file#=h.file#;17.查看统制文献select namefrom v$controlfile;select type, record_size, records_total, records_used from v$controlfile_record_sectionwhere type=’DATAFILE’;18.查看是可归档模式:archive log listselect name, log_modefrom v$database;select archiverfrom v$instance;19.查看日志组:select groups, current_group#, sequence#from v$thread;select group#, sequence#, bytes, members, status from v$log;select *from v$logfile;其中status为空表示寻常.20.查看large poolselect *from v$sgastatwhere pool=’large pool’;21.查看归档位子show parameter archiveselect destination, binding, target, status from v$archive_dest;22.查看归档进程select *from v$archive_processes;23.查看正正在备份的数据文献select *from v$backup;24.查看需要回复的文献select *from v$recover_file;25.查看所有归档日志文献select *from v$archived_log;26.查看回复时要用到的日志文献select *from v$recovery_log;27.查看SGA的结构Show sga;select *from v$sgastat;28.提与library cache的掷中率select gethitratiofrom v$librarycachewhere namespace=’…’;29.查看正正在运止的SQL语句select sql_text, users_executing, executions, loadsfrom v$sqlarea;select *from v$sqltextwhere sql_text=’select * from emp%’;30.查看library cache reload情况:select sum(pins) “Executions”, sum(reloads) “cache Misses”, sum(reloads)/sum(pins)from v$librarycache;31.查看大藏名块select sql_text from v$sqlareawhere command_type=47and length(sql_text)>500;32.查看目前会话的UGA区select sum(value)||’bytes’ “Total session memory”from v$mystat, v$statnamewhere name=’session uga memory’and v$mystat.statistic#=v$statname.statistic#;33.查看所有MTS用户的UGA区:select sum(value)||’bytes’ “Total session memory”from v$sesstat, v$statnamewhere name=’session uga memory’and v$sesstat.statistic#=v$statname.statistic#;34.查看所有用户使用的最大的UGA区:select sum(value)||’bytes’ “Total session memory”from v$sesstat, v$statnamewhere name=’session uga memory max’and v$sesstat.statistic#=v$statname.statistic#;35.查看high-water mark以下的块数select table_name, blocksfrom dba_tableswhere table_name=’table_name’;36.查看会话的I/O:from v$sess_io io, v$session swhere s.audsid=USERENV(‘SESSIONID’)and io.sid=s.sid;37.查看Buffer pool的掷中率select name, 1-(physical_reads/(db_block_gets+consistent_gets)) “HIT_RATIO”from sys.v$buffer_pool_statisticswhere db_block_gets+consistent_gets>0;38.查看free list的比赛select class, count, timefrom v$waitstatwhere class=’segment header’;select event, total_waitsfrom v$system_eventwhere event=’buffer busy waits’;buffer busy waits可正在二种情况爆收:1dirty queue已谦,2free list比赛.39.查看free list比赛爆收正在哪个segment上select s.segment_name, s.segment_type, s.freelists, w.wait_time, from dba_segments s, v$session_wait wwhere w.event=’buffer busy waits’and w.p2=s.header_block;40.查看齐表扫描爆收的次数select name, valuefrom v$sysstatwhere name like ‘%table scan%’;41.查看大支配的真止情况select sid, serial#, opname,to_char(start_time, ‘HH24:MI:SS’) as start_t,(sofar/totalwork)*100 as percent_completefrom v$session_longops;42.查看数据文献的I/Ofrom v$datafile d, v$filestat fwhere d.file#=f.file# order by ;43.查看空闲块数少于10%的segment(blocks正在high-watermark以下,empty_blocks其上)select owner, table_name, blocks, empty_blocksfrom dba_tableswhere empty_blocks/(blocks+empty_blocks)<0.1and blocks+empty_blocks!=0;44.查看migration战chaininganalyze table table_name compute statistics;select num_rows, chain_cntfrom dba_tableswhere table_name=’table_name’;45.查看表的统计疑息analyze table table_name compute statistics;select num_rows, blocks, empty_blocks as empty, avg_space, chain_cnt, avg_row_lenfrom dba_tableswhere ow ner=’HR’ andtable_name=’table_name’;46.查看索引的统计疑息analyze index index_name validate structure;select (del_lf_rows_len/lf_rows_len)*100 as index_usagefrom index_stats;5凡是维护战问题管制脚法动做一名数据库管制员,数据库应用的寻常宁静运止是包管咱们应用系统的要害包管,而数据库的凡是监控战维护处事至关要害.搞佳它的查看处事的文档管制也是数据库管制的必不可少的处事之一,那有好处咱们逃踪问题战对付数据库的版本统制非常要害.例止处事提议每天例止处事:1.决定数据库真例处于运奇迹态2.查看ALERT 日志3.决定数据库乐成备份4.决定数据库归档到磁戴5.决定有足够的资材使数据库能运止正在良佳状态6.抽时间阅读DBA管制脚册每周例止处事:1.查看是可有对付象处于非寻常状态2.查看仄安战术3.查看SQL*NET 日志中是可有过得4.归档所有ALERT 日志每月例止处事:1.查看潜正在的妨害2.查看是可需要本能调劣及调劣时机3.查看I/O比赛4.查看数据库碎片5.制定将去的本能计划6.举止数据库调劣战维护相关挖表证明凡是维护查看表:是数据库管制员正在通常的凡是监控维护处事后搞的处事记录.只挖写查看的截止.仔细的问题管制记录妥协决历程便挖写问题管制记录表.如果正在查看历程中寻常正在相映栏目挨√,如果有非常十分情景挨X,共时正在后里写上相对付应的问题管制记录的编号.问题编号的命名圆法是12位,便是当时挖写记录表的日期战时间,比圆数据库管制员正在2010年04月11日14:00正在搞例止查看时创制了问题,那么正在挖写凡是维护查看表时便应正在相对付应的栏目写上问题编号201004111400.问题管制记录表是正在挖写凡是维护查看表的前提上创制了问题再挖写仔细的问题爆收妥协决历程.其中问题编号便是凡是维护查看表中的问题编号.变动记录表是咱们对付数据库搞支配前后的一个记录表.凡是查看维护表问题管制记录变动管制记录变动流火号:1.变动提出变动提出人变动提出日期变动本果简要形貌:2.变动评估变动评估人变动评估日期变动是可真施θ是θ可变动慢迫程度θ慢迫θ普遍θ不慢迫变动真施克日3.变动真施变动真施人变动真施日期。
ASE数据库服务器维护手册

A S E数据库服务器维护手册目录☆概述在ASE数据库服务器运行工作期间,数据库系统管理员应该完成相应的日常维护工作,在出现数据库故障后,应该具备一定的故障定位和解决能力,以保证数据库系统的稳定、高效运行,为应用系统提供正常的工作平台。
本文用于数据库管理员日常维护使用。
主要分为以下章节:ASE数据库服务器安装、ASE日常维护管理、ASE故障检查及恢复、ASE性能监控及优化☆ASE数据库服务器安装篇本篇以一个实际的产品安装过程为例,讲述ASE服务器的安装及基本配置过程。
因具体软硬件情况不同,某些细节可能有所差异,在实际安装过程中可能需要更改相应的部分。
硬件环境:IBM RS6000 H85双机(双CPU、1G内存)操作系统:IBM AIX 5.1.0.0数据库系统:SYBASE ASE FOR IBM 64bit,Version (For IBM 5L)一.逻辑卷组由IBM工程师对主机本地磁盘及磁盘阵列进行划分,系统中应已经存在多个逻辑卷组:rootvg、dbvg等。
其中的dbvg用于数据库系统数据库。
另外,建议为sybase ASE产品分配单独的存放空间(单独的文件系统存放),空间大小为2G左右。
(根据应用系统情况不同,可能需要划分多个逻辑卷组以对多个应用系统提供单独的存储系统。
)二.逻辑卷(根据应用系统情况不同,划分的逻辑卷大小、个数可能会有所差异,应在划分前与Sybase工程师进行相应的确认。
)三.创建sybase用户组及用户为了便于权限管理,需要创建sybase用户组和sybase用户。
建立sybase用户组使用操作系统管理员root用户身份,运行smitty管理工具使用上下箭头键选择 Security & Users ?Groups ?Add a Group在Group NAME处输入组名sybase,其余使用默认值即可,回车将弹出添加用户组成功提示,使用F3键返回上一界面。
使用与Add a Group同级的菜单项可察看目前系统中已存在组信息。
数据库日常运维手册

4.1建多个用户profile,并设置给相应的用户,例如
Create profile user_profile
{
Password Management = Enabled
PASSWORD_LIFE_TIME = 90
PASSWORD_GRACE_TIME = 5
PASSWORD_REUSE_TIME = Unlimited
注:SQL Server默认端口号为:1433
4、SQL Server实例连接检查;
方法:
(1)启动SSMS;
(2)依照实际情况,使用“本地”或“SA”方式登录;
(3)登录成功后,检查实例运行情况(“启动”或“停止”);
(4)通过实例属性检查“身份验证模式”与“服务器身份验证模式”。
5、账号安全管理;
7、资源使用管理;
方法:
(1)开始——程序——管理工具——性能日志与警报;
(2)点选“计数器日志”——新建“计数器”;
(3)输入“计数器名”,进入“计数器”设置窗口;
(4)添加计数器,可添加:
1)SQL Server Buffer:常规统计;
2)SQL ocks:缓存管理器;
3检查表空间碎片根据本月每周的检査分析数据库碎片情况找到相应的解决方法34寻找数据库性能调整的机会重点比较每天对数据库性能的监控报告确定是否有必要对数据库性能进行调整35数据库性能调整重点如有必要进行性能调整36提出下一步空间管理计划根据每周的监控提出空间管理的改进方法四oracle数据库加固41建多个用户profile并设置给相应的用户例如createprofileuserprofile此文档部分内容來源干网络如有佞权请告知删除
2.6、检查无效的trigger
数据库日志维护手册

数据库日志维护方式事务日志扩展可能由于以下原因或情形而发生:· 未提交的事务· 非常大的事务· 操作:DBCC DBREINDEX 和 CREATE INDEX· 在从事务日志备份还原时· 客户端应用程序不处理所有结果· 查询在事务日志完成扩展之前超时,您收到假的“Log Full”错误消息· 未复制的事务事务日志扩展可能导致下列情形:· 非常大的事务日志文件。
· 事务可能会失败并可能开始回滚。
· 事务可能会用很长时间才能完成。
· 可能发生性能问题。
· 可能发生阻塞现象。
从上面可以看出,日志会出现比较大的增长问题主要还是在于程序的事务处理上。
对交易日志的日常备份工作可以有效的防止日志文件过分消耗磁盘空间。
备份过程会将日志中不再需要的部分截除。
截除的方法是首先把旧记录标记为非活动状态,然后将新日志覆盖到旧日志的位置上,这样就可以防止交易日志的体积不断膨胀。
如果无法对日志进行经常性的备份工作,最好将数据库设置为"简单恢复模式"。
在这种模式下,系统会强制交易日志在每次记录标记点时,自动进行截除操作,以新日志覆盖旧日志。
在K/3系统中建议数据库的属性设置:选项设置:事务日志设置:事务日志文件分配空间可以根据磁盘空间情况,分配的空间可以设置为100-1000MB之间;避免数据库进行不停的自动增长;数据库和事务日志文件增长:采用按兆字节的增加方式,设置大小为100-200MB对于需要使用恢复模式为“完全”或者“大容量日志记录的”的设置方式:如果数据设置的为“完全”或者“大容量日志记录的”,为了防止日志过大而导致的性能问题以及客户信息化水平的差异。
可以通过设置维护计划对日志进行维护,同时对数据库出现误操作时,通过日志进行恢复,将损失减少到最小。
1.前提条件:SQL AGENT必须处于启动状态;●数据的故障恢复模式设置为“完全”或者“大容量日志记录的”2.设置步骤:●在企业管理器中“新建维护计划”确定后系统将提示如下图选择需要备份日志的数据库●继续选择《下一步》●继续选择《下一步》●继续选择《下一步》●出现下图后,进行如下设置。
数据库维护工作手册范本

数据库维护工作手册;¥文档编号:文档名称:编写:审核:' 批准:批准日期::目录1概述 (4)2数据库监控 (4)数据库监控工作内容 (4)数据库监控工作步骤 (4)查看数据库日志 (4)·检查是否有失效的数据库对象 (5)查看数据库剩余空间 (5)重点表检查 (5)查看数据库是否正常 (6)死锁检查 (6)监控SQL语句的执行 (6)操作系统级检查 (6)其他 (6)-3数据库维护 (7)数据库维护工作内容 (7)数据库维护工作事项 (7)页面修复 (7)数据库对象重建 (7)碎片回收(数据重组) (7)删除不用的数据 (7)备份恢复 (7)[历史数据迁移 (8)定期修改密码 (8)删除掉不必要的用户 (8)其他 (8)4数据库管理常用SQL脚本 (9)5日常维护和问题管理 (17)目的 (17)例行工作建议 (17)$相关填表说明 (17)1概述数据库的日常监控是使管理员及时了解系统异常的手段。
大部分情况下,系统总是正常运行的。
只有对正常情况的充分了解,才能通过对比正常情况发现异常情况。
对于数据库的日常监控要有记录,文字记录或者电子文档保存。
对于数据库异常进行分析,提出解决方案。
日常工作包括监控和维护两个部分。
此文档中关于数据库的运行命令示例主要针对于ORACLE数据库,但对于SYBASE数据库同样有参考价值,只要换用相对应的语句即可。
数据库监控2数据库监控【数据库监控工作内容制定和改进监控方案,编写监控脚本。
对于数据库进行日常监测,提交记录。
根据监测结果进行分析、预测,提交相应的系统改进建议方案。
数据库监控工作步骤2.1.1查看数据库日志数据库的日志上会有大量对于管理员有用的信息。
ORACLE的Alert日志纪录了数据库系统所报的系统级错误信息,以及数据块失效等严重错误信息。
错误信息的产生,会产生相应的跟踪文件,通过查看警告日志和跟踪文件可查找错误原因,对于发现的问题应及时解决和汇报。
(完整版)大数据库维护工作手册簿

(完整版)⼤数据库维护⼯作⼿册簿数据库维护⼯作⼿册⽂档编号:⽂档名称:编写:审核:批准: 批准⽇期:⽬录1概述 (3)2数据库监控 (3)2.1 数据库监控⼯作内容 (3)2.2 数据库监控⼯作步骤 (3)2.2.1 查看数据库⽇志 (3)2.2.2 检查是否有失效的数据库对象 (4)2.2.3 查看数据库剩余空间 (4)2.2.4 重点表检查 (4)2.2.5 查看数据库是否正常 (4)2.2.6 死锁检查 (5)2.2.7 监控SQL语句的执⾏ (5)2.2.8 操作系统级检查 (5)2.2.9 其他 (5)3数据库维护 (5)3.1 数据库维护⼯作内容 (5)3.2 数据库维护⼯作事项 (5)3.2.1 页⾯修复 (5)3.2.2 数据库对象重建 (6)3.2.3 碎⽚回收(数据重组) (6)3.2.4 删除不⽤的数据 (6)3.2.5 备份恢复 (6)3.2.6 历史数据迁移 (6)3.2.7 定期修改密码 (7)3.2.8 删除掉不必要的⽤户 (7)3.2.9 其他 (7)4数据库管理常⽤SQL脚本 (7)5⽇常维护和问题管理 (16)5.1 ⽬的 (16)5.2 例⾏⼯作建议 (16)5.3 相关填表说明 (16)1概述数据库的⽇常监控是使管理员及时了解系统异常的⼿段。
⼤部分情况下,系统总是正常运⾏的。
只有对正常情况的充分了解,才能通过对⽐正常情况发现异常情况。
对于数据库的⽇常监控要有记录,⽂字记录或者电⼦⽂档保存。
对于数据库异常进⾏分析,提出解决⽅案。
⽇常⼯作包括监控和维护两个部分。
此⽂档中关于数据库的运⾏命令⽰例主要针对于ORACLE数据库,但对于SYBASE数据库同样有参考价值,只要换⽤相对应的语句即可。
数据库监控2数据库监控数据库监控⼯作内容制定和改进监控⽅案,编写监控脚本。
对于数据库进⾏⽇常监测,提交记录。
根据监测结果进⾏分析、预测,提交相应的系统改进建议⽅案。
数据库监控⼯作步骤2.1.1查看数据库⽇志数据库的⽇志上会有⼤量对于管理员有⽤的信息。
(完整版)运维手册(最新整理)
XX软件股份有限公司
目录
1概述 (3)
1.1系统结构 (3)
1.2数据库分布 (4)
2运维环境介绍 (4)
2.1服务器配置及端口互通关系 (4)
2.2开发运行环境 (5)
2.2.1数据库 (5)
2.2.2插件(软件) (6)
2.2.3系统运行所需JDK (6)
2.2.4网络 (6)
3基本维护 (6)
3.1业务软件安装 (6)
3.2新增功能页面 (6)
3.3配置文件参数配置 (7)
3.4数据库维护 (7)
4账户信息 (7)
4.1登录服务器 (7)
4.2数据库 (7)
4.3其他问题 (7)
10、用于支撑预约系统、app运行的软件:
Apache Tomcat 7.x;该程序运行在10.121.16.98服务器上,用于保证预约网站、app 和服务器的数据传输,在整个预约网站和app运行期间该程序不可被关闭。
2.2.3系统运行所需JDK
预约网站与APP运行需要配置JDK,版本信息为:jdk1.7.0_17
2.2.4网络
连接到服务器有两种方式:
1、连接海航内部无线HNA-GROUP,通过内网网络访问账号网页登陆后即可ping通服务器。
游戏逻辑中心
2、通过网线配置有效IP后,通过内网网络访问账号网页登陆后即可ping通服务器。
3、远程桌面配置服务器需要通过堡垒机才能远程操作。
数据库维护工作手册
数据库维护工作手册文档编号:文档名称:编写:审核:批准:批准日期:目录1 概述 (4)2 数据库监控 (4)2.1 数据库监控工作内容 (4)2.2 数据库监控工作步骤 (4)2.2.1 查看数据库日志 (4)2.2.2 检查是否有失效的数据库对象 (5)2.2.3 查看数据库剩余空间 (5)2.2.4 重点表检查 (5)2.2.5 查看数据库是否正常 (6)2.2.6 死锁检查 (6)2.2.7 监控SQL语句的执行 (6)2.2.8 操作系统级检查 (6)2.2.9 其他 (6)3 数据库维护 (7)3.1 数据库维护工作内容 (7)3.2 数据库维护工作事项 (7)3.2.1 页面修复 (7)3.2.2 数据库对象重建 (7)3.2.3 碎片回收(数据重组) (7)3.2.4 删除不用的数据 (7)3.2.5 备份恢复 (7)3.2.6 历史数据迁移 (8)3.2.7 定期修改密码 (8)3.2.8 删除掉不必要的用户 (8)3.2.9 其他 (8)4 数据库管理常用SQL脚本 (9)5 日常维护和问题管理 (17)5.1 目的 (17)5.2 例行工作建议 (17)5.3 相关填表说明 (17)概述数据库的日常监控是使管理员及时了解系统异常的手段。
大部分情况下,系统总是正常运行的。
只有对正常情况的充分了解,才能通过对比正常情况发现异常情况。
对于数据库的日常监控要有记录,文字记录或者电子文档保存。
对于数据库异常进行分析,提出解决方案。
日常工作包括监控和维护两个部分。
此文档中关于数据库的运行命令示例主要针对于ORACLE数据库,但对于SYBASE数据库同样有参考价值,只要换用相对应的语句即可。
数据库监控1数据库监控数据库监控工作内容制定和改进监控方案,编写监控脚本。
对于数据库进行日常监测,提交记录。
根据监测结果进行分析、预测,提交相应的系统改进建议方案。
数据库监控工作步骤1.1.1查看数据库日志数据库的日志上会有大量对于管理员有用的信息。
(完整版)系统维护手册范本
密级:内部公开文档编号:LANDUNTEC_SD_TEMP_08版本号:V1.0分册名称:第1册/共1册系统维护手册中国普天信息产业股份有限公司--------------------------------------------------------------------- 中国普天信息产业股份有限公司对本文件资料享受著作权及其它专属权利,未经书面许可,不得将该等文件资料(其全部或任何部分)披露予任何第三方,或进行修改后使用。
文件更改摘要:目录1. 适用范围................................................................. 四2. 系统运行环境............................................................ 四2.1. 数据库环境........................................................ 四2.2. Web环境.......................................................... 四3. 系统运维计划............................................................. 五3.1. 运维目标........................................................... 五3.2. 运维内容.......................................................... 五3.3. 运维服务.......................................................... 五4. 各个设备工作状态判断标准及疑问........................................... 六4.1. 慧瑞通楼宇呼叫单元机,对讲分机状态监控............................. 六4.2. Ipc广播设备状态监控............................................... 六4.3. 电梯运行状态监控................................................... 六4.4. 摄像头运行状态监控................................................. 七4.5. 停车场系统系统实时控制及监控....................................... 七1.适用范围该手册适用于系统管理员及系统维护人员适用。
新疆移动_Oracle数据库维护手册
新疆移动oracle数据库维护手册目录1.数据库的日常检查和维护内容 (3)1.1 每天的工作 (3)1.2 每周的工作 (11)1.3 每月的工作 (13)1.4 每季度的工作 (15)1.5 每年度的工作 (16)2.数据库的启动与关闭 (16)2.1 启动数据库 (16)2.2 停止数据库 (17)3.数据库故障解决 (18)3.1 Latch free等待事件 (18)3.2 enqueue等待事件 (19)3.3 buffer busy waits等待事件 (19)3.4 清除分布式事物 (20)3.5 系统表空间使用率增加快 (21)3.6 ORA -00257: archiver error. Connect internal only, until freed .. 213.7 ORA-12518 TNS:listener could not hand off client connection (22)本文档主要为新疆移动数据库维护日常工作使用,为了保证客户系统正常稳定的运行,日常维护操作按照文档中要求进行,相关操作行为要和局方协商后进行,并及时给局方反馈处理情况与结果。
针对新疆移动Oracle数据库的日常维护工作,特制定如下处理流程:1.日工作流程2.周工作流程3.月工作流程4.季度工作流程5.年度工作流程1.数据库的日常检查和维护内容1.1 每天的工作1.1.1 检查数据库状态确认所有的INSTANCE状态以及listener状态正常,登陆到所有数据库或例程,检测ORACLE后台进程:1.1.2 检查文件系统检查oracle安装目录、归档日志目录使用率,如果文件系统的剩余空间过小或增长较快,需对其进行确认并删除不用的文件以释放空间。
1.1.3 检查警告日志文件(alert_SID.log)Oracle在运行过程中,会在警告日志文件(alert_SID.log)中记录数据库的一些运行情况:数据库的启动、关闭,启动时的非缺省参数;数据库的重做日志切换情况,记录每次切换的时间,及如果因为检查点(checkpoint)操作没有执行完成造成不能切换,会记录不能切换的原因;对数据库进行的某些操作,如创建或删除表空间、增加数据文件;数据库发生的错误,如表空间不够、出现坏块、数据库内部错误(ORA-600)定期检查日志文件,根据日志中发现的问题及时进行处理。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
数据库维护工作手册文档编号:文档名称:编写:审核:批准: 批准日期:目录1概述 (3)2数据库监控 (3)2.1 数据库监控工作内容 (3)2.2 数据库监控工作步骤 (3)2.2.1 查看数据库日志 (3)2.2.2 检查是否有失效的数据库对象 (4)2.2.3 查看数据库剩余空间 (4)2.2.4 重点表检查 (4)2.2.5 查看数据库是否正常 (4)2.2.6 死锁检查 (5)2.2.7 监控SQL语句的执行 (5)2.2.8 操作系统级检查 (5)2.2.9 其他 (5)3数据库维护 (5)3.1 数据库维护工作内容 (5)3.2 数据库维护工作事项 (5)3.2.1 页面修复 (5)3.2.2 数据库对象重建 (6)3.2.3 碎片回收(数据重组) (6)3.2.4 删除不用的数据 (6)3.2.5 备份恢复 (6)3.2.6 历史数据迁移 (6)3.2.7 定期修改密码 (7)3.2.8 删除掉不必要的用户 (7)3.2.9 其他 (7)4数据库管理常用SQL脚本 (7)5日常维护和问题管理 (16)5.1 目的 (16)5.2 例行工作建议 (16)5.3 相关填表说明 (16)1概述数据库的日常监控是使管理员及时了解系统异常的手段。
大部分情况下,系统总是正常运行的。
只有对正常情况的充分了解,才能通过对比正常情况发现异常情况。
对于数据库的日常监控要有记录,文字记录或者电子文档保存。
对于数据库异常进行分析,提出解决方案。
日常工作包括监控和维护两个部分。
此文档中关于数据库的运行命令示例主要针对于ORACLE数据库,但对于SYBASE数据库同样有参考价值,只要换用相对应的语句即可。
数据库监控2数据库监控数据库监控工作内容制定和改进监控方案,编写监控脚本。
对于数据库进行日常监测,提交记录。
根据监测结果进行分析、预测,提交相应的系统改进建议方案。
数据库监控工作步骤2.1.1查看数据库日志数据库的日志上会有大量对于管理员有用的信息。
ORACLE的Alert日志纪录了数据库系统所报的系统级错误信息,以及数据块失效等严重错误信息。
错误信息的产生,会产生相应的跟踪文件,通过查看警告日志和跟踪文件可查找错误原因,对于发现的问题应及时解决和汇报。
如:1.表空间是否满,是否需要进行添加或者扩展。
Alert文件中会显示有表块无法扩展的提示。
2.表的块或者页面是否损坏。
(往往这时alert文件中会显示ora-600的错误。
)3.数据库是否进行了异常操作。
(如:drop tablespace等等)。
实用命令:·报警日志文件(alert.log或alrt<SID>.ora)记录数据库启动,关闭和一些重要的出错信息。
数据库管理员应该经常检查这个文件,并对出现的问题作出即使的反应。
可以通过以下SQL 找到他的路径select value from v$parameter where upper(name) ='BACKGROUND_DUMP_DEST',或通过参数文件获得其路径,或者show parameter BACKGROUND_DUMP_DEST。
·后台跟踪文件路径与报警文件路径一致,记载了系统后台进程出错时写入的信息。
·用户跟踪文件记载了用户进程出错时写入的信息,一般不可能读懂,可以通过ORACLE的TKPROF工具转化为可以读懂的格式。
用户跟踪文件的路径,你可以通过以下SQL找到他的路径select value from v$parameter where upper(name) ='USER_DUMP_DEST',或通过参数文件获得其路径,或者show parameter USER_DUMP_DEST。
可以通过设置用户跟踪或dump命令来产生用户跟踪文件,一般在调试、优化、系统分析中有很大的作用。
可在参数文件种用SQL_TRACE=TRUE打开该文件(对所有用户),也可用alter session set sql_trace=true打开当前会话,也可用execute dbms_system.set_sql_trace_in_session(sid,serial#,true)打开指定会话。
2.1.2检查是否有失效的数据库对象主要关注索引,触发器,存储过程,函数等等。
如:查找user_objects数据字典,看其中是否有状态为invalid的对象。
判断失效原因(如:视图失效的原因有可能是由于创建视图的基表被删除等等),找出原因可进行对象重建或修复。
实用命令:Select object_name,object_typeFrom user_objectsWhere object_type=’INVALID’;2.1.3查看数据库剩余空间1.剩余空间不足时要扩展空间,一般的,当剩余空间小于10%时,要进行空间扩展。
对于ORACLE数据库,通过查找TABLESPACES相关的数据字典可以看到有用的信息。
2.检查数据快速增长的表,通过对于DBA_SEGMENTS数据字典的监视可以找到,当过快增长时,协调开发人员,确定解决方案。
2.1.4重点表检查1.检查系统核心业务表。
因为这些表健康与否与日常业务的正常运行密切相关。
重点检查这些表的索引是否失效,表的统计信息是否及时更新,如:当这些表进行了大的数据装载或者删除操作之后。
原则上需要检查所有的表,只是由于上面这些表更关键,建议管理员给以更多的关注。
2.重点检查数据量超过百万行的表,各地的情况可能不一样,当数据超过百万行之后,如果索引失效会导致表扫描,占用大量系统IO,严重影响系统性能。
2.1.5查看数据库是否正常包括数据库实例是否正常工作、listener是否工作正常,确保数据库系统环境正常。
数据库连接是否正常、检查是否有超出正常水平的连接数。
如:平常500个,某天下午忽然达到600个。
应记录这种异常情况。
分析产生这种情况的原因,如:在低版本的ORACLE中,很可能是一些其他异常的应用出错后产生的死连接。
2.1.6死锁检查监控数据库运行过程中,出现的阻塞,记录现象,记录产生阻塞的SQL语句,执行的用户,发生时间,频率,处理(杀掉、等待自然解锁等)。
ORACLE版本中的死锁会在alert文件中产生记录,oracle会自动解锁(其实是选择一个杀掉)。
对于死锁的处理过程要进行记录。
可以使用OEM工具或者查找相关的V$视图来确认产生阻塞的语句。
2.1.7监控SQL语句的执行查找效率低下的SQL语句,联系协调开发人员,进行相关处理。
可使用ORACLE提供的AWR进行,也可使用ORACLE提供的OEM工具执行,或者自行编制的脚本等等。
2.1.8操作系统级检查运行vmstat,sar,topas(AIX系统),glance(HP系统)等命令检查CPU、内存、虚拟内存等的使用情况。
运行df,du,iostat检查磁盘使用情况运行netstat检查网络情况运行手工编制的监控脚本检查。
针对于操作系统的不同,使用的命令也会有不同,请参考相应的操作系统文档。
建议使用man命令察看相应的帮助信息。
2.1.9其他每天查看晚间定时执行的数据库信息收集作业和备份作业的日志输出,确认都已正常完成。
往往不能正常完成是由于如下的原因:请确认脚本是否变动(错误的修改造成等等),设备(主机,磁盘阵列,磁带库,网络等等)是否正常,空间是否足够等等。
建议每天按业务峰值情况,对数据库性能数据进行定时采集及分析。
3数据库维护数据库维护工作内容包括维护、故障诊断、错误修复、备份恢复、历史数据迁移等过程。
数据库维护工作事项3.1.1页面修复根据日常监控的结果,进行页面(或者数据库坏块)修复,如将表数据导出后重建表,然后导入数据。
提交修复记录。
3.1.2数据库对象重建根据数据库监控的结果,重建失效的对象。
如:索引、存储过程、函数、视图、触发器等等。
实用命令:Alter index <索引名> rebuild [online];3.1.3碎片回收(数据重组)当某些数据库运行一段时间后,表会产生碎片,影响数据库的性能。
可根据日常检查的结果,运用工具或脚本对于数据库空间进行重组或回收。
由于ORACLE数据库本身的原因,在进行了DELETE操作之后也不会使HWM(High Water Mark 高水位线)降低,因此不会释放所占用的空间,所以建议在进行了数据迁移之后将全库进行EXP,然后进行IMP操作,以释放占用的空间。
3.1.4删除不用的数据此项工作要得到开发方、设计人员、以及相关人员的确认后,方可执行。
3.1.5备份恢复需要定期对于数据库备份进行有效性检测,定期进行数据恢复的演练操作。
以防止万一的数据库事故时准备不足。
数据库需要采用在线的热备份,不需要关闭数据库进行,在备份的同时可以进行正常的数据库的各种操作,满足了7*24的系统的需要。
数据库的备份不能影响用户对数据库的访问。
目标需要在线热备份多级增量备份并行备份,恢复减小所需要备份量备份,恢复使用简单可参考如下的方案:1.每月做一个数据库的全备份(包含只读表空间)2.每星期做一次零级备份(不包含只读表空间)3.每个星期三做一次一级备份4.每天做一个二级备份5.任何表空间改成只读状态后做一个该表空间的备份。
6.当需要时(如四个小时归档文件系统就要接近满了)备份归档文件。
3.1.6历史数据迁移定期进行历史数据迁移,减少生产数据库的压力。
3.1.7定期修改密码包括SYS,SYSTEM等用户。
3.1.8删除掉不必要的用户对于系统安装时的演示用户,如:hr,scott等。
建议每周定期清理和备份一周所产生的Alert日志、跟踪文件和dump文件。
分别位于$ORACLE_BASE/admin/$ORACLE_SID/bdump, $ORACLE_BASE/admin/$ORACLE_SID/udump, $ORACLE_BASE/admin/$ORACLE_SID/cdump,等目录下。
定期对表进行统计分析,(如可使用analyze等命令,8i以上有dbms_stats包来实现,使SQL优化器总是能找到最好的查询策略。
制定和执行纪录保证生产库的安全:应绝对禁止在生产库上进行开发、测试。
3.1.9其他针对不同的数据库版本的不同特点进行相应的维护操作。
具体情况请参见ORACLE文档或者访问metalink。
4数据库管理常用SQL脚本常用的SQL脚本,在实施时可供数据库管理员参考,在执行时,需要进行相应的修改。
1.剩余空间检查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_chunksFROM dba_free_spaceGROUP BY tablespace_name2.表空间数据量情况显示SELECT tablespace_name, max_blocks, count_blocks, sum_free_blocks, to_char(100*sum_free_blocks/sum_alloc_blocks, '99.99') || '%'AS pct_freeFROM ( SELECT tablespace_name, sum(blocks) AS sum_alloc_blocksFROM dba_data_filesGROUP BY tablespace_name), ( SELECT tablespace_name AS fs_ts_name, max(blocks) AS max_blocks, count(blocks) AS count_blocks, sum(blocks) AS sum_free_blocksFROM dba_free_spaceGROUP BY tablespace_name )WHERE tablespace_name = fs_ts_name3.表和索引分析BEGINdbms_utility.analyze_schema ( '&OWNER', 'ESTIMATE', NULL, 5 ) ; END ;4.检查空间情况SELECT a.table_name, a.next_extent, a.tablespace_nameFROM all_tables a,( SELECT tablespace_name, max(bytes) as big_chunkFROM dba_free_spaceGROUP BY tablespace_name ) fWHERE f.tablespace_name = a.tablespace_nameAND a.next_extent > f.big_chunk5.检查已经存在的空间扩展SELECT count(*), segment_name, segment_type, dt.tablespace_name FROM dba_tablespaces dt, dba_extents dxWHERE dt.tablespace_name = dx.tablespace_nameAND dt.next_extent != dx.bytes AND dx.owner = '&OWNER'GROUP BY segment_name, segment_type, dt.tablespace_name6.检查没有主键的表SELECT table_nameFROM all_tablesWHERE owner = '&OWNER'MINUSSELECT table_nameFROM all_constraintsWHERE owner = '&&OWNER'AND constraint_type = 'P'7.检查失效的主键SELECT owner, constraint_name, table_name, statusFROM all_constraintsWHERE owner = '&OWNER' AND status = 'DISABLED’ AND constraint_type = 'P'8.重建索引,具体参数请根据实际情况进行修改SELECT 'alter index ' || index_name || ' rebuild ', 'tablespace INDEXES storage ( initial 256 K next 256 K ) ; 'FROM all_indexesWHERE ( tablespace_name != 'INDEXES'OR next_extent != ( 256 * 1024 ))AND owner = '&OWNER'9.对比两个实例的不同SELECT object_name, object_typeFROM user_objectsMINUSSELECT object_name, object_typeFROM user_objects@&my_db_link10.查看动态性能视图Select * from V$FIXED_TABLE11.查看约束select a.constraint_name, a.constraint_type,a.*from user_constraints awhere table_name='table_name';select constraint_name, column_namefrom user_cons_columnswhere table_name='table_name';12.查看索引user_indexes包含索引的名字,user_ind_columns包含索引的列.13.查看数据库启动参数:show parameter para,v$parameter提供当前会话信息,v$system_parameter提供当前系统信息。