OCP第一课:Oracle Architectural Components

一、Oracle Architectural Components

1、  oracle的组件组成

2、  建立oracle连接的时候需要什么组件

 

 

1、  2个部分组成,一个是实例,一个是数据库

2、  实例中的SGAsystem global area)包含了一个内存结构,包含共享池shared pooldatabase buffer cacheredolog buffer cache

3、  数据库中包含的必需的有3个,数据文件,控制文件,重做日志文件,可选的文件:参数文件,密钥文件,归档日志文件。

4、  用户进程比如SQLPLUS,通过某种方式的审核连接到服务器进程

5、  服务器进程在用户进程连接数据库后代替用户进程来履行用户进程发出的命令,比如select等操作,也就是说SQLplus等客户端仅连接并发送请求,执行都由服务器进程来处理。

C:/>net start oracleserviceORCL

OracleServiceORCL 服务正在启动 .......

OracleServiceORCL 服务已经启动成功。

 

 

C:/>sqlplus

 

SQL*Plus: Release 10.2.0.1.0 - Production on 星期二 10 13 11:43:43 2009

 

Copyright (c) 1982, 2005, Oracle.  All rights reserved.

 

请输入用户名:  system

输入口令:

 

连接到:

Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Production

With the Partitioning, OLAP and Data Mining options

 

SQL> conn system/jaminwm

已连接。

SQL>

6、  演示启动关闭实例

SQL> conn sys/jaminwm as sysdba

已连接。

SQL> shutdown immediate

数据库已经关闭。

已经卸载数据库。

ORACLE 例程已经关闭。

SQL> startup nomount

ORACLE 例程已经启动。

 

Total System Global Area  289406976 bytes

Fixed Size                  1248600 bytes

Variable Size              92275368 bytes

Database Buffers          192937984 bytes

Redo Buffers                2945024 bytes

SQL> alter database mount

  2  ;

数据库已更改。

 

SQL> alter database open;

通过控制文件来验证 是否匹配

数据库已更改。

7、  总结:

Instance——memory structure

                     Background process

Database——data file

                     Log file

                     Control file

8、  Oracle实例的理解

实例是oracle存取oracle数据库的一种手段,任何时候实例和数据库是1对多的关系,只有1个实例,可以有1个和多个数据库。memory structure包含了3个必需的,包括共享池,数据库缓冲池,重做日志文件缓冲池。Background process包含了8个进程,6个必需,2个可选。

SQL> show sga

 

Total System Global Area  289406976 bytes

Fixed Size                  1248600 bytes

Variable Size              96469672 bytes

Database Buffers          188743680 bytes

Redo Buffers                2945024 bytes

 

SQL> select * from v$bgprocess where paddr<>'00';通过这个我们可以看到有效的后台进程。

在列 ERROR 前截断 (按要求)

 

 

PADDR      PSERIAL# NAME  DESCRIPTION

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

213471B4          1 PMON  process cleanup

213477A4          1 PSP0  process spawner 0

21347D94          1 MMAN  Memory Manager

21348384          1 DBW0  db writer process 0

21348974          1 LGWR  Redo etc.

21348F64          1 CKPT  checkpoint

21349554          1 SMON  System Monitor Process

21349B44          1 RECO  distributed recovery

2134A134          1 CJQ0  Job Queue Coordinator

2134C4D4         39 QMNC  AQ Coordinator

2134A724          1 MMON  Manageability Monitor Process

 

PADDR      PSERIAL# NAME  DESCRIPTION

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

2134AD14          1 MMNL  Manageability Monitor Process 2

 

已选择12行。

9、  Oracle数据库部分

3个必需的物理文件,另外蓝色是可选文件。

3类必需文件可能有多个,比如在线日志文件最少都有2个。

SQL> select * from v$controlfile;

 

STATUS  NAME

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

        C:/ORACLE/PRODUCT/10.2.0/ORADATA/ORCL/CONTROL01.CTL

        C:/ORACLE/PRODUCT/10.2.0/ORADATA/ORCL/CONTROL02.CTL

        C:/ORACLE/PRODUCT/10.2.0/ORADATA/ORCL/CONTROL03.CTL

 

SQL> select * from v$datafile;

 

     FILE# CREATION_CHANGE# CREATION_TIME         TS#     RFILE# STATUS  ENABLED    CHECKPOINT_TIM U

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

         1                9 30-8?  -05                        1 SYSTEM  READ WRITE 13-10? -09

         2           532340 30-8?  -05              1          2 ONLINE  READ WRITE 13-10? -09

         3             6100 30-8?  -05              2          3 ONLINE  READ WRITE 13-10? -09

         4             9769 30-8?  -05              4          4 ONLINE  READ WRITE 13-10? -09

         5           559920 24-7?  -09              6          5 ONLINE  READ WRITE 13-10? -09

 

SQL> select * from v$logfile;

 

    GROUP# STATUS  TYPE    MEMBER

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

         3         ONLINE  C:/ORACLE/PRODUCT/10.2.0/ORADATA/ORCL/REDO03.LOG

         2         ONLINE  C:/ORACLE/PRODUCT/10.2.0/ORADATA/ORCL/REDO02.LOG

         1         ONLINE  C:/ORACLE/PRODUCT/10.2.0/ORADATA/ORCL/REDO01.LOG

 

 

