oracle12c创建方式,Oracle 12c 手动创建CDB

使用create database创建CDB的具体操作如下:

1.指定实例标识(SID)

ORACLE_SID环境变量被用来区分不同的实例。

1.决定实例的唯一标识SID

2.打开命令窗口

3.设置ORACLE_SID环境变量

在Unix/Linux下设置ORACLE_SID环境变量如下:

export ORACLE_SID=mynewdb

setenv ORACLE_SID=mynewdb

在Windows下设置ORACLE_SID环境变量如下:

set ORACLE_SID=mynewdb

2.确保所需的环境变量被设置

依赖于平台,在启动SQL*Plus之后,可能需要设置相关的环境变量,或者验证相关的设置。例如,在大多数平台中,ORACLE_SID与ORACLE_HOME必须设置。另外,建议PATH环境变量包含ORACLE_HOME/bin目录。在Unix/Linux平

台中,必须手动设置这些环境变量。在Windows平台中,OUI会自动设置ORACLE_HOME与ORACLE_SID。如果在安装期间不创建数据库,OUI不会设置ORACLE_SID,并且在之后创建数据库时必须要设置ORACLE_SID环境变量。

3.选择数据库管理员审核方法

为了创建数据库,用户必须被审核并且被授予相关的系统权限。审核方法有以下两种:

.使用密码文件

.使用操作系统审核

4.创建初始化参数文件

当Oracle实例启动时,它将读取初始化参数文件。这个参数文件可以是文本文件可以使用文本编辑器进行编辑,或者是二进制文件,可以由数据库进行动态修改。二进制参数文件也叫服务器参数文件。对于这一步操作,可以先创建一个文本参数文件,之后通过文本参数文件来创建服务器参数文件。

5.创建实例只限于Windows平台

对于Windows平台,在连接实例之前,必须手动创建实例。ORADIM命令就是用来创建新实例,其语法如下:oradim -NEW -SID sid -STARTMODE MANUAL -PFILE file.注意在创建新实例时,不要将-STARTMODE参数指定为AUTO,因为这会造成新实例启动与mount数据库,而这时数据库是不存在的。

6.连接实例

启动SQL*Plus并且使用有sysdba权限的用户连接到数据库实例。

.使用密码文件进行审核,输入以下命令并输入sys用户的密码

$sqlplus /nolog

SQL>connect sys as sysdba

.使用操作系统审核,输入以下命令

$sqlplus /nolog

SQL>conn / as sysdba

7.创建服务器参数文件

服务器参数文件能通过alter system命令来修改参数,并且这种修改会永久生效。可以通过文本参数文件来创建服务器参数文件。

8.启动实例

启动实例但不mount数据库执行以下命令

startup nomount

9.使用create database语句来创建CDB

当使用create database语句来创建CDB时,必须在操作CDB之前完成额外的操作。这些操作包含对数据字典表创建视图,安装标准的PL/SQL包。执行catcdb.sql脚本。

使用create database语句来创建语句需要注意

9.1 将enable_pluggable_database参数设置为true。在CDB中,db_name参数指定root的名称。将SID设置为root名称是常见的做法。这个名称最多有30个字符。

9.2使用create database语句来创建新的CDB。

9.2.1 不使用OMF来创建CDB

9.2.2 使用OMF来创建CDB

不使用OMF来创建CDB

下面的例子将介绍如何不使用OMF功能来创建CDB

1.设置SID

[root@jytest3 ~]# su - oracle

Last login: Fri Aug 4 15:07:33 CST 2017

[oracle@jytest3 ~]$ cd $ORACLE_HOME/dbs

[oracle@jytest3 dbs]$ export ORACLE_SID=test

2.创建密码文件

[oracle@jytest3 dbs]$ orapwd file=$ORACLE_HOME/dbs/orapwtest password=abcdefg format=12.2 entries=20

3.创建初始化参数

[oracle@jytest3 dbs]$ vi inittest.ora

db_name='test'

memory_target=4G

memory_max_target=4G

control_files='+data/test/controlfile/testcdb/control01.ctl','+data/test/controlfile/testcdb/control02.ctl'

enable_pluggable_database=true

4.启动实例但不mount

