Oracle数据库维护及管理基本手册

合集下载

ORACLE管理工作标准手册

ORACLE管理工作标准手册

ORACLE管理工作标准手册ORACLE管理工作标准手册一、引言随着信息技术的迅猛发展,数据库管理工作变得越来越重要。

数据库管理工作的标准化和规范化对于提高工作效率、确保数据安全和准确性具有举足轻重的意义。

本手册旨在建立起一个统一的ORACLE数据库管理工作标准,对相关工作进行规范和指导,以提高工作质量和效率。

二、数据库管理职责1. 数据库创建与维护:负责数据库的创建、备份、恢复、维护,确保数据库的稳定运行。

2. 数据库性能优化:负责分析数据库性能瓶颈,制定相应的优化方案,提高数据库的响应速度。

3. 数据安全管理:负责数据库的安全策略制定和执行,确保数据的安全性和完整性。

4. 数据库监控与预警:负责实时监控数据库运行状况,及时处理异常情况并提供预警。

5. 数据备份与恢复:负责数据库的定期备份和恢复,确保数据的可靠性和可用性。

6. 数据库版本升级和迁移:负责数据库版本的升级和迁移,确保系统的平稳过渡。

三、数据库管理工作标准1. 数据库命名规范:数据库应根据业务功能或业务部门进行命名,名称应具有可理解和易于识别的特点。

2. 数据库表结构规范:表名、字段名应具有相关性,使用英文小写字母和下划线分割,避免使用特殊字符或中文命名。

3. 数据库连接规范:连接数据库应使用唯一的用户名和密码,并设置正确的权限以控制对数据库的访问。

4. 数据库备份规范:定期制定数据库备份计划,包括全量备份和增量备份,并存储在独立的备份设备上,避免与数据库服务器放在同一设备上。

5. 数据库恢复规范:备份数据应按照备份计划进行恢复,恢复过程应进行测试和验证,确保数据的完整性和一致性。

6. 数据库性能优化规范:对于性能较差的SQL语句,应进行分析和优化,采用索引、分区等技术提高查询效率。

7. 数据库安全策略规范:完善数据库用户权限管理,禁止使用默认用户名和密码,并及时屏蔽不再使用的用户账号。

8. 数据库监控规范:使用数据库性能监控工具进行实时监控,设置阈值并及时处理异常情况。

oracle数据库DBA管理手册1

oracle数据库DBA管理手册1

4 第一部分 数据库体系结构
下载
• 序列。 • 过程、函数、软件包和触发器。 • 同义词。 • 权限及角色。 • 数据库链接。 • 段、盘区和块。 • 回滚段。 • 快照与显形图。 下面对上述每一种元素进行详细介绍。
1.4.1 表、列和数据类型
表是数据在一个 Oracle数据库中的存储机制,如图 1-1所示,它包含一组固定的列。表中 的列描述该表所跟踪的实体的属性,每个列都有一个名字及各自的特性。
1.2.2 文件
每个表空间由同一磁盘上的一个或多个文件组成,这些文件叫数据文件 (datafile)。一个数 据文件只能属于一个表空间。在 Oracle 7.2中,数据文件创建后可改变大小。创建新的表空间 需要创建新的数据文件。
数据文件一旦加入到表空间中,就不能从这个表空间中移走,也不能与其他表空间发生 联系。
1.1 数据库概述及实例
要了解 Oracle体系结构,必须先了解两个基本概念:数据库和实例。下面两节将详细描述 这两个基本概念及其在 Oracle中的实现。
1.2 数据库
数据库(database)是一个数据集合。 Oracle能够提供按照一致性方式定义的定义模型 (称作 关系模型 )存储和访问数据的方法,因此 Oracle被认为是一种关系数据库管理系统 (RDBMS)。 对“数据库”一词的大多数引用不仅是指物理的数据,也指本章中描述的物理、内存及进程 对象的组合。
下载
3 第1章 Oracle体系结构
1.3 实例
为了访问数据库中的数据, Oracle使用一组所有用户共享的后台进程。此外,还有一些存 储结构(统称为System Global Area,即SGA)用来存储最近从数据库查询的数据。数据块缓存 区和SQL共享池(Shared SQL Pool)是SGA中的最大部分,一般占分配给 SGA的内存95%以上。 通过减少对数据文件的 I/O次数,这些存储区域可以改善数据库性能。

数据库维护工作手册

数据库维护工作手册

数据库维护处事脚册之阳早格格创做文档编号:文档称呼:编写:审核:批准: 接受日期:目录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.变动真施变动真施人变动真施日期。

ORACLE数据库操作手册

ORACLE数据库操作手册

ORACLE 数据库操作手册4.1中国通信集团公司安徽有限公司信息系统部2010年7月修改记录目录第一章数据库使用注意事项 (6)第一章数据库使用注意事项 (6)一、营业前台使用统一地址,后台业务严格区别业务区,不可随意访问 (6)二、不涉及当天业务的查询和统计在BCV库中操作 (6)三、前台营业时间禁止在生产环境进行大数据量的查询和统计操作 (6)四、关联表均很大的查询和统计尽量用BCV库 (6)五、按照业务规则进行DML操作,DML不要忘记执行COMMIT或ROLLBACK.. 7六、大批量更新数据的事务分次提交 (7)七、数据库DDL操作由数据库管理员根据业务规则进行 (7)八、数据库使用结束及时断开连接,但也不要频繁的连接和断开 (7)九、客户端配置与客户端第三方工具使用 (7)十、不要使用工具进行可视化数据修改操作 (7)十一、合理使用帐号,妥善保管密码 (7)十二、严禁在生产库进行业务开发、调试工作 (8)十三、单条SQL语句的长度最好不要超过1000字节 (8)十四、数据导出导入使用expdp/impdp,不要使用exp/imp (8)十五、PL/SQL程序应尽量符合第二章要求,注意事务的提交、回滚及异常情况处理 8十六、一定不能在循环体内部创建数据库的连接,包括通过JDBC连接数据库。

