ITPub博客

首页 > Linux操作系统 > Linux操作系统 > 【转载】数据库的创建、启动和关闭

【转载】数据库的创建、启动和关闭

原创 Linux操作系统 作者:klamm0 时间:2009-11-09 10:55:50 0 删除 编辑

要创建一个数据库,必须按照正确的顺序执行下列步骤:

  1. 创建一个参数文件和一个口令文件。
  2. 使用创建的参数文件在内存中构建一个实例。
  3. 执行 CREATE DATABASE 命令,执行结果将至少生成一个控制文件、两个联机重做日志文件、用于 SYSTEM 和 SYSAUX 表空间的两个数据文件以及一个数据字典。
  4. 运行 SQL 脚本生成数据字典视图与补充的 PL/SQL 程序包。
  5. 运行 SQL 脚本 生成 Enterprise Manager Database Control 以及该数据库需要的任何选项(如 Java)。
在 Windows 系统中,因为 Oracle 作为一种 Windows 服务运行,所以还存在一个额外步骤。Oracle 通过提供实用程序 ORADIM.EXE 来帮助构建该服务。
 
严格来说,我们并不是启动或停止一个数据库:实例可以被启动和停止;数据库可以被加载和打开,随后还可以被卸载和关闭。
需要记住的是,实例与数据库是分离的实体,它们能够相互独立存在。因此,数据库的启动进程是分阶段的:首先,在内存中构建实例;接着,通过加载数据库来支持与数据库的连接;最后,打开数据库以供使用。在上述任何阶段,数据库具有下列4种状态的一种状态:SHUTDOWN/NOMOUNT/MOUNT/OPEN。
数据库处于SHUTDOWN模式时,与数据库相关的所有文件都被关闭,同时实例并不存在。在NOMOUNT模式中,实例被构建在内存中(SGA已被创建,根据参数文件的指定启动某些后台进程),但是并没有连接任何数据库,这种情况下数据库不存在时的确可能出现。在MOUNT模式中,实例定位并读取数据库控制文件。在OPEN模式中,所有数据库文件都被定位和打开,并且终端用户能够使用数据库。
数据库的启动进程分为3个阶段,只要执行startup命令,就会依次完成这些阶段。我们可以在中途停止启动进程。
数据库的关闭顺序应当与数据库的启动顺序相反。在有序关闭数据期间,数据库首先被关闭,然后被卸载,最后实例被停止。在数据库关闭阶段,所有的会话都会被停止:活动的事物通过PMON进程被回滚,已完成的事物通过DBWn进程被转储至磁盘,同时数据文件和重做日志文件被关闭。在数据库卸载阶段,控制文件被关闭。随后,通过解除分配SGA和终止后台进程,实例被停止。
shutdown命令可以使用下列选项:
shutdiwn [ normal | transactional | immediate | abort ]
normal:这是默认选项。使用该选项时,不许可任何新的用户连接,但是允许继续当前的所有连接。只有所有用户(自愿地)退出登录时,数据库才能真正关闭。
transactional:使用这个选项时,不许可任何新的用户连接,没有存在于某个事务中的现有会话会被终止,允许当前位于某个事物中的会话在完成该事物之后终止。一旦所有会话终止,数据库就会被关闭。
immediate:使用这个选项时,不许可任何新的用户连接,当前的所有连接的会话都被终止。任何活动的事物都将回滚,随后数据库会被关闭。
abort:就 Oracle 而言,使用这个选项相当于断电。实例被立即终止。此时,任何数据都不会被写入磁盘,任何文件句柄都不会被关闭,同时也不会采用任何有序的方式终止正在进行的事物。
normal、transactional、immediate关闭模式通常被称为干净的,一致的,有序的关闭。在所有会话终止之后,PMON进程会回滚任何未结束的事物。接下来,CKPT进程发布一个检查点,从而促使DBWn进程将所有被更新的数据从数据库高速缓冲区写入数据文件。同时LGWR进程也将仍然存在于内存当中的所有变化矢量转储至日志文件。随后,文件头被更新,文件句柄会被关闭。这意味着数据库处于一致的状态:所有已提交的事物都位于数据文件中,不存在需要回滚的、被挂起的未提交事物,并且所有数据文件和日志文件同步。
abort模式通常被称为无序的关闭,并且回使数据库处于不一致的状态:因为已提交的事物只存在于内存中,而DBWn进程还未将它们写入数据文件,所以这些事物极有可能丢失。同样地,数据文件中的未提交事物也可能尚未回滚。数据库出现讹误的定义如下:可能丢失了已提交的事物,也可能存储了未提交的事物。这些讹误必须通过实例恢复来修复。这种模式类似于数据库运行期间数据库服务器断电或重启的情况。

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/22786751/viewspace-618394/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2009-10-30

  • 博文量
    58
  • 访问量
    58090