oracle 数据库启动与关闭_第1页
oracle 数据库启动与关闭_第2页
oracle 数据库启动与关闭_第3页
oracle 数据库启动与关闭_第4页
oracle 数据库启动与关闭_第5页
已阅读5页,还剩81页未读 继续免费阅读

下载本文档

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

文档简介

1、第二章 Oracle数据库实例启动与关机杨进学习目标在Oracle 数据库创建以后,最常见也是最基本的操作就是配置初始化参数文件,启动和关闭Oracle 数据库实例。本章内容围绕启动和关闭数据库,讲解Oracle 数据库实例管理的一些基本知识。【本章要点】 启动和关闭启动和关闭Oracle 数据库实例数据库实例 创建和管理创建和管理Oracle 数据库初始化参数文件数据库初始化参数文件 了解了解Oracle 数据库的数据库的3 类诊断文件类诊断文件12.1 实例的启动和关闭12.1.1 数据库启动阶段数据库启动阶段Oracle 数据库的启动分为3 个阶段,首先首先是启动实例,然后然后是装载数据

2、库,最后最后是打开数据库。如果没有启动Oracle 实例,当使用SQL*Plus 以普通用户身份连接时,会显示错误信息:访问Oracle 数据库首先要启动数据库,管理员连接到空闲实例,然后才能发出启动实例或数据库的命令。启动Oracle 服务器包括三个阶段中,每个阶段会打开不同的文件并且会完成不同的管理任务。启动的三个阶段如图所示,启动的每个阶段的特点描述如下:1)启动实例阶段在两种情况下需要启动数据库到该阶段: 创建数据库 创建控制文件。在该阶段打开的文件有: 初始化参数文件初始化参数文件 警告日志文件。警告日志文件。 当启动实例时,系统首先要读取初始化参数文件,如前图所示。然后根据初始化参

3、数文件的设置分配系统全局区(SGA),并启动Oracle 后台进程。 另外,操作系统还会打开“警告日志”, 并且将启动信息存放到“ 警告日志” 中。警告日志存放在初始化参数background_dump_dest 所对应的目录中,其文件名格式为alert.log。有关初始化参数文件将在本章后一部分详述2)装载数据库阶段进入该阶段的目的是执行特定的数据库维护操作。有如下三个典型的维护操作: 修改数据文件名。修改数据文件名。 执行数据库完全恢复。执行数据库完全恢复。 日志文件的联机日志文件的联机/脱机,修改归档方式。脱机,修改归档方式。在该阶段打开的文件是: 控制文件。控制文件。装载数据库时,系统

4、会按照初始化参数control_files 的设置查找并打开控制文件。Oracle是通过控制文件在实例和数据库之间建立关联的,通过控制文件可以取得数据文件和重做日志的名称和所处状态。但对数据文件和日志文件是否存在不作检查。3)打开数据库阶段只有在打开数据库之后,客户才能够访问Oracle 服务器,并执行各种数据访问操作。在该阶段,打开的文件有: 联机的数据文件。联机的数据文件。 联机的重做日志文件。联机的重做日志文件。如果在尝试打开数据库时有任何数据文件或联机重做日志文件不存在,Oracle 服务器将返回错误消息。后台进程SMON 要检查控制文件、数据文件以及重做日志,并确定它们是否处于同步状

5、态。如果处于同步状态,则Oracle 会直接打开所有数据文件和重做日志;如果不处于同步状态,并且可以进行实例恢复,那么SMON 将自动进行实例恢复,然后打开数据库;如果不处于同步状态,并且不能进行实例恢复,那么SMON 会提示数据库管理员进行介质恢复。数据库启动个阶段打开文件示意图12.1 实例的启动和关闭12.1.2 启动数据库操作启动数据库操作数据库的启动命令是STARTUP,在使用STARTUP 命令启动数据库的时候首先需要使用初始化参数,并可以将数据库以不同的方式打开。1启动命令启动命令执行命令STARTUP,要求用户必须具有SYSDBA 或SYSOPER 系统权限,另外,如果要建立数