(8)十七、SQL语句在执行前需要对语句逻辑进行检查,避免形成隐式笛卡尔积,占用大量临时表空间和降低语句效率。

(8)第二章SQL编写注意事项 (9)一、查看表字段名或随机少量数据时,不要使用SELECT * FROM TABLENAME (9)二、SELECT 子句中避免使用* (9)三、查询总记录数时,尽量不要用COUNT(*),而要指定一个有索引的字段。

(9)四、对分区表进行查询时,尽量把分区键作为查询条件的第一个条件 (9)五、无条件删除表中数据时,用TRUNCATE代替DELETE (9)六、查询语句中尽量使用表的索引字段,避免做大表的全表扫描 (9)七、带通配符(%)的LIKE语句 (10)八、用EXISTS替代IN (10)九、用NOT EXISTS替代NOT IN (10)十、尽可能用UNION ALL替换UNION (11)十一、ORDER BY语句建议 (11)十二、避免使用NOT (11)十三、使用DECODE函数减少处理时间 (12)十四、删除重复记录 (12)十五、如果可以使用WHERE条件,尽量不要在HA VING中限制数据 (12)十六、尽量不要使数据排序 (12)十七、避免改变索引列类型 (13)十八、避免在索引列上使用计算 (13)十九、避免在索引列上使用IS NULL和IS NOT NULL (13)二十、子查询改写成表连接 (13)二十一、使用索引的第一个列 (14)二十二、减少对表的查询 (14)二十三、SQL语句中:用>=替代> (14)如果在ID列上建有索引,则语句SELECT * FROM EMPLOYEE WHERE ID >= 9 要比语句SELECT * FROM EMPLOYEE WHERE ID > 8高效。

Oracle T5-2服务器维护手册

Oracle T5-2服务器维护手册

Oracle T5-2服务器维护手册一、启动、关闭数据库1、启动实例的各种模式1)启动实例,装载并打开数据库这是最普通的数据库操作,意味着某个实例已经启动并且数据库也已经装载并打开。

这种模式允许任何一个有效的用户连接到数据库,并执行典型的数据访问操作。

启动实例接着从默认的服务器参数文件位置读取初始化参数,然后通过STARTUP命令来装载和打开数据库: SQL STARTUP2)启动实例,不挂载数据库启动实例而不用装载数据库,通常只在整个数据库创建过程中使用该模式:SQL STARTUP NOMOUNT3)启动实例,并装载数据库可以启动实例并装载数据库,但不打开数据库。

该模式允许执行特定的维护操作,例:如在下面的任务中必须装载数据库而不打开数据库。

X重命名数据文件X添加取消或重命名重做日志文件X允许和禁止重做日志存档选项X执行完整的数据为恢复操作SQLSTARTUP MOUNT4)在启动过程中限制访问数据库可以在受限制的模式下启动实例并装载和打开数据库,以便只有管理人员而不是一般的数据库用户可以利用数据库。

当需要完成以下一种任务时,使用这种数据库启动模式:X执行数据库数据的导入或导出操作X执行数据库装载操作用SQL XLoaderX暂时阻止一般的用户使用数据X在某个移植过程和升级操作过程中SQL STARTUP RESTRICT5)强制实例启动-慎用在一些特殊环境下,可能会在启动数据库实例的时候遇到一些问题。

一般不要迫使数据库启动,除非存在以下情形:用SHUTDOWNNORMAL、SHUTDOWNIMMEDIATE、SHUTDOWNTRANSACTIONAL命令不能关闭当前的实例时。

X在启动实例的时候遇到一些问题时。

SQL STARTUP FORCE6)启动实例, 装载数据库, 并启动完整的介质恢复过程如果知道需要介质恢复过程,就可以启动实例并为其装载数据库,以及通过使用带RECOVER选项的STARTUP命令的方法来自动启动恢复过程。

Oracle数据库管理员参考手册说明书

Oracle数据库管理员参考手册说明书

