收藏 分销(赏)

oracle日常管理与维护PPT学习课件.ppt

上传人:快乐****生活 文档编号:5876891 上传时间:2024-11-22 格式:PPT 页数:73 大小:2.35MB
下载 相关 举报
oracle日常管理与维护PPT学习课件.ppt_第1页
第1页 / 共73页
oracle日常管理与维护PPT学习课件.ppt_第2页
第2页 / 共73页
oracle日常管理与维护PPT学习课件.ppt_第3页
第3页 / 共73页
oracle日常管理与维护PPT学习课件.ppt_第4页
第4页 / 共73页
oracle日常管理与维护PPT学习课件.ppt_第5页
第5页 / 共73页
点击查看更多>>
资源描述

1、,单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,#,Oracle,数据库,维护教程,目 录,第,1,章 实例的启动与关闭,第,2,章 数据库日常检查与维护,第,3,章 使用企业管理器管理数据库,第,4,章,RAC,数据库日常操作与维护,第,5,章 数据库紧急故障处理,1,实例的启动与关闭,连接数据库,$sqlplus/nolog,启动,SQL*Plus,,不连接库,SQL,sqlplus“/as sysdba”,以,DBA,身份连接库,以其它用户身份连接数据库,SQLconn scott/tigerdb,或,SQLconn scott/tiger,数据库启

2、动阶段包括,3,个过程,Nomount,:实例启动,Mount,:数据库,mount,,加载控制文件,Open,:数据文件全部打开,可以正常访问,OPEN,MOUNT,NOMOUNT,SHUTDOWN,实例中控制文件描述的所有文件被打开,控制文件打开,实例启动,STARTUP,SHUTDOWN,数据库启动阶段,connect/as sysdba,select*from v$instance;,无法查询实例信息:,实例未启动,或者:操作系统下,ps ef|grep ora*,Nomount,阶段,数据库无法启动到,nomount,操作系统内核参数是否足够,初始化参数文件是否可读,初始化参数文件内

3、容正确,相应参数是否调整过大,导致内存、后台进程无法分配,可以尝试重启数据库服务器后再次启动数据库,connect/as sysdba,select*from v$instance;,如果信息无法查询:说明数据库没有,mount,尝试,mount,数据库,alter database mount,;,Mount,阶段,数据库无法,mount,检查初始化参数文件中,control_files,设置是否可读,检查操作系统上控制文件是否可读写,可能控制文件被意外损坏,ALTER DATABASE,命令,改变数据库状态从,nomount,到,mount,startup nomount,;,alter

4、database mount,;,从,mount,状态到,open,状态,alter database open,;,ALTER DATABASE,命令用来改变数据状态,及数据文件状态,关闭数据库,A,x,x,x,x,T,x,x,o,o,I,x,x,x,o,关闭模式,允许新连接,等待当前会话终止,等待当前事务终止,强迫执行一次,checkpoint,且关闭文件,N,x,o,o,o,关闭模式,:,NORMAL,TRANSACTIONAL,IMMEDIATE,ABORT,YES,NO,x,o,关闭选项,在,Shutdown Normal,Shutdown Transactional,or,Shut

5、down Immediate,三种模式下,Database,一致,关闭过程,:,数据库,buffer,中的数据写进数据文件,未提交的修改回滚,资源释放,开启过程,:,不需要实例恢复,关闭选项,在,Shutdown Abort,或,Instance Failure,或,Startup Force,Database,不一致,关闭过程,:,修改过的,buffer,不写进数据文件,未提交事务不回滚,开启过程,:,重做日志用于重写修改,Undo,用于回滚未提交的修改,释放资源,通过监控诊断文件管理实例,当实例可操作时,诊断文件包含重要关键事件信息,有助于解决问题和更好的进行数据库日常管理,诊断文件种类,

6、:,alertSID.log,文件,Background trace files,(后台跟踪文件),User trace files,(用户跟踪文件),Alert Log File,(警示文件),alertSID.log,文件记录下数据库运行时主要事件的命令和结果,.,用于记录日常操作信息或诊断数据库错误,.,文件中每一个条目都一个时间戳,.,DBA,管理,alertSID.log,文件,.,存储位置由,BACKGROUND_DUMP_DEST,参数指定,.,Background Trace Files,(后台跟踪文件),每个后台进程的错误都会产生后台跟踪文件,.,用于诊断和解决错误,.,当后