[oracle@jytest3 dbs]$ export ORACLE_SID=test

[oracle@jytest3 dbs]$ sqlplus / as sysdba

SQL*Plus: Release 12.2.0.1.0 Production on Fri Aug 4 20:59:37 2017

Copyright (c) 1982, 2016, Oracle. All rights reserved.

Connected to an idle instance.

SQL> startup pfile='$ORACLE_HOME/dbs/inittest.ora' nomount

ORACLE instance started.

Total System Global Area 4294967296 bytes

Fixed Size 8628936 bytes

Variable Size 2315257144 bytes

Database Buffers 1962934272 bytes

Redo Buffers 8146944 bytes

5.执行create database语句来创建CDB

下面的语句将创建一个名为test的CDB数据库。这个名字与参数文件中的db_name同名。并且满足以下条件:

.已经设置control_files参数

.创建了+data/test/datafile/testcdb目录

.创建了+data/test/datafile/pdbseed目录

.创建了+data/test/onlinelog/testcdb目录

为了创建包含root与CDB seed的CDB库在create database语句中包含了enable pluggable database子句。在这个例子还包含了seed file_name_convert子句来指定CDB seed文件的文件名与目录。

SQL> create database test

2 user sys identified by xxzx_7817600

3 user system identified by xxzx_7817600

4 logfile group 1 ('+data/test/onlinelog/testcdb/redo01.log')

5 size 100m blocksize 512,

6 group 2 ('+data/test/onlinelog/testcdb/redo02.log')

7 size 100m blocksize 512,

8 group 3 ('+data/test/onlinelog/testcdb/redo03.log')

9 size 100m blocksize 512

10 maxloghistory 1

11 maxlogfiles 16

12 maxlogmembers 3

13 maxdatafiles 1024

14 character set al32utf8

15 national character set al16utf16

16 extent management local

17 datafile '+data/test/datafile/testcdb/system01.dbf'

18 size 700m reuse autoextend on next 10240k maxsize unlimited

19 sysaux datafile '+data/test/datafile/testcdb/sysaux01.dbf'

20 size 550m reuse autoextend on next 10240k maxsize unlimited

21 default tablespace deftbs

22 datafile '+data/test/datafile/testcdb/deftbs01.dbf'

23 size 500m reuse autoextend on maxsize unlimited

24 default temporary tablespace tempts1

25 tempfile '+data/test/datafile/testcdb/temp01.dbf'

26 size 20m reuse autoextend on next 640k maxsize unlimited

27 undo tablespace undotbs1

28 datafile '+data/test/datafile/testcdb/undotbs01.dbf'

29 size 200m reuse autoextend on next 5120k maxsize unlimited

30 enable pluggable database

31 seed file_name_convert = ('+data/test/datafile/testcdb/','+data/test/datafile/pdbseed/')

32 local undo on;

Database created.

6.执行脚本$ORACLE_HOME/rdbms/admin/catcdb.sql

SQL> @$ORACLE_HOME/rdbms/admin/catcdb.sql

SQL>

SQL> Rem The script relies on the caller to have connected to the DB

SQL>

SQL> Rem This script invokes catcdb.pl that does all the work, so we just need to

SQL> Rem construct strings for $ORACLE_HOME/rdbms/admin and

SQL> Rem $ORACLE_HOME/rdbms/admin/catcdb.pl

SQL>

SQL> Rem $ORACLE_HOME

SQL> column oracle_home new_value oracle_home noprint

SQL> select sys_context('userenv', 'oracle_home') as oracle_home from dual;

SQL>

SQL> Rem OS-dependent slash

SQL> column slash new_value slash noprint

SQL> select sys_context('userenv', 'platform_slash') as slash from dual;

SQL>

SQL> Rem $ORACLE_HOME/rdbms/admin

SQL> column rdbms_admin new_value rdbms_admin noprint

SQL> select '&&oracle_home'||'&&slash'||'rdbms'||'&&slash'||'admin' as rdbms_admin from dual;

old 1: select '&&oracle_home'||'&&slash'||'rdbms'||'&&slash'||'admin' as rdbms_admin from dual

new 1: select '/u01/app/oracle/product/12.2.0/db'||'/'||'rdbms'||'/'||'admin' as rdbms_admin from dual