7-100SQL ReferenceALTER ROLLBACK SEGMENTPurposeUse the ALTER ROLLBACK SEGMENT statement to bring a rollback segment online or offline, to change its storage characteristics, or to shrink it to an optimal or specified size.PrerequisitesYou must have ALTER ROLLBACK SEGMENT system privilege.Syntaxstorage_clause :See storage_clause on page 11-129.Keywords and Parametersrollback_segmentSpecify the name of an existing rollback segment.ONLINESpecify ONLINE to bring the rollback segment online. When you create a rollback segment, it is initially offline and not available for transactions. This clause brings the rollback segment online, making it available for transactions by your instance.See Also:CREATE ROLLBACK SEGMENT on page 9-149 forinformation on creating a rollback segment ALTER ROLLBACK SEGMENT rollback_segment ONLINEOFFLINEstorage_clauseSHRINK TOinteger KM;SQL Statements: ALTER CLUSTER to ALTER SYSTEM 7-101You can also bring a rollback segment online when you start your instance with the initialization parameter ROLLBACK_SEGMENTS .OFFLINESpecify OFFLINE to take the rollback segment offline.s If the rollback segment does not contain any information needed to roll back anactive transaction, Oracle takes it offline immediately.sIf the rollback segment does contain information for active transactions, Oracle makes the rollback segment unavailable for future transactions and takes it offline after all the active transactions are committed or rolled back.Once the rollback segment is offline, it can be brought online by any instance.To see whether a rollback segment is online or offline, query the data dictionary view DBA_ROLLBACK_SEGS . Online rollback segments have a STATUS value of IN_USE . Offline rollback segments have a STATUS value of AVAILABLE .Restriction: You cannot take the SYSTEM rollback segment offline.storage_clauseUse the storage_clause to change the rollback segment’s storage characteristics.Restriction: You cannot change the values of the INITIAL and MINEXTENTS for an existing rollback segment.SHRINKSpecify SHRINK if you want Oracle to attempt to shrink the rollback segment to an optimal or specified size. The success and amount of shrinkage depend on the available free space in the rollback segment and how active transactions are holding space in the rollback segment.The value of integer is in bytes, unless you specify K or M for kilobytes or megabytes.If you do not specify TO integer , then the size defaults to the OPTIMAL value of the storage_clause of the CREATE ROLLBACK SEGMENT statement that createdSee Also:Oracle8i Administrator’s Guide for more information on making rollback segments available and unavailableSee Also:storage_clause on page 11-129 for syntax and additional informationthe rollback segment. If OPTIMAL was not specified, then the size defaults to theMINEXTENTS value of the storage_clause of the CREATE ROLLBACK SEGMENTstatement.Regardless of whether you specify TO integer:s The value to which Oracle shrinks the rollback segment is valid for theexecution of the statement. Thereafter, the size reverts to the OPTIMAL value ofthe CREATE ROLLBACK SEGMENT statement.s The rollback segment cannot shrink to less than two extents.To determine the actual size of a rollback segment after attempting to shrink it,query the BYTES,BLOCKS, and EXTENTS columns of the DBA_SEGMENTS view.Restriction: For Oracle Parallel Server, you can shrink only rollback segments thatare online to your instance.ExamplesBringing a Rollback Segment Online Example This statement brings the rollbacksegment RSONE online:ALTER ROLLBACK SEGMENT rsone ONLINE;Changing Rollback Segment Storage Example This statement changes theSTORAGE parameters for RSONE:ALTER ROLLBACK SEGMENT rsoneSTORAGE (NEXT 1000 MAXEXTENTS 20);Resizing a Rollback Segment Example This statement attempts to resize arollback segment to 100 megabytes:ALTER ROLLBACK SEGMENT rsoneSHRINK TO 100 M;7-102SQL Reference。

应用Oracle数据库监控维护技术,维护数据库安全

应用Oracle数据库监控维护技术,维护数据库安全

