Oracle12c Centos7 创建,删除CDB与PDB

官方文档地址:https://docs.oracle.com/database/121/ADMIN/create.htm#ADMIN14032

创建CDB有两种方式:

 1:使用数据库配置助手(DBCA),一种图形工具。

 2:用CREATE DATABASESQL语句。

 

这里使用的是第二种SQL语句及命令创建CDB。

 

一:首先介绍一下各个目录, 用于存储各种需要修改删除的文件,及各种系统文件的存储:

   1.1:存储初始化,创建后参数及密码文件的目录

/u01/app/oracle/product/12.2.0.1/db_1/dbs

   init.ora 初始化参数文件, orapw密码文件。

 

 

 1.2:监听文件目录。

/u01/app/oracle/product/12.2.0.1/db_1/network/admin

 

1.3:基础目录

/u01/app/oracle/oradata

 

1. 4:用户目录。存储

/u01/app/oracle/admin

 

 

二: 现在开始创建步骤: 前提是装好了12c,  连12c都没装的, 先装12c,  用图形化安装的话默认有CDB和PDB的。

  2.1  准备工作:

         1:指定  sid, 创建的CDB名称

export ORACLE_SID=test

       2:修改sys口令验证方式,

            参考文档:https://m.aliyun.com/yunqi/articles/283328, http://blog.itpub.net/26736162/viewspace-2215659/

             oracle两种验证方式: 

                             1:操作系统验证,

                             2: 口令验证。

            oracle默认使用操作系统验证,这会导致在服务器不使用密码就能登录, 但是远程又连接不上,推荐使用口令验证。

 

           进入如下目录:

/u01/app/oracle/product/12.2.0.1/db_1/network/admin

     修改sqlnet.ora 

        

    加入或修改如下为如下内容后保存退出

口令登录
SQLNET.AUTHENTICATION_SERVICES = (NONE)


口令与操作系统登录
SQLNET.AUTHENTICATION_SERVICES = (ALL)

   进入如下目录:

/u01/app/oracle/product/12.2.0.1/db_1/dbs

 执行如下命令后, 该目录下会出现oraptest文件, 这里存储的是sys,system的登录口令,无法编辑的。

file:密码文件名称, password:密码, force:允许覆盖,format:避免检查密码长度
orapwd file=orapwtest password=orcl format=12 force=y

 

   3:准备初始化参数文件:

    进入如下目录, 执行如下操作:

进入目录
/u01/app/oracle/product/12.2.0.1/db_1/dbs

复制文件, init后跟CDB名称
cp init.ora inittest.ora


编辑该文件
vim inittest.ora

注意:如下目录及四个文件夹必须先创建, 而且用户和组必须是oracle:oinstall 或者 oracle:dba, 权限也必须是可读写。

 
 /u01/app/oracle/admin/test

修改文件夹用户和组
chown oracle:oinstall adump/
或者
chown oracle:dba adump/

加入如下脚本,  

db_name='TEST'    
memory_target=2G
processes = 150
db_block_size=8192
db_domain=''
diagnostic_dest='/u01/app/oracle'
dispatchers='(PROTOCOL=TCP) (SERVICE=testXDB)'
open_cursors=300 
remote_login_passwordfile='EXCLUSIVE'
undo_tablespace='undotbs1'
control_files='/u01/app/oracle/oradata/test/control01.ctl','/u01/app/oracle/oradata/test/control02.ctl'
compatible='12.2.0'
audit_file_dest='/u01/app/oracle/admin/test/adump'
audit_trail='db' 
nls_territory='CHINA'
nls_language='SIMPLIFIED CHINESE'
local_listener='LISTENER_TEST'
enable_pluggable_database=true
db_unique_name='test'

 

4:开始创建

root切换为oracle
su -l oracle



sqlplus /nolog


conn / as sysdba

创建spfile文件:

create spfile from pfile;

创建成功后,启动实例

SQL> startup nomount;
ORACLE instance started.

Total System Global Area 2147483648 bytes
Fixed Size                  2926472 bytes
Variable Size            1291847800 bytes
Database Buffers          838860800 bytes
Redo Buffers               13848576 bytes
SQL>

执行create database脚本:

 注意:目录及文件夹必须先创建, 而且用户和组必须是oracle:oinstall 或者 oracle:dba, 权限也必须是可读写。