10、              SGA系统全局区域和PGA程序全局区作为内存结构,PGA包含的某个服务器进程,不能共享给其他资源,使用独占服务器模式和共享服务器模式MTS不同,PGA的信息是不一样的。SGA中还包含一些largepooljavapool

SQL> show parameter shared

 

NAME                                 TYPE        VALUE

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

hi_shared_memory_address             integer    

max_shared_servers                   integer

shared_memory_address                integer    

shared_pool_reserved_size            big integer 4404019

shared_pool_size                     big integer 0

shared_server_sessions               integer

shared_servers                       integer     1

 

SGA_SIZE

SQL> show parameter db_cache

 

NAME                                 TYPE        VALUE

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

db_cache_advice                      string      ON

db_cache_size                        big integer 0

 

SQL> show parameter log

 

NAME                                 TYPE        VALUE

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

db_create_online_log_dest_1          string

db_create_online_log_dest_2          string

db_create_online_log_dest_3          string

db_create_online_log_dest_4          string

db_create_online_log_dest_5          string

log_archive_config                   string

log_archive_dest                     string

log_archive_dest_1                   string

log_archive_dest_10                  string

log_archive_dest_2                   string

log_archive_dest_3                   string

 

NAME                                 TYPE        VALUE

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

log_archive_dest_4                   string

log_archive_dest_5                   string

log_archive_dest_6                   string

log_archive_dest_7                   string

log_archive_dest_8                   string

log_archive_dest_9                   string

log_archive_dest_state_1             string      enable

log_archive_dest_state_10            string      enable

log_archive_dest_state_2             string      enable

log_archive_dest_state_3             string      enable

log_archive_dest_state_4             string      enable

 

NAME                                 TYPE        VALUE

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

log_archive_dest_state_5             string      enable

log_archive_dest_state_6             string      enable

log_archive_dest_state_7             string      enable

log_archive_dest_state_8             string      enable

log_archive_dest_state_9             string      enable

log_archive_duplex_dest              string

log_archive_format                   string      ARC%S_%R.%T

log_archive_local_first              boolean     TRUE

log_archive_max_processes            integer     2

log_archive_min_succeed_dest         integer     1

log_archive_start                    boolean     FALSE

 

NAME                                 TYPE        VALUE

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

log_archive_trace                    integer    

log_buffer                           integer     2899456

log_checkpoint_interval              integer    

log_checkpoint_timeout               integer     1800

log_checkpoints_to_alert             boolean     FALSE

log_file_name_convert                string

logmnr_max_persistent_sessions       integer     1

remote_login_passwordfile            string      EXCLUSIVE

 

SGA_MAX_SIZE可以设定一个最大的内存区域,在这个范围内可以动态的调整。便于管理。

 

如果遇到?????????????不能显示,是语言的问题,使用alter session set nls_language=american

 

11、              Shared pool

共享池,可以使用alter system set shared_pool_size=64m;内有2个部分,库cache和数据字典cache,数据字典cache也叫行cachedictionary cache=row cache。主要作用是提高代码的共享。Lib cache的命中率达到99%。一般要求SQL在此执行,不要单独编译。它不可以直接定义,而是通过shared pool来定义

12、              数据字典cache,文件是否存在,用户权限,也可以改变内存中的响应时间。

13、              Database buffer cache 使用db-block-size,从9i开始使用指定的块大小,

SQL> show parameter db

 

NAME                                 TYPE        VALUE

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

db_16k_cache_size                    big integer 0

db_2k_cache_size                     big integer 0

db_32k_cache_size                    big integer 0

db_4k_cache_size                     big integer 0

db_8k_cache_size                     big integer 0

db_block_buffers                     integer    

db_block_checking                    string      FALSE

db_block_checksum                    string      TRUE

 

9i以前,需要使用db_block_buffers中指定。这个值是固定的,表示块的数量,而不是内存的大小,真正的内存的大小=内存数量×块的大小,从性能优化的角度有2个参数,一个db-keep-cache-size一个是db-recycle-cache-size,如果你不知道怎么设定,可以使用db-cache-advice来建议内存结构。

 

14、              Redo log buffer cache的作用是恢复,使用log-buffer来定义size,基于数据完整性原则,可以回滚掉电后的数据写入。

15、              Large pool 作为可选的部分SGA的结构之一,在什么情况下可以用到?比如used for memoryUGA),io slaves,备份恢复操作用得到

16、              Java pool,调用java程序的时候用得到。

17、              PGA针对服务器进程而保留的一个内存区域,根据配置的不同,独占还是共享,SGA也不同

共享:session information放在SGA

独占:session information不在SGA

18、              后台的进程中database writer (dbwn),对脏数据写到数据文件,LGWR把日志文件cache写到日志文件里面,写数据前先写日志,SMON在数据库重启的过程中实例打开,回滚,临时段的清空。PMON进程监控回滚被异常终止的情况,ckptcheckpoint实现同步的作用,arcn归档进程,在归档日志的模式下才能完成,归档进程可以自动备份在线日志。

19、              逻辑结构


原文链接: http://blog.csdn.net/jaminwm/article/details/4664557

你可能感兴趣的:(OCP第一课:Oracle Architectural Components)