赣糕脚、强L毛LE工电子耩擘应用o r acl e数据库监控维护技术,维护数据库安全冉崇蒡迟景元(陕两科技丈学陕西西安7l0021)【燕樊】数据露安哞:传蠲遂一露蹩淘绕饕数群库管理受豹鬃梦,数据库数据瓣丢失醣及数嚣库被非法用户的侵入使得数据撵管理甓身心疲:{簌。

萌绕数据库的蜜全性问题提出一些安全性策略,希颦对数据库管理员有所帮助。

【关键溺】0r ac l e数摄蓐数摄撵安全中圈分类号:TP3文献标识码:^文童编号:167卜一7597(2008)09t0025一O I数帮库安全住问题应龟括两个部分:一是数据辟数据的安全,它席能确保当数据库系统停机时.当数据库数据存储媒体被破坏时以及当数据库瘸产误撩绍对,数据痒数始信息年垒手丢失,二是数据库系统不被舔法瘸户侵入,它应尽可能地堵住潜在的各种漏洞,防止非法用户利用它们侵入数摇痒系绞。

一、数据库安全的主鬟内窖(一)用户缎和安全燃在撩作系统F建立秘户缍怒僳证数溅律安全健的一种有效方法。

O r a cl e程序为了安全性目的~般分为两类:~类是所有的用户都可执行,菇一类强鸯§鞋爵攮霉亍。

褒潍i x强壤F组设鹫瓣聚霉文传是/et c/gr跚p,关于这个文件如何配置,可以参阅uni x的有关手册,以下是保证or ac l e数据摩安全性的蕊种方法:1.程安装o r acl e Se r ve r前,龟t建数嚣库管壤员组(潞A)而且分配r oo t和0r acl e软件拥有者的用户T D给这个组。

D B A能执行的程序只有710权陵。

在安装过程串S程{豫A系统投袋鑫令技冬硗分配绘p酝缓。

2.允许一部分uni x用户有限制地访问0r acl e服势器系统,增加一个由授权嗣户缀成的O粉cl e组,确保绘蚀8cl e服务器实用铡程o r acl e组l D,公用的町执行程序,院如sQ L神l us、S钆{Fom s等,戍该可被这组执行,然后这个实用例程的权限为710,它将允许同组的用户执行,而其他用户不施。

数据库管理与维护上机指导

数据库管理与维护上机指导

二.实验要求
1.掌握在 Windows 操作系统下安装 Oracle 服务器和客户端管理软件 2.了解 Unix 或 Linux 操作系统下安装 Oracle 服务器 3.掌握卸载 Oracle 数据库服务器的方法步骤
三.实验步骤
1.在 Windows 2000 Server 或 Windows XP 下安装 Oracle 服务器 (1)双击安装光盘中的“SETUP”程序图标,出现图 1 所示界面。Oracle 此时正在检查操作系统的配置是否符合 Oracle 的要求,如果有问题就会报错; 如果没有问题会进入图所示的画面。
图 13 安装界面——“概要”对话框
7
PDF 文件使用 "pdfFactory Pro" 试用版本创建
滨州学院计算机科学技术系 数据库管理与维护课程上机指导手册 南理勇
图 14 Oracle 安装界面
图 15 Oracle SCOTT 用户解锁界面
(14)当出现安装结束界面以后,将安装完成界面中的信息记录到文件中, 这对以后数据库维护非常有用。单击“退出(X) ”按钮,退出安装。安装结束 界面如图 16 所示。
(7)选择数据库配置,即选择要创建数据库类型:一般用途、事务处理、 数据仓库、高级。保留默认选项,如图 7 所示。单击“下一步”按钮。
图 7 安装界面——“选择数据库配置”对话框
(8)指定数据库配置选项:数据库命名、数据库字符集、数据库示例是否 创建带样本方案的数据库。保留默认选项,如图 8 所示。单击“下一步”按钮。
2
PDF 文件使用 "pdfFactory Pro" 试用版本创建
滨州学院计算机科学技术系 数据库管理与维护课程上机指导手册 南理勇

数据库维护工作手册范本

数据库维护工作手册范本

数据库维护工作手册;¥文档编号:文档名称:编写:审核:' 批准:批准日期::目录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日志纪录了数据库系统所报的系统级错误信息,以及数据块失效等严重错误信息。

错误信息的产生,会产生相应的跟踪文件,通过查看警告日志和跟踪文件可查找错误原因,对于发现的问题应及时解决和汇报。

Oracle 11g完全手册

Oracle 11g完全手册

一.Window下关闭Oracle 11g正常在Windows下安全关闭Oracle数据库系统的步骤如下:1.从命令行下找到oracle的BIN目录,然后输入isqlplusctl stop命令停止isqlplus进程。

2.同样在BIN目录下,emctl stop dbconsole停止企业管理器的控制台进程。

3.同样在BIN目录下,lsnrctl stop停止监听进程。

4.在命令行下输入sqlplus /nolog , 然后conn / as sysdba连接到数据库shutdown immediate;====================================================================== select username,password from dba_users; --查看用户信息select username,account_status from dba_users; --查看用户是否解锁alter user scott account unlock; --解锁scott用户alter user scott account lock;--锁scott用户alter user scott identified by tiger; --为scott用户修改密码为tiger创建用户以及给表赋予权限:创建用户create user user_name identified by password;grant dba to user_name;查询表的权限grant select on gecs_law to user_name;select file_name from dba_data_files; --查看数据文件路径select name from v$controlfile; --查看控制文件路径select member from v$logfile; --查看日志文件路径====================================================================== Oracle关于shutdown、startup几个参数:shutdown有四个参数:normal、transactional、immediate、abort。

oracle数据库维护手册

oracle数据库维护手册

目录1. 检查数据库基本状况41.1. 检查ORACLE实例状态41.2. 检查ORACLE服务进程41.3. 检查ORACLE监听状态52. 检查系统和ORACLE日志文件62.1. 检查操作系统日志文件62.2. 检查ORACLE日志文件62.3. 检查ORACLE核心转储目录72.4. 检查ROOT用户和ORACLE用户的EMAIL 73. 检查ORACLE对象状态73.1. 检查ORACLE控制文件状态73.2. 检查ORACLE在线日志状态83.3. 检查ORACLE表空间的状态83.4. 检查ORACLE所有数据文件状态83.5. 检查无效对象93.6. 检查所有回滚段状态104. 检查ORACLE相关资源的使用情况104.1. 检查ORACLE初始化文件中相关参数值10 4.2. 检查数据库连接情况114.3. 检查系统磁盘空间124.4. 检查表空间使用情况124.5. 检查一些扩展异常的对象134.6. 检查SYSTEM表空间内的内容144.7. 检查对象的下一扩展与表空间的最大扩展值145. 检查ORACLE数据库备份结果145.1. 检查数据库备份日志信息155.2. 检查BACKUP卷中文件产生的时间155.3. 检查ORACLE用户的EMAIL 156. 检查ORACLE数据库性能156.1. 检查数据库的等待事件156.2. DISK READ最高的SQL语句的获取156.3. 查找前十条性能差的SQL 166.4. 等待时间最多的5个系统等待事件的获取16 6.5. 检查运行很久的SQL 166.6. 检查消耗CPU最高的进程166.7. 检查碎片程度高的表176.8. 检查表空间的I/O 比例176.9. 检查文件系统的I/O 比例176.10. 检查死锁及处理176.11. 检查数据库CPU、I/O、内存性能186.12. 查看是否有僵死进程196.13. 检查行链接/迁移196.14. 定期做统计分析196.15. 检查缓冲区命中率206.16. 检查共享池命中率206.17. 检查排序区206.18. 检查日志缓冲区217. 检查数据库安全性217.1. 检查系统安全日志信息217.2. 检查用户修改密码218. 其他检查228.1. 检查当前CRONTAB任务是否正常228.2. ORACLE JOB是否有失败228.3. 监控数据量的增长情况228.4. 检查失效的索引238.5. 检查不起作用的约束238.6. 检查无效的TRIGGER 23本文档为本人亲自整理的公司的维护文档,内容很详细,DBA日常任务基本就是文档中写的那些,初学DBA或是有意学习DBA的同学们可取去学习学习,文档有实例讲解,很实用。

oracle 数据库管理员日常操作手册

oracle 数据库管理员日常操作手册

Oracle数据库管理员日常操作手册===================一、用户管理------### 1.1 创建用户1. 打开Oracle数据库管理工具(如SQL*Plus或SQL Developer)。

2. 使用管理员账户(如sys)登录。

3. 执行以下SQL语句创建用户:```sqlCREATE USER username IDENTIFIED BY password;```其中,`username`为用户名,`password`为密码。

4. 可选:为新用户分配表空间。

例如,执行以下语句将用户分配到默认的表空间:```sqlALTER USER username DEFAULT TABLESPACE tablespace_name;```其中,`tablespace_name`为要分配给用户的表空间的名称。

### 1.2 修改用户密码1. 打开Oracle数据库管理工具。

2. 使用管理员账户登录。

3. 执行以下SQL语句修改用户密码:```sqlALTER USER username IDENTIFIED BY new_password;```其中,`username`为要修改密码的用户名,`new_password`为用户的新密码。

### 1.3 删除用户1. 打开Oracle数据库管理工具。

2. 使用管理员账户登录。

3. 执行以下SQL语句删除用户:```sqlDROP USER username;```其中,`username`为要删除的用户名。

二、数据库备份与恢复----------### 2.1 执行完整备份1. 打开Oracle数据库管理工具(如Enterprise Manager)。

2. 选择要进行备份的数据库。

3. 执行备份命令。

通常使用类似以下的命令:```bashRMAN> RUN {2> ALLOCATE CHANNEL c1 DEVICE TYPE DISK;3> BACKUP DATABASE FORMAT '/path/to/backup/location/backup_date' PLUS ARCHIVELOG;4> }```其中,`/path/to/backup/location/`为备份文件的存储路径,`backup_date`为备份日期和时间。

ORACLE系统维护参考手册

ORACLE系统维护参考手册

目录1 引言 41.1 目的 41.2 系统介绍 41.3 适用范围 41.4 术语 41.5 参考资料 41.6 注意事项(重要) 42 准备工作 53 常见系统配置、维护 53.1 ORACLE当前库及其监听的启动、关闭 5 3.1.1 Oracle的启动 53.1.2 监听器的启动 63.1.3 检查监听器服务 63.1.4 Oracle的关闭 63.1.5 监听器的关闭 63.1.6 自动启动和关闭Oracle 73.2 ORACLE帐户管理 83.2.1 查询用户信息 83.2.2 增加用户 83.2.3 修改用户密码 93.2.4 删除用户 93.3 服务命名配置 93.4 修改内存结构 103.5 ORACLE最大链接数两种修改办法 10 3.6 导入导出数据 113.7 ORACLE联机在线日志文件管理 113.7.1 查询联机在线日志文件信息 113.7.2 修改数据库联机在线日志文件 123.8 ORACLE归档日志管理 123.8.1 检查归档配置 123.8.2 设置归档模式和取消归档模式 133.9 ORACLE存储信息 143.9.1 查询存储信息 143.9.2 创建表空间 153.10 修改某用户缺省和临时表空间 153.11 ORACLE数据库的汉字显示问题 163.12 ORACLE卸载方法 173.12.1 UNIX 173.12.2 WIN 174 常见开发操作 184.1 常见表字段名操作 184.1.1 查看表字段 184.1.2 增加表字段 184.1.3 删除表字段 184.1.4 修改表字段类型 194.1.5 修改表字段名 194.2 表操作 194.2.1 查询表信息 194.2.2 创建表 194.2.3 删除表数据(重要) 194.2.4 删除表 214.2.5 重命名表 214.2.6 备份表 214.3 索引操作 214.3.1 查询索引信息 214.3.2 创建索引 224.3.3 删除索引 224.3.4 重建索引 224.4 SQL语句及存储过程优化 234.4.1 SQL语句是否使用索引 234.4.2 SQL语句是否使用了最恰当的索引 244.4.3 怎么提示SQL语句使用固定的索引 244.4.4 怎么提示SQL语句固定使用全表扫描 244.4.5 存储过程是否可以执行更少的、有效的SQL语句 244.5 操作阻塞,锁情况 245 FAQ 255.1 操作表数据提示数据文件错误 255.2 从数据库服务器进程运行中,优化最消耗CPU的SQL语句 25 5.3 导数据到新数据库指定用户的缺省表空间 265.4 正确安装数据库软件,但无法创建库 265.5 打开数据库报告关闭错误,关闭数据库报告打开错误 275.6 用户不能在数据库中创建对象 275.7 导入导出错误 275.8 不同版本的数据库数据导入导出 285.9 数据库挂起问题 285.10 多个数据库操作方法:不同实例间转换. 285.11 查询错误号信息 295.12 查看ORACLE系统的版本 295.13 查看ORACLE系统安装了哪些选项 295.14 查看ORACLE软件是几位数据库 295.15 数据库起不来,报告ORA-01157和ORA-01110错误 295.16 ORACLE目录文件维护 30文件修改控制 31目录2 准备工作oracle 9i软件的操作系统安装用户名和密码(用户名一般为oracle,组一般为dba)。

运维手册_数据库_Oracle11gRAC日常运维手册(352)

运维手册_数据库_Oracle11gRAC日常运维手册(352)

Oracle运维手册恒生电子客服总部系统服务部本文所述内容(包括文字和图片),恒生电子股份有限公司(以下简称“恒生”或“恒生公司”)拥有完全独立的唯一版权。

未经恒生公司书面同意或授权,任何单位和个人都不得将其复制、影印或引用。

目录第一章通过SQL*Plus管理Oracle系统 (3)**. 登录oracle系统 (3)**. 退出SQL*Plus (3)**. 在sqlplus下得到帮助信息 (3)第二章Oracle11gR2 RAC日常管理 4**. 监控oracle (4)**. 监控Oracle日志 (4)**. 监控oracle状态 (5)**. 监控表空间使用情况 (6)**. 监控主机 (8)**. 监控CPU (8)**. 使用vmstat 命令监控cpu使用情况 (8)**. 监控主机日志 (9)**. 监控OS文件系统使用情况 (9)**. 启动、关闭数据库 (9)**. 启动数据库 (9)**. 关闭数据库 (11)**. 监听器启动、关闭 (13)**. 表统计信息维护 (14)**. 修改主机系统时间 (15)**. 时间管理原则 (15)**. 时间修改方法 (15)**. 数据库日志收集 (15)**. OS日志 (16)**. DB日志 (16)**. grid日志 (16)**. AWR和ASH报告生成 (16)**. AWR报告生成(同10g) (16)**. ASH报告生成(同10g) (19)**. Recyclebin管理 (23)**. 归档日志的清理 (23)**. 查看回收站中的对象 (23)**. 指定删除某些特定对象 (23)**. 指定删除某表空间的所有回收站对象 (23)**. 清除某用户下的回收站对象 (23)**. 清除所有回收站对象 (23)**. 数据库性能监控 (24)**. 查看系统当前等待事件 (24)**. 通过sid查看sql语句24第一章通过SQL*Plus管理Oracle 系统登录oracle系统以oracle用户登录主机1)以sys用户登录oracle系统[oracle@rac1 ~]$ sqlplus / as sysdba2)其他用户登录oracle系统[oracle@rac1 ~]$ sqlplus hs_user/handsome@jsswdb1退出SQL*PlusSQL>exit在sqlplus下得到帮助信息列出全部SQL命令和SQL*Plus命令SQL> help index列出某个特定的命令的信息SQL>help 命令名或者SQL>? 命令名第二章Oracle11gR2 RAC日常管理监控oracle2.1.1.监控Oracle日志2.1.1.1. DB日志以oracle用户登录该日志文件在每个节点主机的$ORACLE_BASE/diag/rdbms/<dbname>/<sid>/trace目录下,文件名为:alert_XXXX.log (节点1)例如:/u01/app/oracle/diag/rdbms/hsdb/hsdb1/trace/alert_hsdb1.log在出现oracle故障前或故障时,数据库会将一些警告、错误信息写入该文件,交易时应随时监控该文件,及时发现警告、错误信息。

ORACLE数据库日常运维操作手册(带有具体代码2017)

ORACLE数据库日常运维操作手册(带有具体代码2017)

数据库日常运维操作手册目录1.日维护过程1.1 确认所有的INSTANCE状态正常1.2 检查文件系统的使用(剩余空间)1.3 检查日志文件和trace文件记录1.4 检查数据库当日备份的有效性。

1.5 检查数据文件的状态1.6 检查表空间的使用情况1.7 检查剩余表空间1.8 监控数据库性能1.9 检查数据库系统性能1.10 日常出现问题的处理。

2.每周维护过程2.1 监控数据库对象的空间扩展情况2.2 监控数据量的增长情况2.3 系统健康检查2.4 检查无效的数据库对象2.5 检查不起作用的约束2.6 检查无效的trigger3.月维护过程3.1 Analyze Tables/Indexes/Cluster3.2 检查表空间碎片3.3 寻找数据库性能调整的机会3.4 数据库性能调整3.5 提出下一步空间管理计划数据库日常运维操作手册主要针对ORACLE数据库管理员对数据库系统做定期监控:(1). 每天对ORACLE数据库的运行状态日志文件、备份情况、数据库的空间使用情况、系统资源的使用情况进行检查,发现并解决问题。

(2). 每周对数据库对象的空间扩展情况、数据的增长情况进行监控、对数据库做健康检查、对数据库对象的状态做检查。

(3). 每月对表和索引等进行Analyze、检查表空间碎片、寻找数据库性能调整的机会、进行数据库性能调整、提出下一步空间管理计划。

对ORACLE数据库状态进行一次全面检查1.日维护过程1.1 确认所有的INSTANCE状态正常登陆到所有数据库或例程,检测ORACLE后台进程:$ps –ef|grep ora1.2 检查文件系统的使用(剩余空间)如果文件系统的剩余空间小于20%,需删除不用的文件以释放空间。

#df –k1.3 检查日志文件和trace文件记录检查相关的日志文件和trace文件中是否存在错误。

A 连接到每个需管理的系统使用secureCRT远程登陆工具B 对每个数据库,进入到数据库的bdump目录,unix系统中BDUMP目录通常是$ORACLE_BASE/<SID>/bdump#$ORACLE_BASE/<SID>/bdumpC 使用Unix 和linux ‘tail’命令来查看alert_<SID>.log文件#tail $ORACLE_BASE/<SID>/bdump/alert_<SID>.logD 如果发现任何新的ORA-错误,记录并解决1.4 检查数据库当日备份的有效性。

Oracle数据库的备份与恢复操作手册(Linux)

Oracle数据库的备份与恢复操作手册(Linux)

Oracle数据库的备份与恢复操作手册(Linux) Oracle数据库的备份与恢复操作手册(Linux)本文档详细介绍了在Linux操作系统下使用Oracle数据库进行备份与恢复的操作步骤和注意事项。

以下为各个章节的详细内容:1、概述1.1 目的1.2 范围1.3 定义2、备份概念2.1 数据库备份的重要性2.2 备份策略2.3 数据库备份类型2.3.1 完全备份2.3.2 增量备份2.3.3 差异备份2.4 备份工具与方法选择3、备份前的准备工作3.1 检查数据库完整性3.2 空间与容量评估3.3 备份计划编制4、完全备份4.1 备份前的准备工作4.2 备份命令示例4.3 备份后的验证与恢复测试5、增量备份5.1 备份前的准备工作5.2 增量备份的实施步骤5.3 增量备份恢复操作6、差异备份6.1 备份前的准备工作6.2 差异备份的实施步骤6.3 差异备份恢复操作7、数据文件的备份与恢复7.1 数据文件的备份方法7.2 数据文件的恢复方法7.3 数据文件的故障处理8、控制文件和日志文件的备份与恢复8.1 控制文件和日志文件的备份方法8.2 控制文件和日志文件的恢复方法8.3 控制文件和日志文件的故障处理9、归档日志的备份与恢复9.1 归档日志的备份方法9.2 归档日志的恢复方法9.3 归档日志的故障处理10、RMAN备份与恢复10.1 RMAN备份与恢复的概述10.2 RMAN备份策略的设计10.3 RMAN备份与恢复的实施步骤10.4 RMAN备份与恢复的故障处理附件:本文档涉及的附件请参见附件文件夹,其中包括备份脚本示例、恢复测试脚本示例等。

法律名词及注释:1、数据库备份:将数据库中的数据和相关文件复制到另一个存储介质,以防止数据丢失或损坏。

2、备份策略:制定备份的时间间隔、备份类型和备份数量等规则,用于指导备份操作。

3、完全备份:备份整个数据库的所有数据和文件。

4、增量备份:仅备份数据库中发生变化的部分,相对于上一次备份。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

Oracle数据库维护及管理基本手册目录1 目的 (4)2 适用范围 (4)3 适用对象 (4)4 机房值班 (4)4.1 服务器规划........................................................................................ 错误!未定义书签。

4.2 日常巡检............................................................................................ 错误!未定义书签。

4.3 Oracle (4)4.3.1 表空间检查; (4)4.3.2 表碎片整理 (5)4.3.3 表索引整理 (5)4.3.4 检查数据库后台进程是否正常 (6)4.3.5 查看CRS(群集就绪软件)状态是否正常 (6)4.3.6 检查报警日志文件 (6)4.3.7 查看数据库监听状态和监听日志大小 (7)4.3.8 检查数据文件状态是否是ONLINE (8)4.3.9 检查数据库是否有失效的对象 (9)4.3.10 检查数据库服务器性能,记录数据库的cpu使用以及io wait等待 (9)4.3.11 检查数据库服务器磁盘空间使用率 (10)4.3.12 检查数据库备份是否正常 (10)4.3.13 数据库性能监控 (11)4.3.14 历史数据清理 (11)4.3.15 监控数据库JOB执行情况 (11)4.3.16 用户及权限安全监控 (12)4.4 设备重启规范 (13)4.4.1 数据库重启 (13)1目的通过对日常运行维护工作的梳理和沉淀,希望能够形成标准化的运行维护手册,以达到规范工作流程、明确职责分工、提高工作效率的目的,使得复杂的事情简单做,简单的事情重复做。

2适用范围本手册适用于运维部内部的日常维护工作。

3适用对象业务支撑中心运维部数据组。

4机房值班检查4.1检查对象:Oracle数据库4.1.1表空间检查;时间:每条例行检查两次:①早晨9点,②晚上21点;标准:对当前表空间使用率超过90%的数据进行迁移、备份、清理;操作:--查看表空间使用情况SELECT 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_BYTESFROM SYS.DBA_FREE_SPACE GROUP BY TABLESPACE_NAME) F,(SELECT DD.TABLESPACE_NAME,ROUND(SUM(DD.BYTES) / (1024 * 1024), 2) TOT_GROOTTE_MBFROM SYS.DBA_DATA_FILES DDGROUP BY DD.TABLESPACE_NAME) DWHERE D.TABLESPACE_NAME = F.TABLESPACE_NAMEORDER BY 4 DESC;--查看指定表空间内各表占用空间情况select segment_name,tablespace_name,bytes/(1024*1024) 占用空间,blocksfrom user_segments where upper(tablespace_name)=upper(' TABLESPACE_NAME ')order by TABLESPACE_NAME,bytes desc,segment_name;--表空间迁移。

