[Oracle19C 数据库管理] 启动和停止Oracle数据库

数据库启动的三个阶段

  • startup nomount
    数据库根据初始化文件启动实例,分配内存给系统全局区SGA,并启动所有的后台进程。
    打开alert log和trace file。
    这个阶段实例会启动,但数据库无法访问。在nomount阶段,主要是用来创建数据库,重建控制文件或者进行备份与还原操作。

  • alter database mount
    这个阶段实例会加载数据库,但还不真正打开它。实例根据初始化文件中指定的控制文件,读取数据文件和连接重做日志文件的名字和状态。进行文件的存在检查。
    在这个阶段可以进行重命名数据文件,启用或禁用联机重做日志的归档, 恢复数据库。

  • alter database open
    数据库实例打开数据文件,联机重做日志,检查数据库一致性。 所有用户可以访问数据库。

数据库关闭的四种模式

Abort 启动时必须进行数据库恢复。

PDB的四种状态

  • Open 全完启动
  • Open Read Only
  • Migrate
  • Mounted 关闭状态

启动关闭PDB

启动pdb
Alter pluggable database <pdb_name> open;
或者
Alter pluggable database all open;

关闭pdb
Alter pluggable database <pdb_name> close;
或者
Alter pluggable database all close;

PDB的Save state / discard state

默认PDB在数据库启动的时候都是Mount状态。可以使用Save State来保存PDB的状态,下次启动数据库时恢复成保存的状态。

Alter pluggable database <pdb_name> open;
Alter pluggable database <pdb_name> save state;
或者
Alter pluggable database all save state;
下次启动数据库,PDB自动就是open状态了。

Alter pluggable database <pdb_name> discard state;
或者
Alter pluggable database all discard state;
移除保存状态模式,下次启动数据库,PDB是默认的Mounted状态。

show con_name 显示当前容器名称

SQL> show con_name

CON_NAME
------------------------------
CDB$ROOT

V$PDBS视图查看PDB的状态。

SQL> select con_id, name, open_mode from v$pdbs;

    CON_ID NAME                           OPEN_MODE
---------- ------------------------------ ----------
         2 PDB$SEED                       READ ONLY
         3 PDB1                           READ WRITE

DBA_PDB_SAVED_STATES查看pdb保存的state。

SQL> SELECT con_id, con_name, state from dba_pdb_saved_states;

    CON_ID CON_NAME             STATE
---------- -------------------- --------------
         3 PDB1                 OPEN

posted on 2023-01-04 21:40  LeoZhangJing  阅读(1594)  评论(0编辑  收藏  举报

导航