oracle日常管理与维护_第1页
oracle日常管理与维护_第2页
oracle日常管理与维护_第3页
oracle日常管理与维护_第4页
oracle日常管理与维护_第5页
已阅读5页,还剩68页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

Oracle数据库维护教程目录第1章实例的启动与关闭第2章数据库日常检查与维护第3章使用企业管理器管理数据库第4章RAC数据库日常操作与维护第5章数据库紧急故障处理1实例的启动与关闭连接数据库

$sqlplus/nolog启动SQL*Plus,不连接库

SQL>sqlplus“/assysdba”以DBA身份连接库以其它用户身份连接数据库SQL>connscott/tiger@db

SQL>connscott/tiger数据库启动阶段包括3个过程

Nomount:实例启动Mount:数据库mount,加载控制文件Open:数据文件全部打开,可以正常访问

OPENMOUNTNOMOUNTSHUTDOWN实例中控制文件描述的所有文件被打开控制文件打开实例启动STARTUPSHUTDOWN数据库启动阶段connect/assysdbaselect*fromv$instance;无法查询实例信息:实例未启动或者:操作系统下ps–ef|grepora*Nomount阶段数据库无法启动到nomount操作系统内核参数是否足够初始化参数文件是否可读初始化参数文件内容正确相应参数是否调整过大,导致内存、后台进程无法分配可以尝试重启数据库服务器后再次启动数据库connect/assysdbaselect*fromv$instance;如果信息无法查询:说明数据库没有mount尝试mount数据库alterdatabasemount;Mount阶段数据库无法mount检查初始化参数文件中control_files设置是否可读检查操作系统上控制文件是否可读写可能控制文件被意外损坏ALTERDATABASE命令改变数据库状态从nomount到mount

startupnomount;

alterdatabasemount;从mount状态到open状态alterdatabaseopen;ALTERDATABASE命令用来改变数据状态,及数据文件状态关闭数据库AxxxxTxxooIxxxo关闭模式允许新连接等待当前会话终止等待当前事务终止强迫执行一次checkpoint且关闭文件Nxooo关闭模式:NORMALTRANSACTIONALIMMEDIATEABORTYESNOxo关闭选项在ShutdownNormal,ShutdownTransactionalorShutdownImmediate三种模式下Database一致关闭过程:数据库buffer中的数据写进数据文件未提交的修改回滚资源释放开启过程:不需要实例恢复关闭选项在ShutdownAbort或InstanceFailure或StartupForceDatabase不一致关闭过程:修改过的buffer不写进数据文件未提交事务不回滚开启过程:重做日志用于重写修改Undo用于回滚未提交的修改释放资源通过监控诊断文件管理实例当实例可操作时,诊断文件包含重要关键事件信息

有助于解决问题和更好的进行数据库日常管理诊断文件种类:alertSID.log

文件Backgroundtracefiles(后台跟踪文件)Usertracefiles(用户跟踪文件)AlertLogFile(警示文件)alertSID.log文件记录下数据库运行时主要事件的命令和结果.用于记录日常操作信息或诊断数据库错误.文件中每一个条目都一个时间戳.DBA管理alertSID.log文件.存储位置由BACKGROUND_DUMP_DEST参数指定.BackgroundTraceFiles

(后台跟踪文件)每个后台进程的错误都会产生后台跟踪文件.用于诊断和解决错误.当后台进程遇到错误就产生跟踪文件存储位置由BACKGROUND_DUMP_DEST参数指定UserTraceFile

(用户跟踪文件)

用户跟踪文件由连到Oracle服务器的用户进程产生.文件中包含被跟踪的SQL语句的统计信息或用户错误消息.当用户会话遇到错误将会产生此文件serverprocess也可产生此文件

存储位置由USER_DUMP_DEST参数指定文件大小由MAX_DUMP_FILE_SIZE参数指定,默认值为10M.2数据库日常检查与维护检查数据库状态确认数据库是否在open状态,正常提供服务。$sqlplus/assysdba

其中“STATUS”表示Oracle当前的实例状态,必须为“OPEN”;“DATABASE_STATUS”表示Oracle当前数据库的状态,必须为“ACTIVE”数据库的日常检查检查数据库版本

SQL>select*fromv$version;

数据库的日常检查数据库的日常检查检查oracle服务进程