6、据库,则必须以SYSDBA 身份登录。该命令具体格式如下:要使数据库由NOMOUNT 进入MOUNT 阶段或由MOUNT 进入OPEN 阶段,需要使用ALTER DATABASE 命令:ALTER DATABASE MOUNT | OPEN 要显示数据库的当前处于的启动状态,可以使用如下查询:SELECT status FROM v$instance;用户可以在数据库关闭状态下直接执行STARTUP 或STARTUP OPEN 打开数据库,以下实例分别进入不同的阶段,最后打开数据库2只读状态打开数据库只读状态打开数据库在正常启动状态下,默认数据库进入读写状态(ReadWrite)。在必要时可以

7、将数据库设置为只读状态(ReadOnly)。在只读状态下,用户只能查询数据库,但不能以任何方式对数据库对象进行修改。但要注意,在只读状态下,数据库还可以进行数据库的恢复或者不产生重做日志数据的操作,比如:数据文件仍然可以联机和脱机,已脱机的数据文件或表空间可以进行恢复。 对其他文件如控制文件、跟踪文件、审计文件、警告文件等仍然可以继续写入。使用如下命令,使数据库进入只读状态或进入读写状态。使用如下命令,使数据库进入只读状态或进入读写状态。1)STARTUP OPEN READ WRITE| READ ONLY2)ALTER DATABASE OPEN READ WRITE| READ ONLY

8、其中:READ WRITE:进入读写状态READ ONLY:进入读写状态3使用限制模式使用限制模式限制模式只允许具有RESTRICTED SESSION 权限的用户正常使用数据库,其他用户被限制使用数据库。RESTRICTED SESSION 权限可以根据需要授予用户,DBA 用户默认有授予RESTRICTED SESSION 权限给其他用户的权限, DBA 用户本身具有RESTRICTEDSESSION 权限,所以限制模式下DBA 用户可以继续使用数据库进行特定的维护工作。当只允许特定用户使用数据库时,可以考虑使用限制模式。使用如下命令,使数据库进入限制模式:使用如下命令,使数据库进入限制模

9、式:1)ALTER SYSTEM ENABLE|DISABLE RESTRICTED SESSION 2)STARTUP RESTRICT其中:ENABLE:启用限制模式。DISABLE: 取消限制模式。注意, 当数据库切换到RESTRICTED SESSION 状态时, 先前登录的不具有RESTRICTED SESSION 权限的用户仍然可以正常工作。12.1.3 关闭数据库操作关闭数据库操作当DBA 要执行完全数据库备份、修改初始化参数以及其他系统维护操作时,需要停止Oracle 服务器。1)数据库关闭方式)数据库关闭方式Oracle 数据库共有4 种关闭方式,根据不同的情况,管理员可采用

10、不同的方式关闭数据库。 NORMAL:正常关闭方式。:正常关闭方式。 TRANSACTIONAL:事务关闭方式。:事务关闭方式。 IMMEDIATE:立即关闭方式。:立即关闭方式。 ABORT:强制终止关闭方式:强制终止关闭方式。2.5.1 表空间表空间用于组织数据库的数据,数据库逻辑上表空间用于组织数据库的数据,数据库逻辑上由一个或多个表空间组成,而表空间物理由一个或多个表空间组成,而表空间物理上是由一个或多个数据文件组成的。上是由一个或多个数据文件组成的。通过使用多个表空间,数据库的数据对象被分门别类存放在不同的表空间中。这样数据库的管理员可以有效的控制数据库的磁盘空间,并控制用户的空间使

11、用配额。通过使用不同类型的表空间,还可以提高数据访问的性能。NORMAL、TRANSACTIONAL、IMMEDIATE 三种关闭方式,属于一致性数据库(或称干净数据库)关闭。特点是无需进行数据库恢复,关闭和启动过程如图ABORT 关闭方式,属于非一致性数据库(或称脏数据库)关闭。使用ABORT 关闭、或数据库发生实例故障(比如断电)、或使用STARTUP FORCE 强制重新启动数据库,都需要进行实例恢复。关闭和启动过程如图四种关闭方式详细描述如下:四种关闭方式详细描述如下:1)SHUTDOWN NORMALNORMAL 是默认选项。这种方式是被动的等待方式,在所有用户主动退出后,才实施关闭

