oracle19c安装教程 linux,非Oracle Linux下Oracle 19c CDB数据库安装

本文档详细介绍了如何在非Oracle Linux系统上安装Oracle 19c数据库,并通过修改安装脚本来创建一个CDB。首先,你需要修改脚本中的SID、监听器名称和CREATE_AS_CDB参数。然后,创建相应的配置文件,更改端口、数据文件路径和EM端口。最后,执行脚本以配置和创建CDB,其中包括一个PDB。如果你需要调整system表空间的数据文件大小,可以在模板文件中进行修改。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

《非Oracle Linux下安装Oracle 19c》我们安装了non-cdb的19c数据库,通过这个脚本,还可以搭建cdb的数据库。

1. 修改安装脚本

cp /etc/init.d/oracledb_ORCLCDB-19c /etc/init.d/oracledb_pdbisal-19c

其中要改几处,ORACLE_SID改成新的,LISTENER_NAME改成新的,CREATE_AS_CDB之前我写的false,要改为true,

vi oracledb_bisal-pdb19cexport ORACLE_VERSION=19cexport ORACLE_SID=PDBISALexport TEMPLATE_NAME=General_Purpose.dbcexport CHARSET=AL32UTF8export PDB_NAME=BISALPDB1export LISTENER_NAME=PDBLISTENERexport NUMBER_OF_PDBS=1export CREATE_AS_CDB=true# General exports and varsexport PATH=$ORACLE_HOME/bin:$PATHLSNR=$ORACLE_HOME/bin/lsnrctlSQLPLUS=$ORACLE_HOME/bin/sqlplusDBCA=$ORACLE_HOME/bin/dbcaNETCA=$ORACLE_HOME/bin/netcaORACLE_OWNER=oracleRETVAL=0CONFIG_NAME="oracledb_$ORACLE_SID-$ORACLE_VERSION.conf"CONFIGURATION="/etc/sysconfig/$CONFIG_NAME"...

需要关注的就是,脚本执行的时候,会读取配置文件,文件名是拼接出来的,“oracledb_$ORACLE_SID-$ORACLE_VERSION.conf”,因此接下来,需要创建对应的配置文件。

2. 创建配置文件

配置文件的名称,要和(1)引用的相同,

cp /etc/sysconfig/oracledb_BISAL-19c.conf /etc/sysconfig/oracledb_PDBISAL-19c.conf

其中要改三处,端口号改为1522(因为我是同机装),数据文件的路径,可以指定不同的,EM端口(默认5500)可以改为5600,

vi oracledb_PDBISAL-19c.conf#This is a configuration file to setup the Oracle Database.#It is used when running '/etc/init.d/oracledb_ORCLCDB configure'.#Please use this file to modify the default listener port and the#Oracle data location.# LISTENER_PORT: Database listenerLISTENER_PORT=1522# ORACLE_DATA_LOCATION: Database oradata locationORACLE_DATA_LOCATION=/opt/oracle/pdboradata# EM_EXPRESS_PORT: Oracle EM Express listenerEM_EXPRESS_PORT=5600

3. 执行安装

root执行,大约几十分钟,

[root@bisal init.d]# ./oracledb_bisal-pdb19c configureConfiguring Oracle Database PDBISAL.Prepare for db operation8% completeCopying database files31% completeCreating and starting Oracle instance32% complete36% complete40% complete43% complete46% completeCompleting Database Creation51% complete54% completeCreating Pluggable Databases58% complete77% completeExecuting Post Configuration Actions100% completeDatabase creation complete. For details check the logfiles at:/opt/oracle/cfgtoollogs/dbca/PDBISAL.Database Information:Global Database Name:PDBISALSystem Identifier(SID):PDBISALLook at the log file "/opt/oracle/cfgtoollogs/dbca/PDBISAL/PDBISAL.log" for further details.Database configuration completed successfully. The passwords were auto generated, you must change them by connecting to the database using 'sqlplus / as sysdba' as the oracle user.

此时创建了CDB的数据库,

SQL> select cdb from v$database;CDB---YES

除了种子PDB(只读),另外有个PDB名称是BISALPDB1,

SQL> show pdbs;CON_ID CON_NAME OPEN MODE RESTRICTED---------- ------------------------------ ---------- ----------2 PDB$SEED READ ONLY NO3 BISALPDB1 READ WRITE NO

我们看下数据文件的结构,

e86f083792c0082593eba73fea0e6efa.png

BISALPDB1的目录结构,

f95c8b36b6a59ecf47aab519b04e0017.png

pdbseed的目录结构,

860fe601b7b66eb0d07b61a886fabfa8.png

但是有个疑问,从oracledb_bisal-pdb19c脚本中能看到他用的dbca静默方式创建的数据库,如果我需要改system表空间数据文件的初始化大小,应该改什么文件?

$SU -s /bin/bash $ORACLE_OWNER -c "$DBCA -silent -createDatabase -gdbName $ORACLE_SID -templateName $TEMPLATE_NAME-characterSet $CHARSET -createAsContainerDatabase $CREATE_AS_CDB -numberOfPDBs $NUMBER_OF_PDBS -pdbName $PDB_NAME-createListener $LISTENER_NAME:$LISTENER_PORT -datafileDestination $ORACLE_DATA_LOCATION -sid $ORACLE_SID-autoGeneratePasswords -emConfiguration DBEXPRESS -emExpressPort $EM_EXPRESS_PORT"

从脚本中,看到他引用了这个文件,

export TEMPLATE_NAME=General_Purpose.dbc-templateName $TEMPLATE_NAME

搜索一下,

[root@bisal /]# find . -name General_Purpose.dbc./opt/oracle/product/19c/dbhome_1/assistants/dbca/templates/General_Purpose.dbc

原来这个文件中,定义了数据文件相关的信息,如果改了红框内标记的数据表空间信息,执行安装的时候,就可以改数据文件的大小了,

1a2394ecae2077fda73d6bb85c1d08ae.png

初次尝试cdb、pdb,有待继续摸索。

近期更新的文章:

文章分类和索引:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值