文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

Oracle CDB管理实现多租户管理功能

2022-12-07 10:00

关注

CDB的管理

1.当前容器

通过SYS_CONTEXT命令来查看,

col con_id format a10

col con_name format a20

select sys_context('userenv','con_id') as con_id,sys_context('userenv','con_name') as

con_name from dual;

通过show 命令

[oracle@oracle-db-19c ~]$ sqlplus / as sysdba
SQL*Plus: Release 19.0.0.0.0 - Production on Wed Nov 30 11:07:06 2022
Version 19.3.0.0.0
Copyright (c) 1982, 2019, Oracle.  All rights reserved.
Connected to:
Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production
Version 19.3.0.0.0
SQL> col con_id format a10
SQL> col con_name format a20
SQL> select sys_context('userenv','con_id') as con_id,sys_context('userenv','con_name') as con_name from dual;
CON_ID     CON_NAME
---------- --------------------
1          CDB$ROOT
SQL> 
SQL> show con_name;
CON_NAME
------------------------------
CDB$ROOT
SQL> 
SQL> show pdbs;
    CON_ID CON_NAME                       OPEN MODE  RESTRICTED
---------- ------------------------------ ---------- ----------
         2 PDB$SEED                       READ ONLY  NO
         3 PDB1                           READ WRITE NO
         4 PDB2                           MOUNTED
         5 CNDBAPDB                       MOUNTED
         6 CNDBAPDB3                      MOUNTED
         7 CNDBAPDB2                      MOUNTED
         8 CNDBAPDB4_FRESH                READ ONLY  NO
SQL> alter session set container=PDB1;
Session altered.
SQL> show user;
USER is "SYS"
SQL> show con_name;
CON_NAME
------------------------------
PDB1
SQL> 

2.修改CDB的参数

[oracle@oracle-db-19c ~]$ 
[oracle@oracle-db-19c ~]$ sqlplus / as sysdba
SQL*Plus: Release 19.0.0.0.0 - Production on Wed Nov 30 11:26:54 2022
Version 19.3.0.0.0
Copyright (c) 1982, 2019, Oracle.  All rights reserved.
Connected to:
Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production
Version 19.3.0.0.0
SQL> col name for a20
SQL> select con_id,name,ispdb_modifiable from v$system_parameter where name='open_cursors';
    CON_ID NAME                 ISPDB
---------- -------------------- -----
         0 open_cursors         TRUE
SQL> set linesize 200
SQL> show parameter open_cursors;
NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
open_cursors                         integer     300
SQL> alter system set open_cursors = 301;
System altered.
SQL> show parameter open_cursors;
NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
open_cursors                         integer     301
SQL> alter session set container=PDB1;
Session altered.
SQL> show parameter open_cursors;
NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
open_cursors                         integer     301
SQL> 

3.修改PDB的参数

1.使用ALTER DATABASE 命令修改CDB的参数

(1) 修改CDB。当公共用户连接的是CDB root时,通过ALTER DATABASE 命令执行如下语句会修改整个CDB.

startup/recovery/logfile/controlfile/standbydatabase/instance/security/RENAME/GLOBAL_NAME/ENABLE LOCK CHANGE TRACKING/DISABLE LOCK CHANGE TRACKING

(2) 只修改CDB root 。当公共用户连接的是CDB root时,通过ALTER DATABASE 命令执行如下语句只修改CDB root

datafile/DEFAULT EDITION/DEFAULT TABLESPACE/ DEFAULT TEMPORARY TABLESPACE

(3) 修改一个或多个PDB。公共用户连接到CDB root时,可以通过ALTER PLUGGABLE DATABASE 语句修改PDB的打开状态(MOUNT/READ ONLY/READ WRITE),以及保存/忽略PDB的打开状态。

2.使用ALTER DATABASE命令修改CDB的UNDO模式

[oracle@oracle-db-19c ~]$ sqlplus / as sysdba
SQL*Plus: Release 19.0.0.0.0 - Production on Wed Nov 30 13:39:46 2022
Version 19.3.0.0.0
Copyright (c) 1982, 2019, Oracle.  All rights reserved.
Connected to:
Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production
Version 19.3.0.0.0
SQL> show user;
USER is "SYS"
SQL> show con_name;
CON_NAME
------------------------------
CDB$ROOT
SQL> col property_name for a30;
SQL> col property_value for a20;
SQL> select property_name,property_value from database_properties where property_name='LOCAL_UNDO_ENABLED';
PROPERTY_NAME                  PROPERTY_VALUE
------------------------------ --------------------
LOCAL_UNDO_ENABLED             TRUE
SQL> 

TRUE代表本地UNDO模式,FLASE代表共享UNDO模式。

(2)共享UNDO模式转换为本地UNDO模式的步骤如下:

关闭CDB,代码如下

shutdown immediate;

以UPGRADE方式启动CDB,代码如下:

STARTUP UPGRADE;

确认当前容器是CDB root,代码如下:

show con_name;

启动本地UNDO,代码

ALTER DATABASE LOCAL UNDO ON;

重启 CDB,正常打开,

SHUTDOWN IMMEDIATE;STARTUP;

(3) 本地UNDO模式转换为共享UNDO模式的步骤如下:

关闭CDB

shutdown immediate

以UPGRADE方式启动CDB,

STARTUP UPGRADE;

确认当前容器是CDB root,

SHOW CON_NAME

禁用本地UNDO

ALTER DATABASE LOCAL UNDO OFF

重启CDB,正常打开,

SHUTDOWN IMMEDIATE;STARTUP;

4.CDB和PDB参数保存位置说明

# CDB
SQL> 
SQL> show con_name;
CON_NAME
------------------------------
CDB$ROOT
SQL> show parameter spfile;
NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
spfile                               string      /u01/app/oracle/product/19.3.0
                                                 /dbhome_1/dbs/spfilecdb1.ora
SQL>
SQL> alter session set container=PDB1;
Session altered.
SQL> show parameter spfile;
NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
spfile                               string      /u01/app/oracle/product/19.3.0
                                                 /dbhome_1/dbs/spfilecdb1.ora
SQL> alter session set container=cdb$root;
Session altered.
SQL>

CDB Fleet特性

Fleet就是一个逻辑的CDB集合。其中,Lead CDB 是CDB Fleet中用于监控和管理其它CDB的。

在CDB Fleet中,可以通过以下方式来访问CDB和PDB中的数据:

配置CDB FLEET环境

1.设置Lead CDB ,通过以下命令启动该特性:

# 启动 LEAD CDB
SQL> 
SQL> alter database set lead_cdb = true;
Database altered.
SQL> select property_value from database_properties where property_name='LEAD_CDB';
PROPERTY_VALUE
--------------------
TRUE
SQL> 

管理PDB

管理PDB和管理普通的Non-CDB一样,可以管理表空间、数据文件、临时文件和用户对象等。

在系统级别修改PDB

到此这篇关于Oracle CDB管理实现多租户管理功能的文章就介绍到这了,更多相关Oracle CDB管理内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     807人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     351人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     314人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     433人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     221人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-数据库
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