12、。该选项按照以下条件进行: 不能连接新的用户。不能连接新的用户。 Oracle 服务器等待所有用户断开已存在连接,然后完成关闭。服务器等待所有用户断开已存在连接,然后完成关闭。 数据库和重做日志缓存写入磁盘。数据库和重做日志缓存写入磁盘。 结束后台进程,在内存中释放结束后台进程,在内存中释放SGA。 下次启动无需进行实例恢复。下次启动无需进行实例恢复。该方式在关闭数据文件、重做日志和控制文件之前,系统首先要发出检查点,同步所有数据文件、控制文件和重做日志,使得这三种文件处于同步状态。2)SHUTDOWN TRANSACTIONAL这种方式将等待所有用户的事务结束,在避免用户修改丢失的前提下,尽

13、快关闭数据库。该选项按照以下条件进行: 在此实例上,客户端不能开始新的事务在此实例上,客户端不能开始新的事务 一旦客户端的当前事务结束,客户即被断开一旦客户端的当前事务结束,客户即被断开 当所有的事务结束,立即进行数据库关闭当所有的事务结束,立即进行数据库关闭 下次启动无需进行实例恢复。下次启动无需进行实例恢复。 假定有一个用户正在执行事务操作(INSERT、UPDATE 等),那么当执行SHUTDOWN TRANSACTIONAL 时系统会处于等待状态。而当该用户执行COMMIT 或ROLLBACK 终止事务之后,系统会自动断开其连接,然后停止Oracle 服务器。 另外另外,在执行该命令关

14、闭数据库之前,与SHUTDOWN NORMAL 类似,系统也会首先发出检查点,然后才会关闭数据文件、控制文件和重做日志。3)SHUTDOWN IMMEDIATE 这种方式无需等待用户的情况下,进行立即关闭。已经提交的事务不会丢失,未提交的事务被撤销。该选项按照以下条件进行: 当前执行的当前执行的SQL 语句被取消语句被取消 Oracle server 不等待当前连接的用户断开不等待当前连接的用户断开 Oracle 回退活动事务,并断开所有连接的用户回退活动事务,并断开所有连接的用户 Oracle 关闭实例前关闭和卸载数据库关闭实例前关闭和卸载数据库 下次启动无需进行实例恢复。下次启动无需进行实

15、例恢复。假定有一个用户正在执行事务操作(INSERT、UPDATE 等),那么当执行SHUTDOWNIMMEDIATE 时系统会自动回退该事务操作,然后断开用户连接,最后停止Oracle 服务器。另外,在执行该命令关闭数据库之前,与SHUTDOWN NORMAL 类似,系统也会首先发出检查点,然后才会关闭数据文件、控制文件和重做日志。4)SHUTDOWN ABORT SHUTDOWN ABORT 命令用于快速停止Oracle 服务器,属于异常终止数据库,例如实例出现故障或使用其他三种方式无法停止Oracle 服务器,可以考虑采用这种方式。该选项按照以下条件进行: 当前执行的当前执行的SQL 语

16、句被取消语句被取消 Oracle server 不等待当前连接的用户定断开不等待当前连接的用户定断开 数据库和重做日志缓存不写入磁盘。数据库和重做日志缓存不写入磁盘。 没有提交的事务不回滚没有提交的事务不回滚 在不关闭文件的情况下结束实例在不关闭文件的情况下结束实例 数据库不关闭和卸载数据库不关闭和卸载 下次启动需要进行实例恢复,恢复自动发生。下次启动需要进行实例恢复,恢复自动发生。因为采用这种方式不会发出检查点,从而使得数据文件、控制文件和重做日志处于不一致的状态,所以将来在启动Oracle 服务器时,后台进程SMON 会自动进行实例恢复,最终将数据文件、控制文件和重做日志恢复到一致状态。大

17、家在使用Oracle 服务器时,尽可能不要使用SHUTDOWN ABORT 命令停止Oracle 服务器。如果系统并发事务很多,而又执行了SHUTDOWN ABORT 命令停止Oracle 服务器,那么因为需要进行实例恢复,所以可能会导致Oracle 服务器启动时间很长。注意:在数据库不一致的状态下不能进行数据库的备份注意:在数据库不一致的状态下不能进行数据库的备份四种关闭方式的特点总结如下表(四种关闭方式的特点总结如下表(是,是,否):否):2)数据库关闭操作数据库关闭操作停止Oracle 服务器是使用命令SHUTDOWN 来完成的,执行该命令要求用户必须具有SYSDBA 或SYSOPER