SQL>

SQL> Rem $ORACLE_HOME/rdbms/admin/catcdb.pl

SQL> column rdbms_admin_catcdb new_value rdbms_admin_catcdb noprint

SQL> select '&&rdbms_admin'||'&&slash'||'catcdb.pl' as rdbms_admin_catcdb from dual;

old 1: select '&&rdbms_admin'||'&&slash'||'catcdb.pl' as rdbms_admin_catcdb from dual

new 1: select '/u01/app/oracle/product/12.2.0/db/rdbms/admin'||'/'||'catcdb.pl' as rdbms_admin_catcdb from dual

SQL>

SQL> host perl -I &&rdbms_admin &&rdbms_admin_catcdb --logDirectory &&1 --logFilename &&2

Enter value for 1:

Enter value for 2:

Can't locate Term/ReadKey.pm in @INC (you may need to install the Term::ReadKey module) (@INC contains: /u01/app/oracle/product/12.2.0/db/rdbms/admin /usr/lib/perl5/site_perl/5.22.0/x86_64-linux /usr/lib/perl5/site_perl/5.22.0 /usr/lib/perl5/5.22.0/x86_64-linux /usr/lib/perl5/5.22.0 .) at /u01/app/oracle/product/12.2.0/db/rdbms/admin/catcdb.pl line 30.

BEGIN failed--compilation aborted at /u01/app/oracle/product/12.2.0/db/rdbms/admin/catcdb.pl line 30.

对于这种错误参考了杨建荣的解决方法,抛出的错误提示找不到ReadKey.pm,Linux,Unix其实都是自带Perl的,但这里需要的文件在$ORACLE_HOME下的Perl目录,只需要把这个目录引用到PATH变量中就可以了,比如:

export PATH=$PATH:$ORACLE_HOME/OPatch:$ORACLE_HOME/perl/bin:$ORACLE_HOME/jdk/bin

[oracle@jytest3 dbs]$ export PATH=$PATH:$ORACLE_HOME/OPatch:$ORACLE_HOME/perl/bin:$ORACLE_HOME/jdk/bin

[oracle@jytest3 dbs]$ export ORACLE_SID=test

[oracle@jytest3 dbs]$ sqlplus / as sysdba

SQL*Plus: Release 12.2.0.1.0 Production on Fri Aug 4 22:12:56 2017

Copyright (c) 1982, 2016, Oracle. All rights reserved.

Connected to:

Oracle Database 12c Enterprise Edition Release 12.2.0.1.0 - 64bit Production

SQL> @$ORACLE_HOME/rdbms/admin/catcdb.sql

SQL>

SQL> Rem The script relies on the caller to have connected to the DB

SQL>

SQL> Rem This script invokes catcdb.pl that does all the work, so we just need to

SQL> Rem construct strings for $ORACLE_HOME/rdbms/admin and

SQL> Rem $ORACLE_HOME/rdbms/admin/catcdb.pl

SQL>

SQL> Rem $ORACLE_HOME

SQL> column oracle_home new_value oracle_home noprint

SQL> select sys_context('userenv', 'oracle_home') as oracle_home from dual;

SQL>

SQL> Rem OS-dependent slash

SQL> column slash new_value slash noprint

SQL> select sys_context('userenv', 'platform_slash') as slash from dual;

SQL>

SQL> Rem $ORACLE_HOME/rdbms/admin

SQL> column rdbms_admin new_value rdbms_admin noprint

SQL> select '&&oracle_home'||'&&slash'||'rdbms'||'&&slash'||'admin' as rdbms_admin from dual;

old 1: select '&&oracle_home'||'&&slash'||'rdbms'||'&&slash'||'admin' as rdbms_admin from dual

new 1: select '/u01/app/oracle/product/12.2.0/db'||'/'||'rdbms'||'/'||'admin' as rdbms_admin from dual

SQL>

SQL> Rem $ORACLE_HOME/rdbms/admin/catcdb.pl

SQL> column rdbms_admin_catcdb new_value rdbms_admin_catcdb noprint

SQL> select '&&rdbms_admin'||'&&slash'||'catcdb.pl' as rdbms_admin_catcdb from dual;