create database test  --数据库名称
  user sys identified by orcl  --超管
  user system identified by orcl --超管
  logfile group 1 ('/oracle/app/oracle/admin/test/redo01a.log','/oracle/app/oracle/admin/test/redo01b.log') size 100m,
          group 2 ('/oracle/app/oracle/admin/test/redo02a.log','/oracle/app/oracle/admin/test/redo02b.log') size 100m, 
          group 3 ('/oracle/app/oracle/admin/test/redo03a.log','/oracle/app/oracle/admin/test/redo03b.log') size 100m
  maxloghistory 1
  maxlogfiles 16
  maxlogmembers 3
  maxdatafiles 1024
  character set al32utf8
  national character set utf8 
  extent management local
  datafile '/oracle/app/oracle/admin/test/system01.dbf' size 700m reuse autoextend on next 1G maxsize unlimited
  sysaux datafile '/oracle/app/oracle/admin/test/sysaux01.dbf' size 550m reuse autoextend on next 1G maxsize unlimited
  default tablespace users
    datafile '/oracle/app/oracle/admin/test/users01.dbf' size 500m reuse autoextend on maxsize unlimited
  default temporary tablespace tempts1
    tempfile '/oracle/app/oracle/admin/test/temp01.dbf' size 20m reuse autoextend on next 640k maxsize unlimited
  undo tablespace undotbs1
    datafile '/oracle/app/oracle/admin/test/undotbs01.dbf' size 200m reuse autoextend on next 5120k maxsize unlimited
  enable pluggable database
    seed --pdb名,系统默认,不要更改
    file_name_convert = ('/oracle/app/oracle/admin/test',
                         '/oracle/app/oracle/admin/test/pdb1')
    system datafiles size 125m autoextend on next 10m maxsize unlimited
    sysaux datafiles size 100m
    user_data tablespace usertbs
    datafile '/oracle/app/oracle/admin/test/pdb1/usertbs01.dbf' size 200m reuse autoextend on maxsize unlimited;

出现: Database  created则是创建成功了。

 

  5: 运行脚本

@?/rdbms/admin/catcdb.sql

@?/rdbms/admin/catalog.sql

@?/rdbms/admin/catproc.sql

@?/rdbms/admin/utlrp.sql 

@?/sqlplus/admin/pupbld.sql

 创建完成;

 show con_name;

select name, cdb from v$database;

SQL> select name, cdb from v$database;

NAME                        CDB
--------------------------- ---------
test                        YES

SQL>

 

6: 修改监听, 以便可以远程连接

进入如下目录:

/u01/app/oracle/product/12.2.0.1/db_1/network/admin

修改 listener.ora 文件:。保存退出。服务器端


LISTENER =
  (DESCRIPTION_LIST =
    (DESCRIPTION =
      (ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))
      (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))
    )
  )




SID_LIST_LISTENER =
(SID_LIST =
   (SID_DESC =
    (GLOBAL_DBNAME = test)
    (SID_NAME = test)
   )

)

 

修改:tnsnames.ora 文件为如下: 客户端。保存退出。

LISTENER_TEST =
  (ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))

TEST =
(DESCRIPTION =
   (ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))
   (CONNECT_DATA =
      (SERVER = DEDICATED)
      (SERVICE_NAME = test)
   )


)

 

修改: vim  /etc/oratab, 加入test,保存退出。

 

至此, 创建和配置完成。需要重启数据库。

监听停止与启动
/u01/app/oracle/product/12.2.0.1/db_1/bin/lsnrctl stop
/u01/app/oracle/product/12.2.0.1/db_1/bin/lsnrctl start

数据库停止与启动
/u01/app/oracle/product/12.2.0.1/db_1/bin/dbshut
/u01/app/oracle/product/12.2.0.1/db_1/bin/dbstart

 

创建PDB: https://blog.csdn.net/tang_jian_dong/article/details/95059918

 

pdb 创建后: 自动启动:

在根容器中输入如下命令:

CREATE OR REPLACE TRIGGER open_pdbs
  AFTER STARTUP ON DATABASE
BEGIN
  EXECUTE IMMEDIATE 'ALTER PLUGGABLE DATABASE ALL OPEN';
END open_pdbs;

 

重启后, 就可以自动启动pdb 了。

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值