RPM 包直接安装26ai ee 本地企业安装版

上一期https://blog.csdn.net/sharpwt/article/details/157650337?spm=1011.2415.3001.10575&sharefrom=mp_manage_link已经进行26ai下载和环境准备,此次Oracle 26ai 直接使用预安装 RPM和数据库核心 RPM,Preinstall RPM 安装会自动完成预配置(如补全依赖、更新内核参数)。

使用RPM 包名oracle-ai-database-ee-26ai-1.0-1.el9.x86_64.rpm,一键安装适配生产需求做配置configure修改。无需手动执行 runInstaller或OUI安装。

前提准备

  1. 已完成环境准备
  2. 服务器可访问 Oracle 官方 YUM 源(离线环境需手动下载 RPM 包上传至服务器,如/root/)。

默认方式 :在线 RPM 安装(推荐,自动下载依赖)

所有步骤以root 用户执行,脚本可直接复制。

步骤 1:安装 Oracle 26ai 预安装 RPM 包(oracle-database-preinstall-26ai)

该包是 Oracle 官方提供的自动化预配置工具,会自动补全遗漏依赖、校验内核参数、更新资源限制,与手动配置互补:

#安装26ai预安装RPM包

dnf -y install oracle-ai-database-preinstall-26ai-1.0-0.1.el9.x86_64.rpm

TIPS:若提示 “未找到包”,确认oracle linux的yum源已启用。

步骤 2:安装 oracle-ai-database-ee-26ai RPM 包
dnf -y install oracle-ai-database-ee-26ai-1.0-1.el9.x86_64.rpm
#或进入RPM所在目录
cd /root/
#先安装预安装包(通用环境已补全依赖,直接安装)
rpm -ivh oracle-database-preinstall-26ai-1.0-1.el9.x86_64.rpm
#安装26ai OP版核心RPM包(自动配置Oracle Home至官方路径)
rpm -ivh oracle-ai-database-ee-26ai-1.0-1.x86_64.rpm

安装过程:约 5-10 分钟(取决于网络速度),RPM 会自动将 Oracle Home 配置到/opt/oracle/product/26ai/dbhome_1

(注意,需要和.bash_profile环境准备中的目录一致)

步骤 3:执行 26ai RPM 配置脚本(初始化 Oracle Home)

RPM 安装完成后,执行官方配置脚本,完成 oraInventory 注册、Oracle Home 权限配置、默认监听(LISTENER)初始化:

[root@ol26ai ~]# rpm -Uvh oracle-ai-database-ee-26ai-1.0-1.el9.x86_64.rpm

Verifying... ################################# [100%]

Preparing... ################################# [100%]

Updating / installing...

1:oracle-ai-database-ee-26ai-1.0-1 ################################# [100%]

[INFO] Executing post installation scripts...

[INFO] Oracle home installed successfully and ready to be configured.

To configure a sample Oracle AI Database, optionally modify the parameters in '/etc/sysconfig/oracledb_ORCLCDB-26ai.conf' and then run following service configuration script as root: /etc/init.d/oracledb_ORCLCDB-26ai configure

rpm包安装后,将默认产生SID为ORCLCDB,路径为/opt/oracle,同时默认产生configure配置文件为:

/etc/sysconfig/oracledb_ORCLCDB-26ai.conf。

在rpm安装完毕后用命令调用完成初始化示例和监听的任务,/etc/init.d/oracledb_ORCLCDB-26ai configure

[root@ol26ai ~]# /etc/init.d/oracledb_ORCLCDB-26ai configure
/opt/oracle/product/26ai/dbhome_1/bin/dbca -silent -createDatabase -gdbName ORCLCDB -templateName General_Purpose.dbc -characterSet AL32UTF8 -createAsContainerDatabase true -numberOfPDBs 1 -pdbName ORCLPDB1 -createListener LISTENER:1521 -datafileDestination /opt/oracle/oradata -sid ORCLCDB -autoGeneratePasswords
Configuring Oracle AI Database ORCLCDB.
Prepare for db operation
8% complete
Copying database files
31% complete
Creating and starting Oracle instance
32% complete
36% complete
39% complete
42% complete
46% complete
Completing Database Creation
51% complete
53% complete
54% complete
Creating Pluggable Databases
58% complete
77% complete
Executing Post Configuration Actions
100% complete
Database creation complete. For details check the logfiles at:
 /opt/oracle/cfgtoollogs/dbca/ORCLCDB.
