【读书笔记】Expert Oracle Architecture (by Tom) (2)

Abstract: 这个读书笔记系列是关于Tom的大作《Expert Oracle Database Architecture》

 

TomBook 

 

 

Chapter 2: Architecture Overview

 

1. Oracle and Instance

Oracle: A collection of physical operating system files or disk.

Instance: background processes and SGA

A database may be mounted and opened by many instances. An instance may mount and open a single database at any point in time. In fact, it is true to say that an instance will mount and open at most a single database in its entire lifetime!

Rename “spfileorcl.ora” (under dbs folder) to “spfileorcl.ora1” and put the following parameter in the file “initorcl.ora” (under database folder) db_name = test

■Note On Windows, prior to running the startup command, you’ll need to execute a service creation statement using the oradim.exe utility.

clip_image002

clip_image004

clip_image006

An instance can mount and open at most one database in its life. We must discard this instance and create a new one in order to open this or any other database.

To recap,

• An instance is a set of background processes and shared memory.

• A database is a collection of data stored on disk.

• An instance can mount and open only a single database, ever.

• A database may be mounted and opened by one or more instances (using RAC).

A database may be accessible from many instances, but an instance will provide access to exactly one database at a time.

2. Dedicated Server

clip_image008

As noted, typically Oracle will create a new process for me when I log in. This is commonly referred to as the dedicated server configuration, since a server process will be dedicated to me for the life of my session. For each session, a new dedicated server will appear in a one-to-one mapping. This dedicated server process is not (by definition) part of the instance. My client process (whatever program is trying to connect to the database) will be in direct communication with this dedicated server over some networking conduit, such as a TCP/IP socket. It is this server process that will receive my SQL and execute it for me. It will read data files if necessary, and it will look in the database’s cache for my data. It will perform my update statements. It will run my PL/SQL code. Its only goal is to respond to the SQL calls that I submit to it.

3. Shared Server

clip_image010

As shown in Figure 2-3, the client connection will send a request to the dispatcher. The dispatcher will first place this request onto the request queue in the SGA (1). The first available shared server will dequeue this request (2) and process it. When the shared server completes, the response (return codes, data, and so on) is placed into the response queue (3), subsequently picked up by the dispatcher (4), and transmitted back to the client.

 

 

-- To Be Continued --

转载于:https://www.cnblogs.com/fangwenyu/archive/2009/10/25/1589406.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值