7、台进程遇到错误就产生跟踪文件,存储位置由,BACKGROUND_DUMP_DEST,参数指定,User Trace File,(用户跟踪文件),用户跟踪文件由连到,Oracle,服务器的用户进程产生,.,文件中包含被跟踪的,SQL,语句的统计信息或用户错误消息,.,当用户会话遇到错误将会产生此文件,server process,也可产生此文件,存储位置由,USER_DUMP_DEST,参数指定,文件大小由,MAX_DUMP_FILE_SIZE,参数指定,默认值为,10M.,2,数据库日常检查与维护,检查数据库状态,确认数据库是否在,open,状态,正常提供服务。,$sqlplus/as sys

8、dba,其中,“STATUS”,表示,Oracle,当前的实例状态,必须为,“OPEN”,;,“DATABASE_STATUS”,表示,Oracle,当前数据库的状态,必须为,“ACTIVE”,数据库的日常检查,检查数据库版本,SQL,select*from v$version;,数据库的日常检查,数据库的日常检查,检查,oracle,服务进程,$ps-ef|grep ora_,在检查,Oracle,的进程命令输出后,输出显示至少应包括以下一些进程:,.Oracle,写数据文件的进程,输出显示为:,“ora_dbw0_crsdb”.Oracle,写日志文件的进程,输出显示为:,“ora_lgw

9、r_ crsdb”.Oracle,监听实例状态的进程,输出显示为:,“ora_smon_ crsdb”.Oracle,监听客户端连接进程状态的进程,输出显示为:,“ora_pmon_ crsdb”.Oracle,进行归档的进程,输出显示为:,“ora_arc0_ crsdb”.Oracle,进行检查点的进程,输出显示为:,“ora_ckpt_ crsdb”.Oracle,进行恢复的进程,输出显示为:,“ora_reco_ crsdb”,数据库的日常检查,查看操作系统日志文件,#cat/var/adm/syslog/syslog.log|grep failed,#cat/var/adm/sysl

10、og/syslog.log|grep error,看是否有与,oracle,相关的出错信息,数据库的日常检查,查看,oracle,日志文件,$cat$ORACLE_HOME/log/server1/alterserver1.log|grep ora-,$cat$ORACLE_HOME/log/server1/alterserver1.log|grep fail,$cat$ORACLE_HOME/log/server1/alterserver1.log|grep error,Oracle,在运行过程中,会在警告日志文件,(alert_SID.log),中记录数据库的一些运行情况:数据库的启动、关

11、闭,启动时的非缺省参数;数据库的重做日志切换情况,记录每次切换的时间,及如果因为检查点,(checkpoint),操作没有执行完成造成不能切换,会记录不能切换的原因;对数据库进行的某些操作,如创建或删除表空间、增加数据文件;数据库发生的错误,如表空间不够、出现坏块、数据库内部错误,(ORA,600),等。,数据库的日常检查,定期检查日志文件,根据日志中发现的问题及时进行处理:,问题,处理,启动参数不对,检查初始化参数文件,因为检查点操作或归档操作没有完成造成重做日志不能切换,如果经常发生这样的情况,可以考虑增加重做日志文件组;想办法提高检查点或归档操作的效率;,有人未经授权删除了表空间,检查数

12、据库的安全问题,是否密码太简单;如有必要,撤消某些用户的系统权限,出现坏块,检查是否是硬件问题,(,如磁盘本生有坏块,),,如果不是,检查是那个数据库对象出现了坏块,对这个对象进行重建,表空间不够,增加数据文件到相应的表空间,出现,ORA-600,根据日志文件的内容查看相应的,TRC,文件,如果是,Oracle,的,bug,,要及时打上相应的补丁,数据库的日常检查,查看,root,用户和数据库用户的,email,#tail n 200/var/mail/root,#tail n 200/var/mail/oracle,查看有无与,oracle,用户相关出错信息,数据库的日常检查,检查,Orac

13、le,控制文件状态,SQL select status,name from v$controlfile;,STATUS NAME,-,/data/oradata/crsdb/control01.ctl,/data/oradata/crsdb/control02.ctl,/data/oradata/crsdb/control03.ctl,输出结果应该有,3,条以上(包含,3,条)的记录,,“STATUS”,应该为空。状态为空表示控制文件状态正常。,数据库的日常检查,检查,Oracle,在线日志,状态,SQL select group#,status,type,member from v$logf

14、ile;,GROUP#STATUS TYPE MEMBER,-,-,-,-,1 ONLINE +DATA/crsdb/onlinelog/group_1.257.836734181,2 ONLINE +DATA/crsdb/onlinelog/group_2.258.836734181,3 ONLINE +DATA/crsdb/onlinelog/group_3.265.836737165,4 ONLINE +DATA/crsdb/onlinelog/group_4.266.836737165,输出结果应该有,3,条以上(包含,3,条)记录,,“STATUS”,应该为非,“INVALID”,,