$ps-ef|grepora_在检查Oracle的进程命令输出后,输出显示至少应包括以下一些进程:

.Oracle写数据文件的进程,输出显示为:“ora_dbw0_crsdb”

.Oracle写日志文件的进程,输出显示为:“ora_lgwr_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|grepfailed

#cat/var/adm/syslog/syslog.log|greperror看是否有与oracle相关的出错信息数据库的日常检查查看oracle日志文件$cat$ORACLE_HOME/log/server1/alterserver1.log|grepora-$cat$ORACLE_HOME/log/server1/alterserver1.log|grepfail$cat$ORACLE_HOME/log/server1/alterserver1.log|greperrorOracle在运行过程中,会在警告日志文件(alert_SID.log)中记录数据库的一些运行情况:数据库的启动、关闭,启动时的非缺省参数;数据库的重做日志切换情况,记录每次切换的时间,及如果因为检查点(checkpoint)操作没有执行完成造成不能切换,会记录不能切换的原因;对数据库进行的某些操作,如创建或删除表空间、增加数据文件;数据库发生的错误,如表空间不够、出现坏块、数据库内部错误(ORA-600)等。数据库的日常检查定期检查日志文件,根据日志中发现的问题及时进行处理:问题处理启动参数不对检查初始化参数文件因为检查点操作或归档操作没有完成造成重做日志不能切换如果经常发生这样的情况,可以考虑增加重做日志文件组;想办法提高检查点或归档操作的效率;有人未经授权删除了表空间检查数据库的安全问题,是否密码太简单;如有必要,撤消某些用户的系统权限出现坏块检查是否是硬件问题(如磁盘本生有坏块),如果不是,检查是那个数据库对象出现了坏块,对这个对象进行重建表空间不够增加数据文件到相应的表空间出现ORA-600根据日志文件的内容查看相应的TRC文件,如果是Oracle的bug,要及时打上相应的补丁数据库的日常检查查看root用户和数据库用户的email#tail–n200/var/mail/root#tail–n200/var/mail/oracle查看有无与oracle用户相关出错信息数据库的日常检查检查Oracle控制文件状态SQL>selectstatus,namefromv$controlfile;

STATUSNAME----------------------------------------------------------------------

/data/oradata/crsdb/control01.ctl

/data/oradata/crsdb/control02.ctl

/data/oradata/crsdb/control03.ctl输出结果应该有3条以上(包含3条)的记录,“STATUS”应该为空。状态为空表示控制文件状态正常。数据库的日常检查检查Oracle在线日志状态SQL>selectgroup#,status,type,memberfromv$logfile;GROUP#STATUSTYPEMEMBER

--------------------------------------------------------------------------------------------------------1ONLINE+DATA/crsdb/onlinelog/group_1.257.8367341812ONLINE+DATA/crsdb/onlinelog/group_2.258.8367341813ONLINE+DATA/crsdb/onlinelog/group_3.265.8367371654ONLINE+DATA/crsdb/onlinelog/group_4.266.836737165输出结果应该有3条以上(包含3条)记录,“STATUS”应该为非“INVALID”,非“DELETED”。注:“STATUS”显示为空表示正常。数据库的日常检查检查Oracle表空间状态

输出结果中STATUS应该都为ONLINE。数据库的日常检查检查Oracle表空间所有数据文件状态SQL>selectname,statusfromv$datafile;NAMESTATUS--------------------------------------------------------------------------------------+DATA/crsdb/datafile/system.259.836734181SYSTEM+DATA/crsdb/datafile/sysaux.260.836734183ONLINE+DATA/crsdb/datafile/undotbs1.261.836734185ONLINE+DATA/crsdb/datafile/undotbs2.263.836734197ONLINE+DATA/crsdb/datafile/users.264.836734199ONLINE输出结果中“STATUS”应该都为“ONLINE”。或者SQL>selectfile_name,statusfromdba_data_files;输出的status必须为available数据库的日常检查检查所有回滚段状态SQL>selectsegment_name,statusfromdba_rollback_segs;数据库的日常检查检查数据库连接情况SQL>selectcount(*)fromv$session;//查看会话连接数SQL>selectsid,serial#,username,program,machine,statusfromv$session;