old 1: select '&&rdbms_admin'||'&&slash'||'catcdb.pl' as rdbms_admin_catcdb from dual

new 1: select '/u01/app/oracle/product/12.2.0/db/rdbms/admin'||'/'||'catcdb.pl' as rdbms_admin_catcdb from dual

SQL>

SQL> host perl -I &&rdbms_admin &&rdbms_admin_catcdb --logDirectory &&1 --logFilename &&2

Enter value for 1:

Enter value for 2:

Can't locate util.pm in @INC (you may need to install the util module) (@INC contains: /u01/app/oracle/product/12.2.0/db/rdbms/admin /u01/app/oracle/product/12.2.0/db/perl/lib/site_perl/5.22.0/x86_64-linux-thread-multi /u01/app/oracle/product/12.2.0/db/perl/lib/site_perl/5.22.0 /u01/app/oracle/product/12.2.0/db/perl/lib/5.22.0/x86_64-linux-thread-multi /u01/app/oracle/product/12.2.0/db/perl/lib/5.22.0 .) at /u01/app/oracle/product/12.2.0/db/rdbms/admin/catcdb.pl line 35.

BEGIN failed--compilation aborted at /u01/app/oracle/product/12.2.0/db/rdbms/admin/catcdb.pl line 35.

这个问题把util改为Util

[oracle@jytest3 ~]$ find $ORACLE_HOME -name util.pm | wc -l

0

[oracle@jytest3 ~]$ find $ORACLE_HOME -name Util.pm | wc -l

5

[oracle@jytest3 ~]$ find $ORACLE_HOME -name Util.pm

/u01/app/oracle/product/12.2.0/db/perl/lib/5.22.0/x86_64-linux-thread-multi/Hash/Util.pm

/u01/app/oracle/product/12.2.0/db/perl/lib/5.22.0/x86_64-linux-thread-multi/List/Util.pm

/u01/app/oracle/product/12.2.0/db/perl/lib/5.22.0/x86_64-linux-thread-multi/Scalar/Util.pm

/u01/app/oracle/product/12.2.0/db/perl/lib/5.22.0/x86_64-linux-thread-multi/Sub/Util.pm

/u01/app/oracle/product/12.2.0/db/perl/lib/site_perl/5.22.0/HTTP/Headers/Util.pm

这个过程中到底该选哪个目录下的Util.pm呢,如果多点耐心仔细看看里面的内容还是能够找到一些头绪的,最后选择的是:

/u01/app/oracle/product/12.2.0/db/perl/lib/5.22.0/x86_64-linux-thread-multi/Hash/Util.pm

需要手工修改catcdb.pl脚本

那么问题来了,这个catcdb.pl脚本是不是要改动呢。修改文件catcdb.pl,把下面的util修改为Util

use Term::ReadKey; # to not echo password

use Getopt::Long;

use Cwd;

use File::Spec;

use Data::Dumper;

use Utilqw(trim, splitToArray);

use catcon qw(catconSqlplus);

再来一轮测试,结果发现还是会有报错,这种尝试会让你开始怀疑自己的选择到底是不是正确的方向。如果还是没有找到,说明在当前的环境变量中没有匹配到相关的内容,我们需要直接切换到目录Hash下,然后运行脚本才可以,这个时候输出才算有了改观,提示你输入密码。

[oracle@jytest3 Hash]$ sqlplus / as sysdba

SQL*Plus: Release 12.2.0.1.0 Production on Fri Aug 4 22:25:23 2017

Copyright (c) 1982, 2016, Oracle. All rights reserved.

Connected to:

Oracle Database 12c Enterprise Edition Release 12.2.0.1.0 - 64bit Production

SQL> @$ORACLE_HOME/rdbms/admin/catcdb.sql

SQL> Rem

SQL> Rem $Header: rdbms/admin/catcdb.sql /main/7 2016/06/23 11:38:38 akruglik Exp $

SQL> Rem

SQL> Rem catcdb.sql

SQL> Rem

SQL> Rem Copyright (c) 2013, 2016, Oracle and/or its affiliates.

SQL> Rem All rights reserved.

SQL> Rem

SQL> Rem NAME

SQL> Rem catcdb.sql -

SQL> Rem