18、特权。其命令格式如下:SHUTDOWN NORMAL | TRANSACTIONAL | IMMEDIATE | ABORT NORMAL:正常关闭方式。:正常关闭方式。 TRANSACTIONAL:事务关闭方式。:事务关闭方式。 IMMEDIATE:立即关闭方式。:立即关闭方式。 ABORT:强制终止关闭方式。:强制终止关闭方式。默认的关闭模式是NORMAL。当执行了不带选项的SHUTDOWN 命令之后,即使Oracle 服务器仍然没有关闭,新的客户也不能够连接到Oracle 服务器。此时如果客户要连接到Oracle 服务器时,则会显示错误信息:ORA-01090:shutdown in p

19、rogress connection is not permitted。【实例12-5】验证NORMAL 关闭方式1)以SYS 帐户和SCOTT 帐户连接创建两个会话2)在第一个会话中发出SHUTDOWN 命令,观察现象,关闭命令处于等待状态,如图3)在第二个会话中发出EXIT 命令结束会话,如图4)观察第一个会话窗口,出现关闭信息SQL SHUTDOWN数据库已经关闭。已经卸载数据库。ORACLE 例程已经关闭。除了使用命令行方式,用户也可以使用控制台来实施数据库的启动和关闭,但是这种方法不建议专业DBA 采用,该方法虽然直观,但是不够灵活,并会占用大量系统资源,同学们自己去了解。,同学们自

20、己去了解。12.2 Oracle 数据库初始化参数文件数据库初始化参数文件 启动数据库实例首先需要打开初始化参数文件,通过修改初始化参数文件初始化参数文件的参数设置,可以对Oracle 数据库进行初始设置。12.2.1 初始化参数文件初始化参数文件1)参数文件简介)参数文件简介通过学习Oracle 数据库的组成结构,我们知道实实例是一组例是一组Oracle 后台进程和内存结构的集合后台进程和内存结构的集合,那么实例到底要占用多大内存空间,并且在启动实例时是否要启动某些特定的后台进程呢?这都需要通过配置参数文件来完成。通过设置初始化参数,不仅可以定义实例特征(SGA 尺寸、后台进程),而且还可以

21、定义许多其他特征和限制。 例如,例如,通过设置初始化参数设置数据库名称,定义用户和进程限制,定义控制文件、跟踪文件和警告日志的位置等。 当以SYSDBA 身份发出STARTUP 命令,Oracle 服务器就会读取初始化参数文件,根据参数文件来配置实例。启动实例时必须有相应的初始化参数文件存在。 Oracle9i 提供了200 多个初始化参数,并且每个初始化参数都有默认值(Default Value)。 如果在参数文件中没有出现参数的定义,就会采用Oracle 服务器的默认参数值。在使用Oracle 服务器时,你只需要根据特定需求设置相应参数即可,而大多数参数都可以保留默认设置。2)主要的初始化

22、参数)主要的初始化参数因为Oracle 提供了大量的初始化参数,所以在这里只介绍主要的初始化参数,关于其他参数,在用到时会详细介绍。具体说明如下: db_name:该参数用于指定数据库名称。 instance_name:该参数用于指定实例名,应该与db_name 保持一致。 control_files:该参数用于指定控制文件的路径和名称,Oracle 使用该参数在实例和数据库之间建立关联。 db_block_size:该参数用于指定标准数据块的尺寸,SYSTEM 表空间的数据块会自动按照该参数进行设置,其参数值可以设置为2K、4K、8K、16K 或32K。在建立了数据库之后,该参数的值不能修改

23、。 db_cache_size:该参数用于定义标准数据块所对应的数据高速缓存尺寸,该初始化参数是Oracle9i 新增加的参数。另外,在oracle9i 中仍然保留了初始化参数db_block_buffers,但将来版本会弃用该参数。2)主要的初始化参数)主要的初始化参数 log_buffer:该参数用于指定重做日志缓冲区的尺寸。 shared_pool_size:该参数用于指定共享池的尺寸。 background_dump_dest:该参数用于指定后台进程跟踪文件所在目录。 user_dump_dest:该参数用于指定用户进程跟踪文件所在目录。 remote_login_passwordfi

