Oracle 管理 学习笔记

 1.修改初始化参数(pfile,spfile)

ALTER SYSTEM SET SGA_MAX_SIZE=600M SCOPE=SPFILE;

SCOPE参数值有三个选项

SCOPE=MEMORY:只改变当前实例运行,亦即初始化参数改变了只对当前实例有效,当实例重启之后,初始化参数值还原。

SCOPE=SPFILE:只改变SPFILE的设置。亦即改变初始化参数文件内容。实例重启后参数生效。

SCOPE=BOTH,既改变实例也改变SPFILE。指定这个选项相当于不带参数的alter system语句。需要注意的是,如果修改静态参数,必须指定SPFILE参数(必须表明SCOPE=MEMORY或者SCOPE=SPFILE),否则会报错。

2.复位修改的初始化参数

ALTER SYSTEM RESET SGA_MAX_SIZE SCOPE=SPFILE SID=’*';

3.排错

当不小心把某个初始化参数破坏了,导致不能启动数据库时

例:

把shared_pool_size设置成了500M,数据库重新启动时报错

解决步骤:

a.新建记事本,在记事本里写配置:spfile=I:\oracle\product

\10.2.0\db_1\database\spfileorcl.ora

Shared_pool_size=原来的值

b.将记事本保存为I:\a.ora,后SQL>startup pfile=I:\a.ora

4.设置跟踪

跟踪会话首先得查出该会话的SID,SERIAL#,会话之间的区别靠的就是这两个的组合

SELECT SID,SERIAL# FROM V$SESSION

WHERE USERNAME='SYS';

调用跟踪的包:

EXEC DBMS_SYSTEM.SET_SQL_TRACE_IN_SESSION(SID,SERIAL#,TRUE);

这样就会在I:\oracle\product\10.2.0\admin\orcl\udump下生成一个用SPID命名的文件,那如何找出这个SPID呢,

SPID是存在于V$PROCESS表中的字段,这时就需要将V$SESSION和V$PROCESS两张表关联起来查询

即:SELECT S.USERNAME,S.SID,S.SERIAL#,P.SPID

      FROM V$SESSION S,V$PROCESS P

      WHERE S.PADDR=P.ADDR;

5.使用tkprof分析跟踪文件

tkprof 源文件的路径 导出的文件.txt  aggregate=yes sys=no waits=yes sort=fchela; 

原文地址:https://www.cnblogs.com/FeiyueHang/p/1981436.html