15、非,“DELETED”,。注:,“STATUS”,显示为空表示正常。,数据库的日常检查,检查,Oracle,表空间,状态,输出结果中,STATUS,应该都为,ONLINE,。,数据库的日常检查,检查,Oracle,表空间所有数据文件,状态,SQL select name,status from v$datafile;,NAME STATUS,-,+DATA/crsdb/datafile/system.259.836734181 SYSTEM,+DATA/crsdb/datafile/sysaux.260.836734183 ONLINE,+DATA/crsdb/datafile/undotbs

16、1.261.836734185 ONLINE,+DATA/crsdb/datafile/undotbs2.263.836734197 ONLINE,+DATA/crsdb/datafile/users.264.836734199 ONLINE,输出结果中,“STATUS”,应该都为,“ONLINE”,。,或者,SQLselect file_name,status from dba_data_files;,输出的,status,必须为,available,数据库的日常检查,检查,所有回滚段,状态,SQL select segment_name,status from dba_rollback_s

17、egs;,数据库的日常检查,检查数据库连接情况,SQL select count(*)from v$session;/,查看会话连接数,SQLselect sid,serial#,username,program,machine,status from v$session;,/,查看会话连接的详细信息,数据库的日常检查,STATUS,:,当前这个会话的状态,,ACTIVE,表示会话正在执行某些任务,,INACTIVE,表示当前会话没有执行任何操作;,如果建立了过多的连接,会消耗数据库的资源,同时,对一些“挂死”的连接可能需要手工进行清理。如果,DBA,要手工断开某个会话,则执行:(一般不建议使

18、用这种方式去杀掉数据库的连接,这样有时候,session,不会断开。容易引起死连接。建议通过,sid,查到操作系统的,spid,使用,ps ef|grep spidno,的方式确认,spid,不是,ORACLE,的后台进程。使用操作系统的,kill-9,命令杀掉连接),alter system kill session SID,SERIAL#;,注意:上例中,SID,为,1,到,10(USERNAME,列为空,),的会话,是,Oracle,的后台进程,不要对这些会话进行任何操作。,数据库的日常检查,检查,系统磁盘空间,如果文件系统的剩余空间过小或增长较快,需对其进行确认并删除不用的文件以释放空

19、间。,数据库的日常检查,查看表空间使用情况(使用图形化管理界面查看),如果空闲率,%Free,小于,10%,以上(包含,10%,),则注意要增加数据文件来扩展表空间而不要是用数据文件的自动扩展功能。请不要对表空间增加过多的数据文件,增加数据文件的原则是每个数据文件大小为,2G,或者,4G,,自动扩展的最大限制在,8G,3,使用企业管理器管理数据库,listener.ora,Listener,客户端,服务端,tnsnames.ora,sqlnet.ora,远程管理,配置远程企业管理器,远程连接数据库,确认远程客户端与服务器端是网络相通的,配置远程企业管理器,监听工具,工具可通过下面命令使用:,$

20、lsnrctl start /,开启监听,$lsnrctl status /,查看监听状态,$lsnrctl stop /,停止监听,配置远程企业管理器,配置本地网络服务,配置本地网络服务,配置本地网络服务,配置本地网络服务,配置本地网络服务,配置本地网络服务,配置本地网络服务,配置本地网络服务,下一步,直至完成!,打开客户端上安装的企业管理器,登录数据库,远程管理数据库,点击相应的选项,查看、更改数据库,上一章的数据库日常检查也可以通过企业管理器操作,简单易读,远程企业管理器管理数据库,4,RAC,数据库的日常操作与维护,数据库的日常操作,-RAC,检查数据库状态,:,是否,online,c

21、rs_stat t,各项显示必须是,online,,否则数据库可能出处于异常工作状态,数据库的日常操作,-RAC,查看数据库实例状态,$srvctl status database d crsdb,单个实例的状态,$srvctl status instance d crsdb1 i server1,开启关闭数据库实例,$srvctl start database d crsdb,$srvctl start instance d crsdb1 i server1,$srvctl stop instance d crsdb1 i server1,数据库的日常操作,-RAC,查看,ASM,实例状态,