SQL> Rem DESCRIPTION

SQL> Rem invoke catcdb.pl

SQL> Rem

SQL> Rem NOTES

SQL> Rem

SQL> Rem

SQL> Rem PARAMETERS:

SQL> Rem - log directory

SQL> Rem - base for log file name

SQL> Rem

SQL> Rem MODIFIED (MM/DD/YY)

SQL> Rem akruglik 06/21/16 - Bug 22752041: pass --logDirectory and

SQL> Rem --logFilename to catcdb.pl

SQL> Rem akruglik 11/10/15 - use catcdb.pl to collect passowrds and pass them

SQL> Rem on to catcdb_int.sql using env vars

SQL> Rem aketkar 04/30/14 - remove SQL file metadata

SQL> Rem cxie 08/16/13 - remove SQL_PHASE

SQL> Rem cxie 07/10/13 - 17033183: add shipped_file metadata

SQL> Rem cxie 03/19/13 - create CDB with all options installed

SQL> Rem cxie 03/19/13 - Created

SQL> Rem

SQL>

SQL> set echo on

SQL>

SQL> Rem The script relies on the caller to have connected to the DB

SQL>

SQL> Rem This script invokes catcdb.pl that does all the work, so we just need to

SQL> Rem construct strings for $ORACLE_HOME/rdbms/admin and

SQL> Rem $ORACLE_HOME/rdbms/admin/catcdb.pl

SQL>

SQL> Rem $ORACLE_HOME

SQL> column oracle_home new_value oracle_home noprint

SQL> select sys_context('userenv', 'oracle_home') as oracle_home from dual;

SQL>

SQL> Rem OS-dependent slash

SQL> column slash new_value slash noprint

SQL> select sys_context('userenv', 'platform_slash') as slash from dual;

SQL>

SQL> Rem $ORACLE_HOME/rdbms/admin

SQL> column rdbms_admin new_value rdbms_admin noprint

SQL> select '&&oracle_home'||'&&slash'||'rdbms'||'&&slash'||'admin' as rdbms_admin from dual;

old 1: select '&&oracle_home'||'&&slash'||'rdbms'||'&&slash'||'admin' as rdbms_admin from dual

new 1: select '/u01/app/oracle/product/12.2.0/db'||'/'||'rdbms'||'/'||'admin' as rdbms_admin from dual

SQL>

SQL> Rem $ORACLE_HOME/rdbms/admin/catcdb.pl

SQL> column rdbms_admin_catcdb new_value rdbms_admin_catcdb noprint

SQL> select '&&rdbms_admin'||'&&slash'||'catcdb.pl' as rdbms_admin_catcdb from dual;

old 1: select '&&rdbms_admin'||'&&slash'||'catcdb.pl' as rdbms_admin_catcdb from dual

new 1: select '/u01/app/oracle/product/12.2.0/db/rdbms/admin'||'/'||'catcdb.pl' as rdbms_admin_catcdb from dual

SQL>

SQL> host perl -I &&rdbms_admin &&rdbms_admin_catcdb --logDirectory &&1 --logFilename &&2

Enter new password for SYS: xxzx_7817600

Enter new password for SYSTEM: xxzx_7817600

Enter temporary tablespace name: tempts1

No options to container mapping specified, no options will be installed in any containers

catcon: ALL catcon-related output will be written to [/u01/app/oracle/product/12.2.0/db/rdbms/log/catalog_catcon_27898.lst]

catcon: See [/u01/app/oracle/product/12.2.0/db/rdbms/log/catalog*.log] files for output generated by scripts

catcon: See [/u01/app/oracle/product/12.2.0/db/rdbms/log/catalog_*.lst] files for spool files, if any

catcon.pl: completed successfully

catcon: ALL catcon-related output will be written to [/u01/app/oracle/product/12.2.0/db/rdbms/log/catproc_catcon_3352.lst]

catcon: See [/u01/app/oracle/product/12.2.0/db/rdbms/log/catproc*.log] files for output generated by scripts

catcon: See [/u01/app/oracle/product/12.2.0/db/rdbms/log/catproc_*.lst] files for spool files, if any

catcon.pl: completed successfully