24、le:该参数用于指定特权用户的认证方式。 undo_management:该参数用于指定管理UNDO 数据的方式,该参数是Oracle9i新增加的参数。如果设置该参数为MANUAL,则管理UNDO 数据仍然使用回滚段;如果设置为AUTO,则使用UNDO 表空间自动管理UNDO 数据2)主要的初始化参数)主要的初始化参数 undo_tablespace:该参数用于指定默认的UNDO 表空间,该参数也是Oracle9i 新增加的参数。如果参数undo_management 被设置为AUTO,则管理UNDO 数据会使用该参数所对应的表空间;如果参数undo_management 被设置为MANUAL

25、,则该参数不起任何作用。注意:如果参数undo_management 被设置为AUTO,那么undo_tablespace 所对应的UNDO 表空间必须存在,否则会导致Oracle 服务器无法启动。3两种初始化参数文件对于一个实例来讲,可以同时存在多个初始化参数文件,根据不同的性能需求,可以选择其中某个初始化参数文件来启动实例。有两种不同类别的初始化参数文件: 服务器端永久初始化参数文件(服务器端永久初始化参数文件(SPFILE),一般名为),一般名为spfile.ora 静态初始化参数文件(静态初始化参数文件(PFILE),一般名为),一般名为init.ora。服务器端永久初始化参数文件位于

26、数据库服务器;而静态初始化参数文件既可以位于服务器,也可以位于客户端。4查询初始化参数查询初始化参数 为了提高Oracle 服务器运行性能,你可能需要通过修改初始化参数来改变SGA 尺寸;另外,为了在运行Oracle 服务器时启动其他后台进程,可能需要修改某些初始化参数自动启动这些后台进程。当然,初始化参数还有其他许多作用,那么如何监视初始化参数的设置呢?在实例运行阶段,通过执行命令执行命令SHOW PARAMETER 可以显示初始化参数的值,另外也可以查询动态性能视图动态性能视图v$parameter 获得其更详细的信息【实例12-7】查询初始化参数文件在此阶段,如果查询语句中有绑定变量,语

27、句就要获得绑定的变量值。3)执行经过语句解析,Oracle 最终生成了执行计划,并将该执行计划装载到了库高速缓存。在执行阶段,服务器进程将按照执行计划中所安排的步骤来执行SELECT 语句。首先,服务器进程要确定被选择行所在数据块是否已经被读取到数据高速缓存,如果该数据块内容已经被读取到数据高速缓存,则转入“提取数据”阶段; 如果该数据块没有被读取到数据高速缓存,那么服务进程会将数据块内容复制到数据高速缓存的缓冲区中4)提取数据(fetch)12.2.2 静态初始化参数文件静态初始化参数文件PFILE1)静态初始化参数文件特点静态初始化参数文件特点静态初始化参数文件通常称为PFILE。在构造O

28、racle 服务器之前,首先需要完成的任务就是建立参数文件, 并配置相应参数。静态初始化参数文件的默认位置是$Oracle_Homedatabase 目录。静态初始化参数文件默认的名称为Init.ora,其中SID是实例标识符。静态初始化参数文件还有如下的一些特点: 参数文件仅在实例启动时打开 内容是文本文件,可以使用操作系统的文本编辑器比如Notepad 来编辑修改。 对静态初始化参数文件的修改只有在重新启动数据库后才能生效。 可以使用本地(服务器)或客户端静态初始化参数文件启动数据库实例,在客户端启动数据库实例时,在STARTUP 命令的参数中指明即可。如果要修改参数,还要注意以下要点:如

29、果要修改参数,还要注意以下要点: 参数设置形式是:参数=值。 在修改或增加初始化参数之前,首先检查该初始化参数是否存在,若存在则直接修改;若不存在,则在文件尾部增加一行。 每行只能设置一个参数,参数的出现顺序无关。 #是注释标记是注释标记,可以屏蔽掉不需要的行。 字符型参数需要用双引号引起来字符型参数需要用双引号引起来,但数字型参数则不能用引号。 如果一个初始化参数有多个值要用括号引起,值之间用逗号分隔。 使用IFILE 参数可以在当前参数文件中包含其它的参数文件在修改或增加初始化参数时,必须要遵从特定的规则。如果违反了参数设置原则,在启动实例时可能会显示错误信息,或者会导致配置不起任何作用。