注:此操作后,相应的索引要重建,否则无效alter table TABLENAME move tablespace TABLESPACENAME; 4.1.2表碎片整理时间:每周日晚23点;操作:--①数据备份insert /*+ APPEND NOLOGGING PARALLEL */ into TO_TABLENAME Select * from FROM_TABLENAME;--②清理碎片Truncate table FROM_TABLENAME;4.1.3表索引整理时间:每周日晚23点;操作:alter index INDEX_NAME rebuild tablespace TABLESPACE_NAME;4.1.4检查数据库后台进程是否正常时间:每条例行检查两次:①早晨9点,②晚上21点;标准:确保后台进程正常,如果后台进程不存在,表示数据库宕掉需要进一步处理。

操作:使用命令ps -ef|grep ora_查看oracle后台进程是否存在。

主要的后台进程有dbw0,lgwr,smon,pmon,ckpt,arcn等。

注:如果是RAC数据库需要两台都要检查。

4.1.5查看CRS(群集就绪软件)状态是否正常时间:每条例行检查两次:①早晨9点,②晚上21点;标准:保证所有组件状态都是online,如果有offline的情况,需要查找具体原因,做进一步处理。

操作:使用oracle登录数据库服务器,使用命令crs_stat -t查看状态注:在RAC数据库的一个节点查看即可。

