I will describe in this article what are the components of Oracle Instance architecture in detail.
You might have thought that you connect to a database but that is not entirely true. As a matter of fact, you connect to an instance via the listener. What is this listener? It is a process that listens for a connection requests. Its only job is to connect users with an instance. You can picture it as an operator. You call an operator and tell him that you want him to connect you with Joe Black. Once connected, the operator disconnects himself so you can directly talk with Joe Black with no “man in the middle”. The same does the listener – once the connection is established it leaves the line.
In order to establish a connection you need to know three key information:
- HOST – server name
- PORT – port that the listener is listening on (by default it is 1521)
- SERVICE_NAME / SID
After a successful connection, the listener will create a “Server process”. This process will then authenticate you (you have to have your username and password, obviously 🙂 ) and creates your session respectively. In this phase, the listener leaves the communication and the server process communicates with the application (user) directly.
Now, in the article Instance and Storage, I said, that there are two main parts of Instance: SGA and Processes. There are three main components in the SGA that you really need to understand. These are Shared Pool, Buffer Cache, and RedoLog buffer. I will elaborate on these in the next articles and demonstrate how SELECT, DML and DDL operations are handled and what is happening inside the instance.
Please have a look at the picture below to get the information about each component.