30、以下是静态初始化参数文件的一个样本,#是注释行起始标记,该行不起作用。# Initialization Parameter File: initmydb.ora#共享服务参数dispatchers=(PROTOCOL=TCP) (SERVICE=mydbXDB)#实例名instance_name=mydb#版本aq_tm_processes=1compatible=9.2.0.0.0#验证方式none shareremote_login_passwordfile=EXCLUSIVE#PGA 参数,排序区pga_aggregate_target=25165824sort_area_size=52

31、4288#数据库标识db_domain=db_name=mydb#控制文件control_files=(D:oracleoradatamydbCONTROL01.CTL,D:oracleoradatamydbCONTROL02.CTL, D:oracleoradatamydbCONTROL03.CTL)#缓冲区java_pool_size=33554432large_pool_size=8388608shared_pool_size=50331648#打开光标open_cursors=300#回滚段管理undo_management=AUTOundo_retention=10800undo_t

32、ablespace=UNDOTBS1#跟踪文件background_dump_dest=D:oracleadminmydbbdumpcore_dump_dest=D:oracleadminmydbcdumptimed_statistics=TRUEuser_dump_dest=D:oracleadminmydbudump#进程数,最小为6,一般为50processes=150#数据块db_block_size=8192db_cache_size=25165824db_file_multiblock_read_count=162)使用静态初始化参数文件启动实例使用静态初始化参数文件启动实例以下实

33、例使用静态初始化参数来启动实例。【实例实例12-8】复制初始化参数文件并启动数据库复制初始化参数文件并启动数据库1)复制参数文件)复制参数文件在创建在创建Oracle 数据库的同时,已经在数据库的同时,已经在database 目录下建立了默认的静态初始化参数文件,目录下建立了默认的静态初始化参数文件,使用操作系统文件复制功能将使用操作系统文件复制功能将database 目录目录下的初始化参数文件下的初始化参数文件initdb01.ora 复制到磁盘复制到磁盘的其他位置的其他位置,如如/usr盘根目录。盘根目录。2)使用)使用Notepad 编辑初始化参数编辑初始化参数有些初始化参数如有些初始化

34、参数如DB_NAME、CONTROL_FILES、DB_BLOCK_SIZE 已经正确设已经正确设置,不能进行修改。在这里我们试修改初始置,不能进行修改。在这里我们试修改初始化参数化参数db_cache_size 的值,如下:的值,如下:db_cache_size=20M3)使用新的参数文件启动实例依次执行以下命令,先关闭实例,然后使用新的参数文件启动实例4)查询结果)查询结果使用练习使用练习12-7 的方法查看新设置的初始化参的方法查看新设置的初始化参数(结果略)数(结果略)12.2.3 服务器端初始化参数文件服务器端初始化参数文件SPFILE服务器端永久初始化参数文件通常称为SPFILE,

35、是Oracle 9i 的新功能。服务器端初始化参数文件的默认位置是$Oracle_Homedatabase 目录。服务器端初始化参数文件默认的名称为spfile.ora,其中SID 是实例标识符。该文件不能手动修改,如果进行手动修改,SPFILE 将变为无效1)服务器端初始化参数文件的特点服务器端初始化参数文件的特点服务器端初始化参数文件SPFILE 还有如下的一些特点: 服务器端初始化参数文件是二进制文件形式。 由Oracle 服务器来进行维护。 总是驻留在服务器端。 在实例关闭和启动状态下都能进行参数的修改。 可进行参数值的自动调解。 可以使用Recovery Manager(一种备份工具

36、)来备份初始化参数。2)修改服务器端参数文件修改服务器端参数文件SPFILE 的内容是二进制,不能直接查看和修改。可以将其转换成文本格式,作为一种备份服务器端初始化参数文件的方式。我们可以查看或修改服务器端初始化参数文件对应的静态初始化参数文件,然后再转换成SPFILE。通过V$SPPARAMETER 性能视图,可以查看SPFILE 的内容。在实例启动以后,可以动态修改初始化参数文件。但并不是所有的初始化参数都可以动态修改的,这一点要引起注意。动态修改初始化参数的命令如下:ALTER SYSTEM SET 参数名参数名= 参数值参数值SCOPE = MEMORY|SPFILE|BOTHSID=

