您的位置:首页 > 数据库 > Oracle

Oracle 9i DBA Fundamentals I 学习笔记(三)

2011-03-09 11:15 357 查看
Chapter 03—Mangagering an Oracle Instance

1、 初始化参数文件

(1)、初始化参数文件的种类:

·静态参数文件pfile,一般命名方式为initSID.ora

·永久参数文件spfile,一般命名方式为spfileSID.ora

(2)、两种类型的参数:

·显式参数

·隐式参数

(3)、初始化参数文件内容:

•例程参数列表

•与该例程相关联的数据库的名称

•系统全局区(SGA)的内存结构的分配

•如何处理已满的联机重做日志文件

•控制文件的名称和位置

•有关撤消段的信息

为在各种不同情况下优化性能,一个例程可有多个初始化参数文件。

2、 PFILE-initSID.ora(命名规则)

•文本文件

•可以手工修改,使用操作系统编辑器进行修改

•修改成功后,在下一次启动实例后生效

•仅在例程启动过程中打开,在打开过程中是只读的

•默认路径为:$ORACLE_HOME/dbs

(1)、PFILE可以位于客户端

(2)、创建一个PFILE(使用已经存在的pfile创建一个pfile)

cp init.ora $ORACLE_HOME/dbs/initdba01.ora

3、 SPFILE-spfileSID.ora

•二进制文件

•由Oracle服务器进行维护,不能手动修改

•始终驻留在服务器端

•所做更改永久有效,不受关闭和启动的影响

•可以自行调节参数值

•使恢复管理器能够备份初始化参数文件

•默认路径为:$ORACLE_HOME/dbs

(1)、可以通过PFILE创建SPFLIE(必须具有sysdba权限)

CREATE SPFILE = ‘ $ORACLE_HOME/dbs/spfileDBA01.ora’

FROM PFILE = ‘$ORACLE_HOME/dba/initDBA01.ora’;

在实例启动前后都可以创建。

(2)、修改SPFILE

alter system set parameter = value <comment =’text’>

<deferred> <scope=memory | spfile | both><sid=’sid|*’>

其中

parameter_name:要更改的参数的名称

parameter_value:要将参数更改为的值

COMMENT:添加在SPFILE中被更改的参数旁的注释

SCOPE:确定应在内存中、在SPFILE中还是同时在这两个位置进行更改,值缺省值是both

MEMORY:只能在当前运行的例程中更改参数值

SPFILE:只能在SPFILE中更改参数值

BOTH:在当前运行的例程和SPFILE中均可更改参数值

SID:标识要使用的SPFILE的ORACLE_SID

'sid':更改SPFILE时使用的特定SID

'*':使用缺省SPFILE

deferred:延迟修改,下一次登录时,才修改

4、 SPFILE与PFLIE的区别:

·SPFILE可以被备份

·SPFLIE减少人为错误,提高安全性

·SPFILE减少配置错误

·容易查找到

5、 查看参数:

show parameter parametername;

6、startup命令

(1)、startup命令默认读取参数文件的顺序:

·spfileSID.ora

·缺省SPFILE

·initSID.ora

·缺省PFILE

(2)、使用startup命令时,可以显式指定要使用的pfile。但不可以指定spfile。

如:startup pfile=$ORACLE_HOME/dbs/init.ora

但是可用通过pfile,调用spfile。只需在pfile中追加以下相关语句,指定要使用的spfile文件:spfile=$ORACLE_HOME/dbs/spfileabc.ora

(3)、谁可以启动数据库:

有操作系统特权的用户、有sysdba或者有sysoper特权并通过验证的用户。

7、 启动数据库的几个阶段:

(1)、SHUTDOWN:未启动状态

(2)、NOMOUNT:启动实例。在nomount状态,可以创建数据库和控制文件

--读取初始化参数文件

--分配SGA

--启动后台进程。(没有数据库和与之连接)

--打开报警日志和跟踪文件

(3)、MOUNT:加载数据库,但没有打开数据库。

加载数据库包括以下任务:

--使数据库与以前启动的实例关联

--定位并打开参数文件中指定的控制文件

--读取控制文件以获取数据文件和重做日志文件的名称和状态。但是,在此时不进行数据文件和联机重做日志文件是否存在的检查。

在mount状态,可以重命名数据文件、启用和禁用重做日志归档选项、执行完全数据库恢复。

把一个数据库和一个实例挂接起来。读取控制文件(alter database mount)

(4)、OPEN:打开数据库。读取数据文件和联机重做日志(alter database open)。

Oracle服务器验证所有数据文件和联机重做日志文件是否可以打开,并检查数据库的一致性。如果需要,系统监视(SMON)后台进程将启动例程恢复操作。

*****************************************************************************************************************

[oracle@oracle9idemo ~]$ sqlplus /nolog

SQL*Plus: Release 9.2.0.4.0 - Production on Wed Dec 15 18:06:23 2010

Copyright (c) 1982, 2002, Oracle Corporation. All rights reserved.

SQL> conn /as sysdba

Connected to an idle instance.

SQL> startup nomount

ORACLE instance started.

Total System Global Area 236000356 bytes

Fixed Size 451684 bytes

Variable Size 201326592 bytes

Database Buffers 33554432 bytes

Redo Buffers 667648 bytes

SQL> show parameter db_name;

NAME TYPE VALUE

------------------------------------ ----------- ------------------------------

db_name string denver

SQL> alter database mount;

Database altered.

SQL> alter database open;

Database altered.

SQL>

***************************************************************************************************************

8、设置只读模式

STARTUP MOUNT

ALTER DATABASE OPEN READ ONLY;

8、 关闭数据库过程

·close a database:

SGA数据写到磁盘上、连接数据文件和redolog文件关闭掉。控制文件仍然是打开的。

·unmount a database:关闭控制文件

·shutdown an instance

9、 诊断文件

(1)、文件类型:

·警告日志(alterSID.log file):记录数据库日常操作的信息

·后台跟踪文件(background trace files):

记录SMON、PMON、DBWn和其它后台进程失败时产生的重要信息

·用户跟踪文件(user trace files):

记录出现严重用户错误或用户强制执行跟踪文件时产生的重要信息

(2)、命名方式:

background trace files命名方式:SID_processname_PID.trc。

user trace files命名方式:SID_ora_PID.trc

alert log由dba来管理,位于background_dump_dest中。

(3)、存储位置:

·警告日志(alterSID.log file):存储位置由BACKGROUND_DUMP_DEST定义

·后台跟踪文件(background trace files):存储位置由BACKGROUND_DUMP_DEST定义

·用户跟踪文件(user trace files):存储位置由USER_DUMP_DEST定义

10、启用或禁用用户跟踪选项(可以在两种级别进行修改设置)

(1)、会话级别:

–使用ALTER SESSION命令:

ALTER SESSION SET SQL_TRACE = TRUE

–执行DBMS过程:

dbms_system.SET_SQL_TRACE_IN_SESSION

(2)、例程级别

–设置初始化参数:

SQL_TRACE = TRUE

11、查看用户

desc dba_users;

SQL> select username,account_status from dba_users;

USERNAME ACCOUNT_STATUS

------------------------------ --------------------------------

SYS OPEN

SYSTEM OPEN

DBSNMP OPEN

SCOTT OPEN

HR OPEN



SQL>
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: