且构网

分享程序员开发的那些事...
且构网 - 分享程序员编程开发的那些事

Oracle 11g 数据库启动和关闭

更新时间:2022-09-13 14:36:17

Oracles11数据库的启动状态

Oracle11g在启动的时候必须经过三个状态:NOMOUNT,MOUNT,OPEN。

NOMOUNT: 此状态下只打开数据库实例,读取参数文件。

MOUNT: 根据参数文件信息,打开控制文件。读取控制文件中的各种信息,如数据文件位置,日志文件路径,但是不打开数据文件。

OPEN:打开数据文件,并进行一系列的检查工作。


启动数据库:

1
2
3
4
[oracle@temp-test oracle]$ sqlplus /nolog
SQL> connect/as sysdba
Connected.
SQL> startup

此时显示数据库已经成功启动,进入open状态。

1
2
3
4
5
6
7
8
ORACLE instance started.
Total System Global Area 1586708480 bytes
Fixed Size    2213736 bytes
Variable Size  939526296 bytes
Database Buffers  637534208 bytes
Redo Buffers    7434240 bytes
Database mounted.
Database opened.

关闭数据库:

1
2
3
4
SQL> shutdown immediate;
Database closed.
Database dismounted.
ORACLE instance shut down.

关闭数据库和启动过程相反,也要依次进行三个动作,close, dismount, shut down。


如果要按顺序依次手动启动各个状态,使用如下命令:

1
2
3
SQL> startup nomount;
SQL> alter database mount;
SQL> alter database open;


数据库文件

数据库主要由数据文件、控制文件、重做日志文件。这些文件是数据库的核心。

数据文件(data files):数据文件包含数据库中的实际数据。是数据的最终存储位置。

控制文件(control files):包含维护数据库和验证数据库完整性的信息。它是二进制的文件。

重做日志文件(redo files):重做日志文件包含数据库发生变化的记录,在发生故障时用于数据恢复。

其他文件:

参数文件(parameter files):参数文件中定义了数据库实例的特性,分配的内存和缓冲区大小信息。

密码文件:授权用户启动和关闭数据库实例,存储用户名和密码。

归档日志文件:归档日志文件是日志文件的脱机备份,在发生故障后进行数据恢复可能使用该文件。


数据库参数设置

共享池(share pool)是缓存SQL代码的解析结果数据,包含库高速缓存(Libray cache)和数据字典高速缓存(Data dict cache)。

库高速缓存(Libray cache):存储了最近使用过的SQL和PL/SQL语句。

数据字典高速缓存(Data dict cache):存储了数据文件、表、索引、列、用户、权限信息。

这两个缓存区域的大小决定了数据库查询的响应时间,但是无法直接对其进行参数修改,只能通过调整共享池的大小来间接调整缓存区的大小。

设置共享池大小:

1
2
3
4
5
6
SQL> alter system set shared_pool_size=16m;
System altered.
SQL> show parameter shared_pool_size;
NAME     TYPE VALUE
------------------------------------ ----------- ------------------------------
shared_pool_size     big integer 16M


数据库高速缓冲区(Database buffer cache)存储了最近从数据文件读入的数据块信息或用户更改后需要写回数据库的数据信息。

Oracle 使用参数DB_BLOCK_SIZE和DB_BLOCK_BUFFERS设置数据库高速缓存的大小。二者的乘积为缓存的大小,DB_BLOCK_BUFFERS表示的是数据库的个数。

查询数据库块的大小,这里显示的值为8192B,即8KB:

1
2
3
4
SQL> show parameter db_block_size;
NAME     TYPE VALUE
------------------------------------ ----------- ------------------------------
db_block_size     integer 8192

查看数据库缓冲区信息:

1
2
3
4
5
6
SQL> show sga;
Total System Global Area 1586708480 bytes
Fixed Size    2213736 bytes
Variable Size  939526296 bytes
Database Buffers  637534208 bytes
Redo Buffers    7434240 bytes

SGA为数据库的自动管理。


 本文转自 酥心糖 51CTO博客,原文链接:http://blog.51cto.com/tryingstuff/1978758