linux中oracle的日常维护命令(转)

1. 检查Oracle的进程
$ ps -ef|grep "ora_"|grep -v grep
oracle 5998 1 0 11:15:59 ? 0:01 ora_j000_PPRD10
oracle 2968 1 0 21:16:57 ? 0:00 ora_q000_PPRD10
oracle 2927 1 0 21:16:33 ? 0:00 ora_pmon_PPRD10
oracle 2933 1 0 21:16:34 ? 0:07 ora_dbw0_PPRD10
oracle 2945 1 0 21:16:34 ? 0:02 ora_mmon_PPRD10
oracle 2931 1 0 21:16:33 ? 0:00 ora_mman_PPRD10
oracle 2949 1 0 21:16:34 ? 0:00 ora_d000_PPRD10
oracle 2970 1 0 21:16:57 ? 0:00 ora_q001_PPRD10
oracle 2935 1 0 21:16:34 ? 0:05 ora_lgwr_PPRD10
oracle 2951 1 0 21:16:34 ? 0:00 ora_s000_PPRD10
oracle 2939 1 0 21:16:34 ? 0:06 ora_smon_PPRD10
oracle 2957 1 0 21:16:47 ? 0:00 ora_qmnc_PPRD10
oracle 2943 1 0 21:16:34 ? 0:05 ora_cjq0_PPRD10
oracle 2947 1 0 21:16:34 ? 0:00 ora_mmnl_PPRD10
oracle 2937 1 0 21:16:34 ? 0:18 ora_ckpt_PPRD10
oracle 2941 1 0 21:16:34 ? 0:00 ora_reco_PPRD10
oracle 2929 1 0 21:16:33 ? 0:00 ora_psp0_PPRD10
在检查Oracle的进程命令输出后,输出显示至少应包括以下一些进程:
? Oracle写数据文件的进程,输出显示为:“ora_dbw0_ORCL”
? Oracle写日志文件的进程,输出显示为:“ora_lgwr_ORCL”
? Oracle监听实例状态的进程,输出显示为:“ora_smon_ORCL”
? Oracle监听客户端连接进程状态的进程,输出显示为:“ora_pmon_ORCL”
? Oracle进行归档的进程,输出显示为:“ora_arc0_ORCL”
? Oracle进行检查点的进程,输出显示为:“ora_ckpt_ORCL”
? Oracle进行[url=javascript.:;]恢复[/url]的进程,输出显示为:“ora_reco_ORCL”
2 . 查看数据库的实例:
SQL> select instance_name,status,version,database_status from v$instance;
INSTANCE_NAME STATUS VERSION DATABASE_STATUS
---------------- ------------ ----------------- -----------------
PPRD10 OPEN 10.2.0.4.0 ACTIVE
其中“STATUS”表示Oracle当前的实例状态,必须为“OPEN”;DATABASE_STATUS”表示Oracle当前数据库的状态,必须为“ACTIVE”。
3 . 查看数据库的日志模式,打开模式
SQL> select name,log_mode,open_mode from v$database;
NAME LOG_MODE OPEN_MODE
--------- ------------ ----------
PPRD10 NOARCHIVELOG READ WRITE
其中“LOG_MODE”表示Oracle当前的归档方式。“ARCHIVELOG”表示数据库运行在归档模式下,“NOARCHIVELOG”表示数据库运行在非归档模式下。
4 . 查看数据库alert_SID.log 中的ora-的错误信息:
$ more /u01/app/oracle/admin/pinnsoft/bdump/alert_pinnsoft.log | grep -i ora-
WARNING: inbound connection timed out (ORA-3136)
WARNING: inbound connection timed out (ORA-3136)
ORA-12012: error on auto execute of job 78677
ORA-20820: ORA-20820:
ORA-06512: at "PS_SYSTEM.ROW_VALIDATOR_T", line 912
ORA-06512: at "PS_SYSTEM.ROW_VALIDATOR_T", line 924
ORA-06512: at "WORKORDER.INVENTORY_UTL", line 1260
ORA-12012: error on auto execute of job 78677
4.1 查alert_SID.log中的err的信息:
$ more /u01/app/oracle/admin/pinnsoft/bdump/alert_pinnsoft.log | grep -i err
Errors in file /u01/app/oracle/admin/pinnsoft/bdump/pinnsoft_j000_2666.trc:
ORA-12012: error on auto execute of job 78677
: 6000101: Error occurred when rolling Inventory date
Errors in file /u01/app/oracle/admin/pinnsoft/bdump/pinnsoft_j000_11886.trc:
ORA-12012: error on auto execute of job 78677
: 6000101: Error occurred when rolling Inventory date
Errors in file /u01/app/oracle/admin/pinnsoft/bdump/pinnsoft_j000_21375.trc:
ORA-12012: error on auto execute of job 78677
: 6000101: Error occurred when rolling Inventory date
4.2 查alert_SID.log的fail的信息:
$ more /u01/app/oracle/admin/pinnsoft/bdump/alert_pinnsoft.log | grep -i fail
PMON failed to acquire latch, see PMON dump
PMON failed to acquire latch, see PMON dump
PMON failed to acquire latch, see PMON dump
5. 检查控制文件状态
SQL> select status,name from v$controlfile;
STATUS NAME
------- ------------------------------------------------------------------------
/data/app/oracle/oradata/PPRD10/control01.ctl
/data/app/oracle/oradata/PPRD10/control02.ctl
/data/app/oracle/oradata/PPRD10/control03.ctl
输出结果应该有3条以上(包含3条)的记录,“STATUS”应该为空。状态为空表示控制文件状态正常。
6. 查询日志状态
SQL> select group#,status,member from v$logfile;
GROUP# STATUS MEMBER
---------- ------- -------------------------------------------------------------
1 /data/app/oracle/oradata/PPRD10/redo01.log
2 /data/app/oracle/oradata/PPRD10/redo02.log
3 /data/app/oracle/oradata/PPRD10/redo03.log
输出结果应该有3条以上(包含 3 条)记录,”STATUS”应该为非”INVALID”,非“DELETED”。
7 . 查询数据状态:
SQL> select file#,status,name from v$datafile;
FILE# STATUS NAME
---------- ------- --------------------------------------------------
1 SYSTEM /u01/app/oracle/oradata/orcl/system01.dbf
2 ONLINE /u01/app/oracle/oradata/orcl/undotbs01.dbf
3 ONLINE /u01/app/oracle/oradata/orcl/sysaux01.dbf
4 ONLINE /u01/app/oracle/oradata/orcl/users01.dbf
5 ONLINE /u01/app/oracle/oradata/orcl/example01.dbf
6 ONLINE /u01/app/oracle/oradata/orcl/perfstat.dbf
7 ONLINE /u01/app/oracle/oradata/orcl/risenet.dbf
“ONLINE"表示正常在线状态
8 . 查询表空间状态
SQL> select tablespace_name,status from dba_tablespaces;
TABLESPACE_NAME STATUS
------------------------------ ---------
SYSTEM ONLINE
UNDOTBS1 ONLINE
SYSAUX ONLINE
TEMP ONLINE
USERS ONLINE
EXAMPLE ONLINE
PERFSTAT ONLINE
RISENET ONLINE
“ONLINE”表示正常在线状态
9 . 检查Oracle所有回滚段的状态
SQL> select segment_name,status from dba_rollback_segs;
SEGMENT_NAME STATUS
------------------------------ ----------------
SYSTEM ONLINE
_SYSSMU10$ ONLINE
_SYSSMU9$ ONLINE
_SYSSMU8$ ONLINE
_SYSSMU7$ ONLINE
_SYSSMU6$ ONLINE
_SYSSMU5$ ONLINE
_SYSSMU4$ ONLINE
_SYSSMU3$ ONLINE
_SYSSMU2$ ONLINE
_SYSSMU1$ ONLINE
11 rows selected.
10 .检查Oracle初始化文件中相关的参数值
SQL>select resource_name,current_utilization,max_utilization,initial_allocation ,limit_value from v$resource_limit;
RESOURCE_NAME CURRENT_UTILIZATION MAX_UTILIZATION INITIAL_AL LI
------------------------------ ------------------- --------------- ---------- --
processes 26 31 150
sessions 30 37 170
enqueue_locks 23 31 2300
enqueue_resources 23 49 968 U
ges_procs 0 0 0
ges_ress 0 0 0 U
ges_locks 0 0 0 U
ges_cache_ress 0 0 0 U
ges_reg_msgs 0 0 0 U
ges_big_msgs 0 0 0 U
ges_rsv_msgs 0 0 0
RESOURCE_NAME CURRENT_UTILIZATION MAX_UTILIZATION INITIAL_AL LI
------------------------------ ------------------- --------------- ---------- --
gcs_resources 0 0 0
gcs_shadows 0 0 0
dml_locks 0 68 748 U
temporary_table_locks 0 3 UNLIMITED U
transactions 2 11 187 U
branches 0 0 187 U
cmtcallbk 0 2 187 U
sort_segment_locks 0 3 UNLIMITED U
max_rollback_segments 11 11 187
max_shared_servers 1 1 UNLIMITED U
parallel_max_servers 0 0 40
22 rows selected.
11. 检查Oracle各个表空间的增长情况
Select A.tablespace_name,(1-(A.total)/B.total)*100 used_percent
from (select tablespace_name,sum(bytes) total from dba_free_space group by tablespace_name) A, (select tablespace_name,sum(bytes) total from dba_data_files group by tablespace_name) B
where A.tablespace_name=B.tablespace_name;
SQL> Select A.tablespace_name,(1-(A.total)/B.total)*100 used_percent
2 from (select tablespace_name,sum(bytes) total from dba_free_space group by tablespace_name) A, (select tablespace_name,sum(bytes) total from dba_data_files group by tablespace_name) B
where A.tablespace_name=B.tablespace_name;
3
TABLESPACE_NAME USED_PERCENT
------------------------------ ------------
UNDOTBS1 33.25
SYSAUX 99.0364583
RISENET .0125
USERS 62.5
SYSTEM 98.6067708
EXAMPLE 68.25
PERFSTAT 28.7625
7 rows selected.
12 . 检查一些扩展异常的对象
select segment_name,segment_type,tablespace_name,
(extents/max_extents)*100 Percent from sys.DBA_segments
where max_extents!=0 and (extents/max_extents)*100>=95
order by percent;
SQL> select segment_name,segment_type,tablespace_name,
2 (extents/max_extents)*100 Percent
3 from sys.DBA_segments
4 where max_extents!=0 and (extents/max_extents)*100>=95
5 order by percent;
no rows selected
如果有记录返回,则这些对象的扩展已经快达到它定义时的最大扩展值。对于这些对象要修改它的存储结构参数.
13 . 检查system表空间内的内容
select distinct(owner) from dba_tables
where tablespace_name='SYSTEM' and owner!='SYS'
and owner!='SYSTEM'
union
select distinct(owner) from dba_indexes
where tablespace_name='SYSTEM'
and owner!='SYS' and owner!='SYSTEM';
SQL> select distinct(owner) from dba_tables
2 where tablespace_name='SYSTEM' and
3 owner!='SYS' and owner!='SYSTEM'
4 union
5 select distinct(owner) from dba_indexes
6 where tablespace_name='SYSTEM' and
7 owner!='SYS' and owner!='SYSTEM';
OWNER
------------------------------
MDSYS
OLAPSYS
OUTLN
如果有记录返回,则表明system表空间内存在一些非system和sys用户的对象。应该进一步检查这些对象是否与我们应用相关。如果相关请把这些对象移到非System表空间,同时应该检查这些对象属主的缺省表空间值,
14. 检查对象的下一扩展与表空间的最大扩展值
select a.table_name,a.next_extent,a.tablespace_name
from all_tables a,
(select tablespace_name,max(bytes) as big_chunk
from dba_free_space group by tablespace_name) f
where f.tablespace_name=a.tablespace_name
and a.next_extent>f.big_chunk
union
select a.index_name,a.next_extent,a.tablespace_name
from all_indexes a,
(select tablespace_name,max(bytes) as big_chunk
from dba_free_space
group by tablespace_name) f
where f.tablespace_name=a.tablespace_name
and a.next_extent>f.big_chunk;
SQL> select a.table_name,a.next_extent,a.tablespace_name
2 from all_tables a,
3 (select tablespace_name,max(bytes) as big_chunk
4 from dba_free_space group by tablespace_name) f
5 where f.tablespace_name=a.tablespace_name
6 and a.next_extent>f.big_chunk
7 union
8 select a.index_name,a.next_extent,a.tablespace_name
9 from all_indexes a,
10 (select tablespace_name,max(bytes) as big_chunk
11 from dba_free_space
12 group by tablespace_name) f
13 where f.tablespace_name=a.tablespace_name
14 and a.next_extent>f.big_chunk;
no rows selected
如果有记录返回,则表明这些对象的下一个扩展大于该对象所属表空间的最大扩展值,需调整相应表空间的存储参数

  

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/22949165/viewspace-717625/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/22949165/viewspace-717625/