4.1.6检查报警日志文件时间:每条例行检查两次:①早晨9点,②晚上21点;标准:如果有错误产生,需要进一步根据具体的错误进行处理。

并保证此日志文件不大于2G。

操作:使用oracle用户登录数据库服务器:cd$ORACLE_BASE/admin/$ORACLE_SID/bdump/alert_$ORACLE_SID.log cat alert_$ORACLE_SID.log|grep ORA-查看大小:ls –lh alert_$ORACLE_SID.log如果有错误信息,要具体分析日志。

注意每天只需要查看最新的日志即可。

并保证日志文件不能大于2G,如果过大,可以备份后清理。

注:如果是RAC数据库需要两台都要检查。

4.1.7查看数据库监听状态和监听日志大小时间:每条例行检查一次:①早晨9点标准:如果监听不存在,需要手动启动监听。

并保证监听日志文件不大于2G。

操作:使用命令lsnrctl status,查看监听状态。

注:cd $ORACLE_HOME/network/admincat listener.ora查看监听名字.如果XXX这里就是监听的名字,默认就是listenerXXX =(DESCRIPTION_LIST =(DESCRIPTION =(ADDRESS_LIST =(ADDRESS = (PROTOCOL = TCP)(HOST =192.168.1.1)(PORT = 1521)))))如果不是默认名字,查看监听状态使用 :lsnrctl status XXX 查看监听日志文件大小:ls –lh $ORACLE_HOME/network/log/listener.log查看文件是否过大,如果过大,需要备份后清空。