catcon: ALL catcon-related output will be written to [/u01/app/oracle/product/12.2.0/db/rdbms/log/catoctk_catcon_9051.lst]

catcon: See [/u01/app/oracle/product/12.2.0/db/rdbms/log/catoctk*.log] files for output generated by scripts

catcon: See [/u01/app/oracle/product/12.2.0/db/rdbms/log/catoctk_*.lst] files for spool files, if any

catcon.pl: completed successfully

catcon: ALL catcon-related output will be written to [/u01/app/oracle/product/12.2.0/db/rdbms/log/owminst_catcon_9233.lst]

catcon: See [/u01/app/oracle/product/12.2.0/db/rdbms/log/owminst*.log] files for output generated by scripts

catcon: See [/u01/app/oracle/product/12.2.0/db/rdbms/log/owminst_*.lst] files for spool files, if any

catcon.pl: completed successfully

catcon: ALL catcon-related output will be written to [/u01/app/oracle/product/12.2.0/db/rdbms/log/pupbld_catcon_11572.lst]

catcon: See [/u01/app/oracle/product/12.2.0/db/rdbms/log/pupbld*.log] files for output generated by scripts

catcon: See [/u01/app/oracle/product/12.2.0/db/rdbms/log/pupbld_*.lst] files for spool files, if any

catcon.pl: completed successfully

catcon: ALL catcon-related output will be written to [/u01/app/oracle/product/12.2.0/db/rdbms/log/pupbld_catcon_11761.lst]

catcon: See [/u01/app/oracle/product/12.2.0/db/rdbms/log/pupbld*.log] files for output generated by scripts

catcon: See [/u01/app/oracle/product/12.2.0/db/rdbms/log/pupbld_*.lst] files for spool files, if any

validate_script_path: sqlplus script /u01/app/oracle/product/12.2.0/db/sqlplus/admin/help/hlpbld does not exist or is unreadable

catconExec: empty Path returned by validate_script_path for

SrcDir = /u01/app/oracle/product/12.2.0/db/sqlplus/admin/help, FileName = hlpbld

catcon.pl: Unexpected error encountered in catconExec; exiting

exec_DB_script: /u01/app/oracle/product/12.2.0/db/rdbms/log/pupbld_catcon_11761_exec_DB_script.done did not need to be deleted before running a script

exec_DB_script: opened Reader and Writer

exec_DB_script: connected

exec_DB_script: executed set echo on

exec_DB_script: executed @@/u01/app/oracle/product/12.2.0/db/rdbms/log/pupbld_catcon_kill_sess_11761_ALL.sql

exec_DB_script: sent

host sqlplus -v > /u01/app/oracle/product/12.2.0/db/rdbms/log/pupbld_catcon_11761_exec_DB_script.done to Writer

exec_DB_script: sent -exit- to Writer

exec_DB_script: closed Writer

exec_DB_script: marker was undefined; read and ignore output, if any

exec_DB_script: finished reading and ignoring output

exec_DB_script: waiting for child process to exit

exec_DB_script: child process exited

sureunlink: unlink(/u01/app/oracle/product/12.2.0/db/rdbms/log/pupbld_catcon_11761_exec_DB_script.done) succeeded after 1 attempt(s)

sureunlink: verify that the file really no longer exists

sureunlink: confirmed that /u01/app/oracle/product/12.2.0/db/rdbms/log/pupbld_catcon_11761_exec_DB_script.done no longer exists after 1 attempts

exec_DB_script: deleted /u01/app/oracle/product/12.2.0/db/rdbms/log/pupbld_catcon_11761_exec_DB_script.done after running a script

exec_DB_script: closed Reader

exec_DB_script: waitpid returned

kill_sqlplus_sessions: output produced in exec_DB_script [

SQL*Plus: Release 12.2.0.1.0 Production on Sat Aug 5 00:30:52 2017

Copyright (c) 1982, 2016, Oracle. All rights reserved.

SQL> Connected.

SQL> SQL> SQL>

SQL> ALTER SYSTEM KILL SESSION '78,1729' force timeout 0 -- process 11802

2 /

System altered.

SQL>

SQL> SQL>

SQL> Disconnected from Oracle Database 12c Enterprise Edition Release 12.2.0.1.0 - 64bit Production

] end of output produced in exec_DB_script