Database Information:
Global Database Name:ORCLCDB
System Identifier(SID):ORCLCDB
Look at the log file "/opt/oracle/cfgtoollogs/dbca/ORCLCDB/ORCLCDB.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.

预期结果:脚本执行完毕,输出Oracle Database 26ai configured successfully,无报错。

TIPS:

/etc/init.d/oracledb_ORCLCDB-26ai 的脚本中默认设置

DB defaults

export ORACLE_HOME=/opt/oracle/product/26ai/dbhome_1

export ORACLE_SID=ORCLCDB

export TEMPLATE_NAME=General_Purpose.dbc

export PDB_NAME=ORCLPDB1

export LISTENER_NAME=LISTENER

export NUMBER_OF_PDBS=1

export CREATE_AS_CDB=true

General exports and vars

export PATH=$ORACLE_HOME/bin:$PATH

LSNR=$ORACLE_HOME/bin/lsnrctl

SQLPLUS=$ORACLE_HOME/bin/sqlplus

DBCA=$ORACLE_HOME/bin/dbca

NETCA=$ORACLE_HOME/bin/netca

ORACLE_OWNER=oracle

RETVAL=0

CONFIG_NAME="oracledb_$ORACLE_SID-26ai.conf"

CONFIGURATION="/etc/sysconfig/$CONFIG_NAME"

1.rpm安装默认的ORACLE_SID是ORCLCDB,

即使在环境准备的过程中在oracle用户下的.bash_profile配置需要设置的ORACLE_SID,比如有些教程在。oracl用户下设置的SID是DEVCDB,RPM包安装后默认的依然是ORCLCDB

2.rpm安装默认的程序路径:

/opt/oracle/product/26ai/dbhome_1/

生产模式-修正脚本核心思路

  1. 默认问题:configure 脚本默认使用内置的测试级参数(默认 SID、小内存、禁用归档、弱密码、默认 PDB 名),且路径 / 实例名与 .bash_profile 不一致;
  2. 生产关键配置:匹配自定义的 DEVCDB SID/ORACLE_BASE/HOME + 生产必开归档模式 + 合理内存分配 + 规范 PDB 名 + 强密码 + 禁用无用的 EM 组件 + 匹配 AL32UTF8 字符集;
  3. 修改默认方案:创建 /etc/sysconfig/oracle-database-26ai/DEVCDB.conf 自定义配置文件(文件名与 SID 一致,Oracle 官方规范),所有生产参数写入该文件,configure 脚本会自动识别并执行。

按照环境准备的步骤中已经在oracle用户下创建.bash_profile

#切换到oracle用户
su - oracle
#写入环境变量到.bash_profile
cat >> ~/.bash_profile << EOF
#Oracle 26ai Environment Variables
export ORACLE_BASE=/u01/app/oracle
export ORACLE_HOME=/opt/oracle/product/26ai/dbhome_1
export ORACLE_SID=DEVCDB  # 数据库实例名
export ORACLE_UNQNAME=DEVCDB
export PATH=\$ORACLE_HOME/bin:\$ORACLE_HOME/OPatch:\$PATH
export LD_LIBRARY_PATH=\$ORACLE_HOME/lib:/usr/lib64:\$LD_LIBRARY_PATH
export NLS_LANG=AMERICAN_AMERICA.AL32UTF8  # 字符集,CDB建议默认
export EDITOR=vim
EOF

生产-修改rpm默认配置的提前准备

mkdir -p /u01
mkdir -p /u01/oracle/oradata
#设置目录属主和权限
chown -R oracle:oinstall /u01
chown -R oracle:oinstall /u01/oracle/oradata
chmod -R 775 /u01
#验证目录
ls -ld /u01 /u01/oracle/oradata
--
su - oracle
vi .bash_profile