37、 sid|*其中:参数名:要修改的参数名称参数值:新的参数值SCOPE:确定修改内存中的参数、或修改SPFILE 中的参数、或同时进行修改MEMORY:修改当前运行实例的参数值(内存中)SPFILE:只修改SPFILE 中的参数值BOTH:同时修改当前运行实例和SPFILE 中的参数值,这是一个默认值。SID:指明正在使用的SPFILE 的SIDsid:在修改SPFILE 时说明使用的SID*:使用默认的SPFILE【实例实例12-9】修改服务器端初始化参数文件中修改服务器端初始化参数文件中undo_suppress_errors 的值。的值。2)显示undo_suppress_errors

38、的值说明:由于在参数中使用了BOTH,将同时修改内存和SPFILE 中的值。ALTER SYSTEM RESET 命令用来恢复参数的默认值,格式如下:ALTER SYSTEM RESET 参数名参数名SCOPE = MEMORY|SPFILE|BOTH SID= sid|*12.2.4 参数文件其他问题参数文件其他问题以下部分说明了参数文件的互建方法和使用顺序。1)互建参数文件互建参数文件静态初始化参数文件和服务器端永久初始化参数文件可以互建。使用命令:CREATE SPFILE =SPFILE-NAMEFROM PFILE=PFILE-NAME;可以由静态初始化参数文件创建服务器端初始化参数

39、文件。 12.2.4 参数文件其他问题参数文件其他问题使用命令:CREATE PFILE =PFILE-NAMEFROM SPFILE=SPFILE-NAME;可以由服务器端初始化参数文件创建静态初始化参数文件。其中:PFILE-NAME 是静态初始化参数文件的路径和名称。SPFILE-NAME 代表服务器端初始化参数文件的路径和名称。12.2.4 参数文件其他问题参数文件其他问题在实例关闭和启动状态下以上命令均可执行,但需要SYSDBA 权限。如果没有指明初始化参数文件的名称,将采用默认的路径和名字,即路径为$Oracle_Home/database。静态初始化参数文件默认的名称为init.

40、ora , 服务器端初始化参数文件默认的名称为spfile.ora,其中SID 是实例标识符。例如,使用如下命令:CREATE SPFILE FROM PFILE;将在$Oracle_Homedatabase 下由init.ora 创建spfile.ora。【实例实例4-10】由服务器端初始化参数由服务器端初始化参数文件创建静态初始化参数文件文件创建静态初始化参数文件12.2.4 参数文件其他问题参数文件其他问题2)参数文件的使用顺序参数文件的使用顺序 如果同时存在多个初始化参数文件,当使用STARTUP 命令启动数据库时,会在默认目录下($Oracle_Homedatabase)寻找初始化参

41、数文件,使用的优先顺序是: 使用不带参数的STARTUP 命令,先查看是否存在服务器端初始化参数文件spfile.ora,如果存在则它启动实例。 如果不存在服务器端初始化参数文件spfile .ora,则使用默认的SPFILE.ora 来启动数据库。 如果默认的SPFILE.ora 不存在,则使用静态初始化参数文件init.ora 来启动数据库。12.2.4 参数文件其他问题参数文件其他问题2)参数文件的使用顺序参数文件的使用顺序 如果在STARTUP 命令中使用了参数PFILE 指明特定的静态初始化参数文件,那么指明的初始化参数优先。比如: STARTUP PFILE = $ORACLE_H

42、OME/database/initDB01.ora注意:在PFILE 文件中可以包含参数SPFILE 来指明使用特定非默认位置的SPFILE。 比如在PFILE 中包含以下的内容,将使用指定的服务器端初始化参数文件:SPFILE = /database/startup/spfileDB01.ora12.2.4 参数文件其他问题参数文件其他问题2)参数文件的使用顺序参数文件的使用顺序 如果在STARTUP 命令中使用了参数PFILE 指明特定的静态初始化参数文件,那么指明的初始化参数优先。比如: STARTUP PFILE = $ORACLE_HOME/database/initDB01.ora