catcon: ALL catcon-related output will be written to [/u01/app/oracle/product/12.2.0/db/rdbms/log/catclust_catcon_11824.lst]

catcon: See [/u01/app/oracle/product/12.2.0/db/rdbms/log/catclust*.log] files for output generated by scripts

catcon: See [/u01/app/oracle/product/12.2.0/db/rdbms/log/catclust_*.lst] files for spool files, if any

catcon.pl: completed successfully

catcon: ALL catcon-related output will be written to [/u01/app/oracle/product/12.2.0/db/rdbms/log/catfinal_catcon_12430.lst]

catcon: See [/u01/app/oracle/product/12.2.0/db/rdbms/log/catfinal*.log] files for output generated by scripts

catcon: See [/u01/app/oracle/product/12.2.0/db/rdbms/log/catfinal_*.lst] files for spool files, if any

catcon.pl: completed successfully

catcon: ALL catcon-related output will be written to [/u01/app/oracle/product/12.2.0/db/rdbms/log/catbundleapply_catcon_12604.lst]

catcon: See [/u01/app/oracle/product/12.2.0/db/rdbms/log/catbundleapply*.log] files for output generated by scripts

catcon: See [/u01/app/oracle/product/12.2.0/db/rdbms/log/catbundleapply_*.lst] files for spool files, if any

catcon.pl: completed successfully

catcon: ALL catcon-related output will be written to [/u01/app/oracle/product/12.2.0/db/rdbms/log/utlrp_catcon_12789.lst]

catcon: See [/u01/app/oracle/product/12.2.0/db/rdbms/log/utlrp*.log] files for output generated by scripts

catcon: See [/u01/app/oracle/product/12.2.0/db/rdbms/log/utlrp_*.lst] files for spool files, if any

catcon.pl: completed successfully

使用OMF来创建CDB

下面的例子将介绍如何使用OMF功能来创建CDB

1.设置SID

[root@jytest3 ~]# su - oracle

Last login: Fri Aug 4 15:07:33 CST 2017

[oracle@jytest3 ~]$ cd $ORACLE_HOME/dbs

[oracle@jytest3 dbs]$ export ORACLE_SID=cs

2.创建密码文件

[oracle@jytest3 dbs]$ orapwd file=$ORACLE_HOME/dbs/orapwcs password=xxzx_7817600 format=12.2 entries=20

3.创建初始化参数

[oracle@jytest3 dbs]$ vi inittest.ora

db_name='cs'

memory_target=4G

memory_max_target=4G

control_files='+data/cs/controlfile/control01.ctl','+data/cs/controlfile/control02.ctl'

enable_pluggable_database=true

db_create_file_dest=+data

4.启动实例但不mount

[oracle@jytest3 dbs]$ export ORACLE_SID=cs

[oracle@jytest3 dbs]$ sqlplus / as sysdba

SQL*Plus: Release 12.2.0.1.0 Production on Fri Aug 4 20:59:37 2017

Copyright (c) 1982, 2016, Oracle. All rights reserved.

Connected to an idle instance.

SQL> startup pfile='$ORACLE_HOME/dbs/initcs.ora' nomount

ORACLE instance started.

Total System Global Area 4294967296 bytes

Fixed Size 8628936 bytes

Variable Size 2315257144 bytes

Database Buffers 1962934272 bytes

Redo Buffers 8146944 bytes

5.执行create database语句来创建CDB

下面的语句将创建一个名为cs的CDB数据库。这个名字与参数文件中的db_name同名。为了创建包含root与CDB seed的CDB库在create database语句中包含了enable pluggable database子句。在这个例子还包含了

seed tablespace datafiles子句来指定CDB seed文件的文件名与目录。

SQL> create database cs

2 user sys identified by xxzx_7817600

3 user system identified by xxzx_7817600

4 extent management local

5 default tablespace users

6 default temporary tablespace temp

7 undo tablespace undotbs1

8 enable pluggable database

9 seed

10 system datafiles size 125m autoextend on next 10m maxsize unlimited

11 sysaux datafiles size 100m;

Database created.

6.执行脚本$ORACLE_HOME/rdbms/admin/catcdb.sql

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值