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

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

2009-10-25 10:31 477 查看

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





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.





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

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

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