如果增长过快,需要分析原因。

注:如果是RAC数据库需要两台都检查。

4.1.8检查数据文件状态是否是ONLINE操作时间:每条例行检查一次:①早晨9点对象:所有在用数据库标准:确保所有数据文件都是ONLINE的,如果选择有记录,要进行数据文件的恢复,或者ONLINE操作。

操作:命令如下:Select file_name from dba_data_files where status ='OFFLINE'4.1.9检查数据库是否有失效的对象操作时间:每条例行检查一次:①早晨9点对象:所有在用数据库标准:确保所有对象都是VALID的。

操作:检查失效的对象:SELECT owner, object_name, object_typeFROM dba_objectsWHERE status = 'INVALID';检查不起作用的约束:SELECT owner, constraint_name, table_name,constraint_type, statusFROM dba_constraintsWHERE status = 'DISABLED'AND constraint_type = 'P';检查无效的trigger:SELECT owner, trigger_name, table_name, statusFROM dba_triggersWHERE status = 'DISABLED';4.1.10检查数据库服务器性能,记录数据库的cpu使用以及iowait等待操作时间:每条例行检查一次:①早晨9点,②晚上21点;对象:所有在用数据库服务器标准:发现cpu和iowait使用异常,需要进一步分析原因。

操作:使用vmstat,iostat,glance,top等命令在操作系统上查看。

注意:也可以在服务器服务器上安装OSW(oracle的一个监控系统资源的一个小软件)4.1.11检查数据库服务器磁盘空间使用率操作时间:每条例行检查一次:①早晨9点对象:所有在用数据库标准:确保磁盘使用率不大于80%。

操作:在做系统上使用df -lh (aix使用,df –g)来查看磁盘使用率,如果大于80%就需要检查数据库是否有异常的trace dump以及考虑扩容等。

4.1.12检查数据库备份是否正常操作时间:每条例行检查一次:①早晨9点对象:所有设计备份的数据库标准:确保所有备份都正常和有效。

操作:如果数据库有备份,需要根据备份策略检查每次的备份是否成功。

4.1.13数据库性能监控人员:DBA;时间:每条例行检查一次:①早晨9点对象:所有在用数据库标准:分析性能报告,查找可能存在的性能问题。

操作:9i可以使用statspack,11g使用awr生成性能报告,分析生成的报告,检查数据库是否有性能问题,根据具体情况进行分析和调整。

相关文档
最新文档