这个笔记是学习oracle数据库过程整理出来的,比较详细,适合于初学者。 │ oracle与tomcat端口冲突.txt │ Oracle学习笔记.pdf │ Oracle学习笔记.wps │ 安装Oracle后myEclipse不能正常使用.txt │ 手工配置listener.ora【避免出现ORA-12514错误】.txt │ 贴子树状态存储结构.jpg │ 贴子树状态存储结构.sql │ ├─01 Oracle入门 │ 01 Oracle 简介.txt │ 02 Oracle安装.txt │ 03 sqlplusw的使用.txt │ ├─02 简单SQL语句 │ simple_sql.sql │ ├─03 单行函数 │ single_function.sql │ ├─04 复杂查询 │ complex_query.sql │ ├─05 数据库更新 │ transaction.sql │ ├─06 表的管理 │ createTable.sql │ ├─07 视图 │ view.sql │ ├─08 序列同义词 │ sequence.sql │ ├─09 用户管理 │ user.jpg │ user.sql │ ├─10 嵌套表 可变数组 │ createType.sql │ ├─11 PLSQLl语法 │ plsql.sql │ ├─12 索引 │ index.sql │ ├─13 游标 │ cursor.sql │ ├─14 存储过程 │ procedure.sql │ ├─15 函数 │ function.sql │ ├─16 触发器 │ trigger.sql │ ├─17 设计范式 │ rule.sql │ ├─18数据库管理 │ dba.sql │ dba.txt │ ├─19 我的问题 │ 数据文件丢失Oracle无法启动.txt │ ├─网页 │ CSDN技术Oracle学习笔记(一).mht │ Oracle 10G 数据库系统学习笔记.pdf │ Oracle DBA学习心得 --第0章 - ColorfulStar3399的专栏 - CSDN博客.mht │ Oracle DBA学习心得 --第1章 - ColorfulStar3399的专栏 - CSDN博客.mht │ Oracle Direct-Path Insert学习笔记 - NyThing的Java日记 - JavaEye技术网站.mht │ oracle 常用傻瓜1000问 - oracle10g - 小呵呵.mht │ oracle 常用傻瓜1000问 - oracle10g - 小呵呵.mht.lnk │ ORACLE 面试问题-技术篇.txt │ oracle10g权限与角色管理初学笔记.txt │ oracle10g的系统视图(sys、system).txt │ oracle10g系统管理之UNDO表空间 - lvhuiqing的专栏 - CSDN博客.mht │ oracle10g系统管理之序列 - lvhuiqing的专栏 - CSDN博客.mht │ oracle10g系统管理之序列 - lvhuiqing的专栏 - CSDN博客.mht.lnk │ oracle10g系统管理之应对大表(三) - lvhuiqing的专栏 - CSDN博客.mht │ oracle10g系统管理之应对大表(三) - lvhuiqing的专栏 - CSDN博客.mht.lnk │ oracle10g系统管理之控制文件 - lvhuiqing的专栏 - CSDN博客.mht │ oracle10g系统管理之控制文件 - lvhuiqing的专栏 - CSDN博客.mht.lnk │ oracle10g系统管理之权限管理.mht │ oracle10g系统管理之簇管理(一) - lvhuiqing的专栏 - CSDN博客.mht │ oracle10g系统管理之簇管理(一) - lvhuiqing的专栏 - CSDN博客.mht.lnk │ oracle10g系统管理之簇管理(二) - lvhuiqing的专栏 - CSDN博客.mht │ oracle10g系统管理之簇管理(二) - lvhuiqing的专栏 - CSDN博客.mht.lnk │ oracle10g系统管理之表空间(一) - lvhuiqing的专栏 - CSDN博客.mht │ oracle10g系统管理之表空间(一) - lvhuiqing的专栏 - CSDN博客.mht.lnk │ oracle10g系统管理之表管理 - lvhuiqing的专栏 - CSDN博客.mht │ oracle10g系统管理之表管理 - lvhuiqing的专栏 - CSDN博客.mht.lnk │ oracle10g系统管理之角色.jpg │ Oracle下导出某用户所有表的方法.txt │ oracle判断某列是否为数字,删除重复数据的方法 - oracle天堂 - CSDN博客.mht │ oracle体系结构.txt │ oracle学习 - zgh2002007的专栏 - CSDN博客.mht │ Oracle学习笔记(chstone原创).mht │ ORACLE学习笔记(一) - lvhuiqing的专栏 - CSDN博客.mht │ ORACLE学习笔记(一) - lvhuiqing的专栏 - CSDN博客.mht.lnk │ ORACLE学习笔记(二)oracle的逻辑结构 - lvhuiqing的专栏 - CSDN博客.mht │ ORACLE学习笔记(二)oracle的逻辑结构 - lvhuiqing的专栏 - CSDN博客.mht.lnk │ ORACLE学习笔记(二)SQLPLUS基础 - lvhuiqing的专栏 - CSDN博客.mht │ ORACLE学习笔记(二)SQLPLUS基础 - lvhuiqing的专栏 - CSDN博客.mht.lnk │ oracle技巧.txt │ ORACLE的索引和约束详解 - Oracle10g - 沪城篱笆.mht │ oracle里常用命令 - Oracle - 51CTO技术论坛_国领先的IT技术社区.mht │ Sequence相关操作命令 - lvhuiqing的专栏 - CSDN博客.mht │ Sequence相关操作命令 - lvhuiqing的专栏 - CSDN博客.mht.lnk │ 为什么oracle 10G以后数据库文件不能够装在同一目录下?.mht │ 关系型数据库范式 - lvhuiqing的专栏 - CSDN博客.mht │ 关系型数据库范式 - lvhuiqing的专栏 - CSDN博客.mht.lnk │ 删除ORACLE用户后,空间不释放的问题.mht │ 删除用户时的CASCADE关键字 - lvhuiqing的专栏 - CSDN博客.mht │ 删除用户时的CASCADE关键字 - lvhuiqing的专栏 - CSDN博客.mht.lnk │ 小功能,大作用 --- Oracle里的关键字& - 三十而立专栏 - CSDN博客.mht │ 经典SQL语句收集(ORACLE).mht │ 融会贯通Oracle数据库的25条基本知识.txt │ 详细讲解Oracle服务器的常用命令行.mht │ └─资料 │ Ora 10G Err_Msg.chm │ Oracle10g_DBA.pdf │ Oracle10G官方文档CHM合集SQL参考手册.pdf │ Oracle9i数据库管理实务讲座.pdf │ OraclePLSQL语言基础.exe │ Oracle傻瓜手册.pdf │ oracle最权威工具TOAD使用大全.chm │ oracle的入门心得.pdf │ Oracle程序员开发指南.pdf │ └─北大青鸟oracle9i ├─1 │ -ORACLE公司传奇.doc │ 1作业.txt │ Oracle控制台使用.doc │ TP1V1.0.ppt │ 其它补充.txt │ 登录SQLPLUS.txt │ ├─2 │ 2上机.doc │ TP1V2.0.ppt │ ├─3 │ TP1V3.0.ppt │ ├─4 │ 4上机.doc │ TP4.ppt │ ├─5 │ 5上机.doc │ DEMOScript.sql │ TP5.ppt │ ├─6 │ 6_Script.sql │ 6上机.doc │ DEMOScript.sql │ TP6.ppt │ └─7 7上机.doc DEMOScript.sql T7.ppt 演示代码.sql
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值