//查看会话连接的详细信息数据库的日常检查STATUS:当前这个会话的状态,ACTIVE表示会话正在执行某些任务,INACTIVE表示当前会话没有执行任何操作;如果建立了过多的连接,会消耗数据库的资源,同时,对一些“挂死”的连接可能需要手工进行清理。如果DBA要手工断开某个会话,则执行:(一般不建议使用这种方式去杀掉数据库的连接,这样有时候session不会断开。容易引起死连接。建议通过sid查到操作系统的spid,使用ps–ef|grepspidno的方式确认spid不是ORACLE的后台进程。使用操作系统的kill-9命令杀掉连接)altersystemkillsession'SID,SERIAL#';注意:上例中SID为1到10(USERNAME列为空)的会话,是Oracle的后台进程,不要对这些会话进行任何操作。数据库的日常检查检查系统磁盘空间如果文件系统的剩余空间过小或增长较快,需对其进行确认并删除不用的文件以释放空间。数据库的日常检查查看表空间使用情况(使用图形化管理界面查看)如果空闲率%Free小于10%以上(包含10%),则注意要增加数据文件来扩展表空间而不要是用数据文件的自动扩展功能。请不要对表空间增加过多的数据文件,增加数据文件的原则是每个数据文件大小为2G或者4G,自动扩展的最大限制在8G

3使用企业管理器管理数据库listener.oraListener客户端服务端tnsnames.orasqlnet.ora远程管理配置远程企业管理器远程连接数据库

确认远程客户端与服务器端是网络相通的

配置远程企业管理器监听工具工具可通过下面命令使用:

$lsnrctlstart//开启监听$lsnrctlstatus//查看监听状态

$lsnrctlstop//停止监听

配置远程企业管理器配置本地网络服务配置本地网络服务配置本地网络服务配置本地网络服务配置本地网络服务配置本地网络服务配置本地网络服务配置本地网络服务下一步,直至完成!打开客户端上安装的企业管理器,登录数据库远程管理数据库点击相应的选项,查看、更改数据库

上一章的数据库日常检查也可以通过企业管理器操作,简单易读远程企业管理器管理数据库4RAC数据库的日常操作与维护数据库的日常操作-RAC

检查数据库状态:是否online

crs_stat–t各项显示必须是online,否则数据库可能出处于异常工作状态数据库的日常操作-RAC

查看数据库实例状态$srvctlstatusdatabase–dcrsdb单个实例的状态

$srvctlstatusinstance–dcrsdb1–i

server1开启关闭数据库实例

$srvctlstartdatabase–dcrsdb$srvctlstartinstance–dcrsdb1–iserver1

$srvctlstopinstance–dcrsdb1–iserver1数据库的日常操作-RAC

查看ASM实例状态$srvctlstatusasm–nserver1开启ASM实例

$srvctlstartasm–nserver1关闭ASM实例$srvctlstopasm

–nserver1数据库的日常操作-RAC

开启监听$srvctlstartlistener–nserver1关闭监听$srvctlstoplistener–nserver1开启节点应用

$srvctlstartnodeapps–nserver1关闭节点应用$srvctlstopnodeapps–nserver1数据库的日常操作-RAC

显示数据库配置$srvctlconfigdatabase-dcrsdb显示指定集群数据库的所有服务$srvctlconfigservice-dcrsdb显示节点应用程序的配置$srvctlconfignodeapps-nserver1-a-g-s–l显示ASM实例的配置$srvctlconfigasm–server1数据库的日常操作-RAC

启动RAC集群启动节点应用程序(虚拟IP、GSD、TNS监听器和ONS)启动ASM实例启动Oracle实例停止RAC集群

停止Oracle实例

关闭ASM实例

关闭节点应用程序常见错误RAC数据库中,其中一个节点处于offine状态,如图:常见错误造成原因网络问题资源耗尽(CPU、I/O

等)严重的数据库争用Oraclebug解决方案:检查网络,确保无网络错误,如

UDP

错误或

IP

数据包丢失或故障错误。检查网络配置,确保所有节点上的所有网络配置均设置正确。检查服务器是否存在

CPU

负载问题或可用内存不足。检查数据库在实例驱逐之前是否正处于挂起状态或存在严重的性能问题。检查

CHM(ClusterHealthMonitor)

输出,以查看服务器是否存在

CPU

或内存负载问题、网络问题或者

lmd

lms

进程出现死循环。如果

OSWatcher

尚未设置,CHM

输出不可用时,使用

OSWatcher

输出将有所帮助。

5数据库紧急故

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论