`
wsql
  • 浏览: 11782605 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
文章分类
社区版块
存档分类
最新评论

实例管理

 
阅读更多

一、设置数据库初始化参数

1、Oracle服务器在启动例程时读取初始化参数文件。共有两种类型的初始化参数文件:

(1) 静态参数文件pfile,一般名为 initSID.ora。

  a)文本文件

  b)使用操作系统编辑器进行修改

  c)手动进行修改

  d)所作更改在下次启动时生效

  e)仅在例程启动过程中打开

  f)缺省位置为 $ORACLE_HOME/dbs

(2) 动态参数文件spfile,一般名为 spfileSID.ora。

  a)二进制文件

  b)由 Oracle 服务器进行维护

  c)始终驻留在服务器端

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

  e)可以自行调节参数值

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


(3)查参数

  v$parameter --显示当前在运行的实例中生效的参数值。

  v$spparameter--显示磁盘上的spfile中存储的值。

 selectname,value,DESCRIPTION from v$parameter where name like '%proces%';

  show parameter processes

   v$pramater(X$KSPPI,X$KSPPCV)

   processes--ORA-00020:maxnum number of processes(150) exceeded;

   session1.5processes+22(11g)1.1processes+5(10g)

  memory_max_target   --控制、预留

  memory_target

   sga_max_size

  sga_target_size

  db_cache_size

  shared_pool_size

  pga_aggregate_target

   log_archive_dest_1

  open_cursours

  session_cached_cursors

  undo_managemnet

   _allow_resetlogs_corruption

   _corrupted_rollback_segments

   --(select segment_name formdba_rollback_segs;undo_managemnet=MANUAL)

(4)修改参数

  pfile --纯文本

  spfile --二进制

  alter system|session reset|set parameter_name= scope=both,spfile,memory [sid=’sid’|’*’]

 #SID是指实例。在RAC中,一个数据库对应多个实例,可以使用此选项,只针对某个实例修改某个参数的值

二、数据库启动和关闭的多个阶段

1、数据库的四种状态

 SHUTDOWN

 NOMOUNT

 MOUNT

 OPEN


2、在启动时按顺序搜索实例参数文件


  这里SID指的是参数文件要启动的实例名称。

  参数默认存放在位置在:$ORACLE_HOME/dbs

  参数启动的优先级-->spfile<sid>.ora-->spfile.ora--init<sid>.ora这个搜索顺序非常重要!如果不存在这三个文件,就不能启动实例。

NOMOUN模式只使用参数文件和警报日志。

3、实例启动的完整步骤




 上图对应的命令:

 第一步启动:   startup;

 第二步创建实例: startup nomount;

 第三步加载数据库:alter database mount;

  第四步打开数据: alter database open;

 数据库启动的验证:alter session set events 'immediate trace name file_hdrs level10';//控件文件与数据文件头

  (1)第一次检查数据文件头中的Checkpoint CNT是否对应控制文件中的Checkpoint CNT一致,如果相等,则进行第二次检查.

  (2)第二次检查数据文件头的开始SCN和对应控制文件中的结束SCN是否一致.如果结束SCN等于开始SCN,则不需要对那个文件进行恢复.对每个数据文件都完成检查后,打开数据库,同时将每个数据文件的结束SCN设置为无穷大FFFFFFFFFFF.

4、关闭数据库

shutdown abort|immediate|transactional|normal

(1)shutdown abort;

这个命令相当于断电。实例立即终止。此时,不会将任何数据写入磁盘,也不会关闭任何文件句柄,同时也不会采用任何有序的方式终止正在进行的事务。

 友情提示:执行shudownabort命令不会坏数据库,因此,我们建议在数据库异常退出之后不执行诸如备份之类的某些操作。

(2)shutdown immediate;

这个命令不允许任何新的用户连接,当前所有连接的会话都被终止。任何活动的事务都将回滚,随后数据库会关闭。这个命令是我们平时用的最多的关闭数据库的命令。

(3)shutdown transactional;

 这个命令不允许任何新的用户连接,不存在于某个事务中的现有会话会被终止,允许当前位于某个事务中的会话完成该事务之后终止。一旦所有会话终止,就会关闭数据库。

(4)shutdown normal;

这个命令是默认的选项,即等于shutdown;该命令不允许任何新的用户连接,但是允许继续当前的所有连接。只有所有用户(自愿地)退出登录时,数据库才能真正关闭。

友情提示:通常,正常的数据库关闭是没有意义的:即使只剩下Database Control在运行,也总是存在尚未退出登录的用户。

(5)startupforce;

这个命令是由两条命令组成:先是shutdown abort;然后startup。有时在测试库了为节省时间偷一下懒,就用此命令。

(6)有序的关闭数据库

sys@OCM> alter database close;

Databasealtered.

sys@OCM>select status from v$instance;

STATUS

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

MOUNTED

sys@OCM>alter database dismount;

Databasealtered.

sys@OCM>select status from v$instance;

STATUS

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

STARTED

sys@OCM>shutdown abort;

ORACLEinstance shut down.

这些命令将完全颠倒启动顺序。在实际中,这样做没有价值,DBA直接使用shutdown命令。




三、告警日志文件和跟踪文件

存储位置由background_dump_dest 这个参数决定

告警日志包含了以下信息:

1、数据库启动或关闭的时间。

2、所有非缺省初始化参数的列表。

3、后台进程的启动。

4、例程使用的线程。

5、正在向其中写入信息的日志序列号 LGWR。

6、有关日志切换的信息。

7、表空间的创建和回滚段的创建。

8、已发出的警报声明。

9、有关 ORA-600 等错误消息和区错误的信息。

友情提示:很多DBA在被要求第一次查看数据库时,首先会查找告警日志,并从头到尾浏览一遍,以了解目前发生的事情。

user_dump_dest 这个参数决定位置(在11g中bdump与 udump都同一个位置了)

跟踪文件包含以下内容:

主要记录后台进程的一些信息,记录些用户运行相关的信息,如:用户所执行的SQL语句的相关信息

有个参数是控制这个跟踪日志的大小

sys@OCM>show parameter max_dump_file_size

NAME TYPE VALUE

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

max_dump_file_size string unlimited

可以修改此参数控制跟踪日志文件的大小

四、动态性能视图与数据库启动

nomount:v$parameter,v$sparameter,v$sga,v$sgastat,v$bh,v$instance,v$option,v$version,v$procession,v$processes,v$session

mount:v$thread,v$controlfile,v$database,v$datafile,v$logfile,v$datafile_header

五、考点:

1、因为在实例启动时只被读取一次,所以init文件被认为是“静态的”参数文件。因为Oracle在实例运行时会不断地读取和更新spfile文件,所以这种文件被认为是“动态的”参数文件。区分参数文件类型十分重要,因为有一个参数不具有默认值:DB_NAME参数。




**********本博客所有内容均为原创,如有转载请注明作者和出处!!!**********
Name: guoyJoe

QQ: 252803295

Email: oracledba_cn@hotmail.com

Blog: http://blog.csdn.net/guoyJoe

ITPUB: http://www.itpub.net/space-uid-28460966.html

OCM: http://education.oracle.com/education/otn/YGuo.HTM
_____________________________________________________________
加群验证问题:哪些SGA结构是必需的,哪些是可选的?否则拒绝申请!!!

答案在:http://blog.csdn.net/guoyjoe/article/details/8624392

Oracle@Paradise  总群:127149411

Oracle@Paradise No.1群:177089463(已满)

Oracle@Paradise No.2群:121341761

Oracle@Paradise No.3群:140856036




分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics