Oracle 数据库 12 c 中介绍了多租户选项允许单个容器数据库 (CDB) 来承载多个单独的可插拔数据库 (PDB)。
下面我们一起来启动和关闭容器数据库 (CDB) 和可插拔数据库 (PDB)。

一、启动与关闭 cdb、pdbs 数据库

说明:对于CDB,启动和关闭与之前传统的方式一样。

1. 启动 CDB
启动和关闭的容器数据库和以前版本的常规实例相同。使用SQL*Plus STARTUP和SHUTDOWN命令,必须以特权用户身份连接到CDB。
一些典型用法如下所示。
--12c数据库创建完成后,默认情况下使用sqlplus / as sysdba  登录连接的是CDB。
[oracle@12c01 ~]$ sqlplus / as sysdba
SQL>startup;
SQL> select name,cdb,open_mode from v$database;

NAME                 CDB OPEN_MODE
-------------------- --- --------------------
ANDYCDB              YES READ WRITE
SQL> show pdbs

CON_ID CON_NAME  OPEN MODE  RESTRICTED
---------- ------------------------------ ---------- ----------
2 PDB$SEED  READ ONLY  NO
3 PDB01  MOUNTED
在CDB 启动之,PDB 是自动启动到mount状态,而不是OPEN。 所以我们还需要手工去open它

2. 关闭CDB,也会把PDB 关闭掉
SQL>select con_id, dbid, guid, name , open_mode from v$pdbs;
SQL>shutdown;

二、 启动与关闭可插接式数据库 (PDB)

3. 启动 PDB
特权用户使用 SQL*PLUS 命令或ALTER PLUGGABLE DATABASE命令可以启动和停止可插拔的数据库。
SQL> show pdbs

CON_ID CON_NAME                       OPEN MODE  RESTRICTED
---------- ------------------------------ ---------- ----------
         2 PDB$SEED                       READ ONLY  NO
         3 PDB01                          MOUNTED
SQL> alter session set container=pdb01;

Session altered.

SQL> alter pluggable database pdb01 open;

Pluggable database altered.

SQL> show pdbs

CON_ID CON_NAME                       OPEN MODE  RESTRICTED
---------- ------------------------------ ---------- ----------
         3 PDB01                          READ WRITE NO
启动到其他状态:
ALTER PLUGGABLE DATABASE OPEN READ ONLY FORCE;
ALTER PLUGGABLE DATABASE CLOSE IMMEDIATE;

4. 关闭 PDB
SQL> alter pluggable database pdb01 close immediate;

Pluggable database altered.

扩展:
1.启动或者关闭一个或多个 PDB,指定的名称为一个以逗号分隔的列表。
ALTER PLUGGABLE DATABASE pdb1,pdb2 OPEN READ ONLY FORCE;
ALTER PLUGGABLE DATABASE pdb1,pdb2 CLOSE IMMEDIATE;
2.启动或者关闭 all pdbs
ALTER PLUGGABLE DATABASE ALL OPEN;
ALTER PLUGGABLE DATABASE ALL CLOSE IMMEDIATE;
3.排除某些pdbs不启动,启动所有为排除的。
ALTER PLUGGABLE DATABASE ALL EXCEPT pdb1 OPEN;
ALTER PLUGGABLE DATABASE ALL EXCEPT pdb1 CLOSE IMMEDIATE;

三、可插接式数据库(PDB) 自动启动

默认情况下,在CDB 启动的时候,all 的PDB 都是mount状态。我们可以通过触发器来实现pdbs随cdb自动启动
[oracle@12c01 ~]$ sqlplus / as sysdba
SQL> show con_name

CON_NAME
------------------------------
CDB$ROOT
SQL>
CREATE OR REPLACE TRIGGER open_pdbs
AFTER STARTUP ON DATABASE
BEGIN
EXECUTE IMMEDIATE 'ALTER PLUGGABLE DATABASE ALL OPEN';
END open_pdbs;
/
 
Trigger created.

验证 PDB 自动启动:
SQL> startup;
SQL> show pdbs

CON_ID CON_NAME  OPEN MODE  RESTRICTED
---------- ------------------------------ ---------- ----------
2 PDB$SEED  READ ONLY  NO
3 PDB01  READ WRITE NO

Oracle12c多租户如何启动关闭CDB或PDB (PDB自动启动)的更多相关文章

  1. Oracle12c多租户如何连接到CDB或PDB、CDB与PDB容器切换

    Oracle 数据库 12 c 多租户选项允许单个容器数据库 (CDB) 来承载多个单独的可插拔数据库 (PDB).那么我们如何连接到容器数据库 (CDB) 和可插拔数据库 (PDB). 1. V$S ...

  2. Mongodb 启动关闭脚本并设置开机自动启动Mongodb

    配置文件内容:[root@yoon etc]# cat mongod.conf logpath=/export/log/mongodb.loglogappend=truefork = truedbpa ...

  3. Oracle12c多租户CDB 与 PDB 参数文件位置探讨、查询 CDB 与 PDB 不同值的参数

    一. Oracle12c多租户CDB 与 PDB 参数文件位置CDB的参数文件依然使用12c以前的SPIFLE,pdb的参数文件不会出现在SPFILE中,而是直接从CDB中继承,如果PDB中有priv ...

  4. 11g与12c启动,关闭RAC

    oracle11g 关闭,启动顺序 1.关闭数据库(oracle)srvctl stop database -d rac 2.关闭集群(root)crsctl stop cluster -all 3. ...

  5. 启动/关闭oracle服务有三种方式

    启动oracle服务有三种方式: 1 从控制面板 2 使用MS-DOS命令 3 通过Oracle Administration Assistant for WindowsNT -通过控制面板启动ora ...

  6. Oracle 服务手动启动关闭

    在windows7中安装完Oracle11g之后会出现一下七种服务:可通过运行->services.msc查看. 其中各个服务名称中的ORCL或orcl为SID即System IDentifie ...

  7. 转载“启动\关闭Oracle数据库的多种方法”--来自百度#Oracle

    启动\关闭Oracle数据库的多种方法 启动和关闭oracle有很多种方法. 这里只给出3种方法: l         Sql*plus l         OEM控制台 l         Wind ...

  8. Spark Streaming揭秘 Day23 启动关闭源码图解

    Spark Streaming揭秘 Day23 启动关闭源码图解 今天主要分析一下SparkStreaming的启动和关闭过程. 从Demo程序出发,主要聚焦在两段代码: 启动代码: 关闭代码: 启动 ...

  9. Linux下chkconfig命令详解即添加服务以及两种方式启动关闭系统服务

    The command chkconfig is no longer available in Ubuntu.The equivalent command to chkconfig is update ...

随机推荐

  1. c# 怎么更改DataTable 中某列的值?

    DataColumns dc = td.Columns["你的列"]; int inx = dc.Ordinal;td.Columns.Remove(dc);dc.DefaultV ...

  2. 小米4s经常断网

    https://zhidao.baidu.com/question/1387985910554061020.html

  3. 6.1-AliasRegistry

    AliasRegistry //AliasRegistry package org.springframework.core; /** * Common interface for managing ...

  4. 数据处理 数据入数据库 与 Excel

    Python  数据处理   中间数据 Excel   团队交流分工   低的沟通成本    数据入数据库 如postgresql

  5. js跨浏览器复制: ZeroClipboard

    实例结构: demo.html <script type="text/javascript" src='http://code.jquery.com/jquery.js'&g ...

  6. php的json_encode不兼容JSON_UNESCAPED_UNICODE

    //php的json_encode不兼容JSON_UNESCAPED_UNICODE的解决方案 function _json_encode($value) { if (version_compare( ...

  7. ASP-AJAX-分页格式

    HTML: <html> <head> <title>Mazey</title> <meta name="description&quo ...

  8. linux c编程:Posix消息队列

    Posix消息队列可以认为是一个消息链表. 有足够写权限的线程可以往队列中放置消息, 有足够读权限的线程可以从队列中取走消息 在某个进程往一个队列写入消息前, 并不需要另外某个进程在该队列上等待消息的 ...

  9. bug-5——(js)indexOf()

    indexOf()方法可返回某个指定的字符串值在字符串中首次出现的位置. ①对大小写敏感 ②如果要检索的字符串值没有出现,则该方法返回-1. ③位置时从0开始的 $j(this).html().ind ...

  10. 使用JSTL在页面前的空行怎么去除?

    解决的方法是:在每个JSP的头上加上一段代码   <%@ page trimDirectiveWhitespaces="true" %>