22、$srvctl status asm n server1,开启,ASM,实例,$srvctl start asm n server1,关闭,ASM,实例,$srvctl stop asm n server1,数据库的日常操作,-RAC,开启监听,$srvctl start listenern server1,关闭监听,$srvctl stop listenern server1,开启节点应用,$srvctl start nodeapps n server1,关闭节点应用,$srvctl stop nodeapps n server1,数据库的日常操作,-RAC,显示数据库配置,$srvctl

23、config database-d crsdb,显示指定集群数据库的所有服务,$srvctl config service-d crsdb,显示节点应用程序的配置,$srvctl config nodeapps-n server1-a-g-s l,显示,ASM,实例的配置,$srvctl config asm server1,数据库的日常操作,-RAC,启动,RAC,集群,启动,节点应用程序(虚拟,IP,、,GSD,、,TNS,监听器和,ONS,),启动,ASM,实例,启动,Oracle,实例,停止,RAC,集群,停止,Oracle,实例,关闭,ASM,实例,关闭节点应用程序,常见错误,RAC

24、,数据库中,其中一个节点处于,offine,状态,如图:,常见错误,造成原因,网络问题,资源耗尽(,CPU,、,I/O,等),严重的数据库争用,Oracle bug,解决方案:,检查网络,确保无网络错误,如,UDP,错误或,IP,数据包丢失或故障错误。,检查网络配置,确保所有节点上的所有网络配置均设置正确。,检查服务器是否存在,CPU,负载问题或可用内存不足。,检查数据库在实例驱逐之前是否正处于挂起状态或存在严重的性能问题。,检查,CHM(Cluster Health Monitor),输出,以查看服务器是否存在,CPU,或内存负载问题、网络问题或者,lmd,或,lms,进程出现死循环。,如果

25、,OSWatcher,尚未设置,,CHM,输出不可用时,使用,OSWatcher,输出将有所帮助。,5,数据库紧急故障处理,Oracle,常见错误,ORA-1652,到,ORA-1655,ORA-165X,错误信息是指表空间没有足够的空间可分配,包括,ora-1652,、,ora-1653,、,ora-1654,和,ora-1655,。,ORA-01555,(,snapshot too old,),9i,引入了,undotablespace,,只要把,undotablespace,设的足够大,并把,undo_retention,设的足够大(大于完成大事务所需的时间),就有可能彻底解决,ORA-

26、1555,错,(,但太大会引起系统性能下降,),Oracle,常见错误,ORA-04031,如果,shared_pool_size,参数值已经很大(大于,350M,),那,ORA-4031,错发生的原因很可能是因为,oracle,数据库的,BUG,或是应用程序未能很好的使用绑定变量,(bind variable),。,清空当前的,shared_pool,,可以暂时解决,ora-4031,错的问题,ORA-600,内部错误,第一个参数提供了实际错误信息(例如,1579,代表块中断错误),而其他参数提供相关其他信息(例如上述块中断错误中,显示,Oracle,想要读的块号和实际读的块号),ORA-6

27、00,错误会导致系统生成一个或多个跟踪文件,业务恢复处理,RAC,数据库出现故障时,要迅速查看数据库告警日志文件,确认出现问题的原因,影响的范围,故障的现象。比如:,数据库故障是出现一次还是反复出现,数据库故障是否能够比较容易的恢复,绕过,解决,数据库故障发生后业务是否能正常运行,如果,RAC,数据库的某个节点数据库异常终止服务,但其他节点正常运行时,可以先尝试手工启动出现问题的数据库,恢复数据库到运行状态。,手工收集现场信息,错误现象的具体描述,数据库告警日志文件:,alert_ORACLE_SID.log,数据库跟踪文件:*,.TRC,初始化参数文件:,SPFILE,不能直接阅读,需要转为文本,网络配置文件:,listener.ora,tnsnames.ora,sqlnet.ora,数据库版本,操作系统的类型和版本,谢谢!,Thank,you!,

展开阅读全文
部分上传会员的收益排行 01、路***(¥15400+),02、曲****(¥15300+),
03、wei****016(¥13200+),04、大***流(¥12600+),
05、Fis****915(¥4200+),06、h****i(¥4100+),
07、Q**(¥3400+),08、自******点(¥2400+),
09、h*****x(¥1400+),10、c****e(¥1100+),
11、be*****ha(¥800+),12、13********8(¥800+)。
相似文档                                   自信AI助手自信AI助手
搜索标签

当前位置:首页 > 包罗万象 > 大杂烩

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        获赠5币

©2010-2024 宁波自信网络信息技术有限公司  版权所有

客服电话:4008-655-100  投诉/维权电话:4009-655-100

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :gzh.png    weibo.png    LOFTER.png 

客服