export ORACLE_BASE=/opt/oracle
export ORACLE_HOME=/opt/oracle/product/26ai/dbhome_1
export ORACLE_SID=DEVCDB  # 根据实际创建的SID修改
export PATH=$ORACLE_HOME/bin:$PATH
--
cp /etc/sysconfig/oracledb_ORCLCDB-26ai.conf /etc/sysconfig/oracledb_DEVCDB-26ai.conf
cp /etc/init.d/oracledb_ORCLCDB-26ai /etc/init.d/oracledb_DEVCDB-26ai

mv /etc/sysconfig/oracledb_ORCLCDB-26ai.conf /etc/sysconfig/oracledb_ORCLCDB-26ai.conf.bak
vi /etc/sysconfig/oracledb_DEVCDB-26ai.conf
修改1:对应的conf和init.d中rpm升成的默认配置文件备份,修改文本文件的名称,此次用DEVCDB
修改2:/etc/sysconfig/oracledb_DEVCDB-26ai.conf中的ORACLE_DATA_LOCATION路径
[root@ol26ai u01]# cat /etc/sysconfig/oracledb_DEVCDB-26ai.conf
#This is a configuration file to setup the Oracle AI 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 listener
LISTENER_PORT=1521

# Character set of the database
CHARSET=AL32UTF8

# ORACLE_DATA_LOCATION: Database oradata location
#ORACLE_DATA_LOCATION=/opt/oracle/oradata
ORACLE_DATA_LOCATION=/u01/app/oradata
# Configure TDE
CONFIGURE_TDE=false

# Encrypt Tablespaces list, Leave empty for user tablespace alone or provide ALL for encrypting all tablespaces
# For specific tablespaces use SYSTEM:true,SYSAUX:false
修改3:/etc/init.d/oracledb_DEVCDB-26ai中的SID和UNIQUE_NAME
#省略
# DB defaults
export ORACLE_HOME=/opt/oracle/product/26ai/dbhome_1
export ORACLE_SID=DEVCDB
export TEMPLATE_NAME=General_Purpose.dbc
export PDB_NAME=PDB1
export LISTENER_NAME=LISTENER
export NUMBER_OF_PDBS=1
export CREATE_AS_CDB=true

# General exports and vars
export PATH=$ORACLE_HOME/bin:$PATH
LSNR=$ORACLE_HOME/bin/lsnrctl
SQLPLUS=$ORACLE_HOME/bin/sqlplus
DBCA=$ORACLE_HOME/bin/dbca
NETCA=$ORACLE_HOME/bin/netca
ORACLE_OWNER=oracle
RETVAL=0
CONFIG_NAME="oracledb_$ORACLE_SID-26ai.conf"
CONFIGURATION="/etc/sysconfig/$CONFIG_NAME"
#省略
运行结果

为什么不直接修改 /etc/init.d/oracledb_$SID-26ai 脚本,强烈推荐cp备份后,修改生产需要
生产环境不推荐直接修改系统自带的 init 脚本,原因如下:
  1. 补丁覆盖:后续执行 Oracle 26ai 补丁 / 升级时,该脚本会被官方包覆盖,你的自定义修改全部丢失;
  2. 无溯源性:直接改脚本无配置文件溯源,后续维护人员无法快速找到参数配置点;
  3. 报错风险:脚本内有大量逻辑判断,手动修改易导致语法错误,使 configure/ 启停命令失效;
  4. 不符合官方规范:Oracle 官方为 RPM 版提供了专属的配置文件目录,这是推荐的持久化、可维护配置方式。

生产环境-校验(确保匹配环境变量)

切换到 oracle 用户,验证 configure 脚本的配置与你的 .bash_profile 完全一致,无冲突:

切换到oracle用户
su - oracle
1. 验证环境变量是否生效
echo "ORACLE_BASE: $ORACLE_BASE, ORACLE_HOME: $ORACLE_HOME, SID: $ORACLE_SID"
2. 验证configure创建的目录/文件是否匹配
ls -ld $ORACLE_HOME $ORACLE_BASE/oradata/DEVCDB
3. 验证归档目录是否创建(生产必验)
ls -ld $ORACLE_BASE/oradata/arch/DEVCDB
4. 验证监听配置是否匹配SID
lsnrctl status | grep DEVCDB

Logo

有“AI”的1024 = 2048,欢迎大家加入2048 AI社区

更多推荐