43、注意:在PFILE 文件中可以包含参数SPFILE 来指明使用特定非默认位置的SPFILE。 比如在PFILE 中包含以下的内容,将使用指定的服务器端初始化参数文件:SPFILE = /database/startup/spfileDB01.ora12.2.5 显示实例和数据库信息显示实例和数据库信息1)显示显示SGA 尺寸尺寸SGA 越大,Oracle 服务器性能越好。但SGA 尺寸不要超过实际内存的12,否则不仅不能提高运行性能,反而会降低Oracle 服务器运行性能。那么如何监视SGA 尺寸呢?一方面你可以通过SHOW SGA 命令取得SGA 尺寸,另外也可以查询动态性能视图v$sga,

44、如下所示:SQL SELECT * FROM v$sga;NAME VALUE- -Fixed Size 453492Variable Size 109051904Database Buffers 25165824Redo Buffers 66764812.2.5 显示实例和数据库信息显示实例和数据库信息2)显示当前正在运行的后台进程显示当前正在运行的后台进程不同后台进程担负着不同管理任务,在Oracle 服务器中后台进程DBWR、LGWR、SMON、PMON、CKPT 一直处于运行状态,而其他后台进程则是根据特定需要由数据库管理员来确定是否需要启动。例如,如果数据库处于ARCHIVELOG

45、模式,则必须启动后台进程ARCH ;而如果要进行高级复制,则必须启动后台进程SNP。通过查询动态性能视图v$bgprocess 可以显示Oracle 服务器可包含的所有后台进程,另外也可以确定当前处于运行状态的后台进程,如下所示:12.2.5 显示实例和数据库信息显示实例和数据库信息3)显示显示Oracle 服务器所有进程服务器所有进程经过前面内容的学习,大家应该清楚,Oracle 进程包括后台进程和服务器进程两种类型,并且所允许的最大进程个数是由初始化参数processes 来确定的。为了确保Oracle 服务器有足够的进程可用,在数据库运行的高峰阶段可能需要监视当前正在运行的进程个数。那么

46、如何监视Oracle 进程呢?通过查询动态性能视图v$process 可以监视所有Oracle 进程信息,如下所示:SQL SELECT program,background FROM v$process;PROGRAM-PSEUDOORACLE.EXEORACLE.EXEORACLE.EXEORACLE.EXE12.2.5 显示实例和数据库信息显示实例和数据库信息4)显示显示Oracle 服务器状态服务器状态当建立数据库或控制文件时,要求Oracle 服务器必须处于NOMOUNT 状态;而当执行数据库各种维护操作时,要求Oracle 服务器必须处于MOUNT 状态;而如果客户应用要访问Ora

47、cle 服务器,则要求Oracle 服务器必须处于OPEN 状态。那么如何监视Oracle 服务器的状态呢?通过查询动态性能视图v$instance,可以获得Oracle 服务器所处状态,如下所示:SQL SELECT status FROM v$instance;STATUS-OPEN12.2.5 显示实例和数据库信息显示实例和数据库信息5)显示数据库物理文件)显示数据库物理文件Oracle 数据库由数据文件、控制文件以及重做日志三种文件组成。在进行完全数据库备份时,需要确定这些文件的位置及名称;另外,如果要改变这些文件的位置,也必须首先确定它们的位置。通过查询动态性能视图v$datafil

48、e,可以获得数据文件信息;通过查询动态性能视图v$controlfile,可以获得控制文件信息;通过查询动态性能视图v$logfile,可以取得重做日志的信息,如下所示:显示控制文件信息:SQL SELECT * FROM v$controlfile;NAME-D:ORACLEORADATADB01CONTROL01.CTLD:ORACLEORADATADB01CONTROL02.CTLD:ORACLEORADATADB01CONTROL03.CTL显示数据文件信息的查询命令:SELECT name FROM v$datafile;显示日志文件信息的查询命令:SELECT member FROM v$logfi

温馨提示

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

评论

0/150

提交评论