一、Oracle Database 23ai 发布

2024年5月2日, Oracle Database 23ai正式发布!
新闻链接:https://www.oracle.com/cn/news/announcement/oracle-announces-availability-database-23ai-with-ai-vector-search-2024-05-02/

2024年5月2日, Oracle Database 23ai正式发布!在过去四年中,Oracle数据库开发部门一直在努力研发Oracle 数据库的下一个长期支持版本,重点是AI和开发人员的工作效率。鉴于此版本数据库中对AI的关注,Oracle Database 23c更名为Oracle Database 23ai。
Oracle Database 23ai 专注于三个关键领域:
- AI for Data
- 数据开发
- 数据关键任务
Oracle Database 23ai现已在Oracle Exadata Cloud@Customer、OCI Exadata数据库服务和OCI基础数据库服务上推出。Azure Oracle数据库服务中也有提供。对于开发人员,Oracle Database 23ai现在可在Always Free自治数据库中使用,也可以在 Autonomous Database 23ai Container Image和Oracle Database 23ai Free中下载。Oracle GoldenGate 23ai和GoldenGate 23ai 免费版也可供下载。Oracle Database 23ai for Linux (OL & RHEL 8/9)和Windows 的本地部署版本将很快推出,其他平台将在未来几个月内推出。有关详细信息,请查看Oracle Support说明文档 ID 742060.1。
Oracle Database 23ai有超过300+新功能,详细介绍请关注Oracle官方博客:https://blogs.oracle.com/database/post/oracle-23ai-now-generally-available
二、下载 Oracle Database 23ai Free
下载Oracle Database 23ai
https://www.oracle.com/database/free/get-started
本次主要下载下面两个安装包:
oracle-database-preinstall-23ai-1.0-2.el8.x86_64.rpm
oracle-database-free-23ai-1.0-1.el8.x86_64.rpm
下载Autonomous Database 23ai 容器镜像
https://www.oracle.com/autonomous-database/free-trial/#free-container-image
三、安装过程
1、环境准备
| 主机名 | ip地址 | 操作系统 | 内存 | cpu |
|---|---|---|---|---|
| oracle23c | 192.168.100.136 | CentOS Stream 8 | 4G | 1个双核,x86-64 |
2、安装Oracle Database 23ai软件
官方安装文档:https://docs.oracle.com/en/database/oracle/oracle-database/23/install.html
2.1 安装oracle-database-preinstall-23ai-1.0-2.el8.x86_64.rpm包
Oracle数据库Preinstallation RPM包自动创建了oracle安装用户和组。它也设置了数据库安装需要的内核参数。
--root用户安装
[root@oracle23c ~]# cd /opt
[root@oracle23c opt]# yum install -y oracle-database-pre*.rpm
CentOS Stream 8 - AppStream 9.3 MB/s | 28 MB 00:03
CentOS Stream 8 - BaseOS 5.4 MB/s | 10 MB 00:01
CentOS Stream 8 - Extras 44 kB/s | 18 kB 00:00
CentOS Stream 8 - Extras common packages 12 kB/s | 7.7 kB 00:00
Dependencies resolved.
=============================================================================================================================================================
Package Architecture Version Repository Size
=============================================================================================================================================================
Installing:
oracle-database-preinstall-23ai x86_64 1.0-2.el8 @commandline 30 k
Installing dependencies:
compat-openssl10 x86_64 1:1.0.2o-4.el8 appstream 1.1 M
ksh x86_64 20120801-267.el8 appstream 927 k
Transaction Summary
=============================================================================================================================================================
Install 3 Packages
Total size: 2.1 M
Total download size: 2.0 M
Installed size: 6.2 M
Downloading Packages:
(1/2): compat-openssl10-1.0.2o-4.el8.x86_64.rpm 3.3 MB/s | 1.1 MB 00:00
(2/2): ksh-20120801-267.el8.x86_64.rpm 2.2 MB/s | 927 kB 00:00
-------------------------------------------------------------------------------------------------------------------------------------------------------------
Total 2.9 MB/s | 2.0 MB 00:00
CentOS Stream 8 - AppStream 1.6 MB/s | 1.6 kB 00:00
Importing GPG key 0x8483C65D:
Userid : "CentOS (CentOS Official Signing Key) <security@centos.org>"
Fingerprint: 99DB 70FA E1D7 CE22 7FB6 4882 05B5 55B3 8483 C65D
From : /etc/pki/rpm-gpg/RPM-GPG-KEY-centosofficial
Key imported successfully
Running transaction check
Transaction check succeeded.
Running transaction test
Transaction test succeeded.
Running transaction
Preparing : 1/1
Installing : ksh-20120801-267.el8.x86_64 1/3
Running scriptlet: ksh-20120801-267.el8.x86_64 1/3
Installing : compat-openssl10-1:1.0.2o-4.el8.x86_64 2/3
Running scriptlet: compat-openssl10-1:1.0.2o-4.el8.x86_64 2/3
Installing : oracle-database-preinstall-23ai-1.0-2.el8.x86_64 3/3
Running scriptlet: oracle-database-preinstall-23ai-1.0-2.el8.x86_64 3/3
Verifying : compat-openssl10-1:1.0.2o-4.el8.x86_64 1/3
Verifying : ksh-20120801-267.el8.x86_64 2/3
Verifying : oracle-database-preinstall-23ai-1.0-2.el8.x86_64 3/3
Installed:
compat-openssl10-1:1.0.2o-4.el8.x86_64 ksh-20120801-267.el8.x86_64 oracle-database-preinstall-23ai-1.0-2.el8.x86_64
Complete!
2.2 安装oracle-database-free-23ai-1.0-1.el8.x86_64.rpm包
[root@oracle23c opt]# yum install -y oracle-database-free-23ai-1.0-1.el8.x86_64.rpm
Last metadata expiration check: 0:01:48 ago on Sun 05 May 2024 02:15:40 PM CST.
Dependencies resolved.
=============================================================================================================================================================
Package Architecture Version Repository Size
=============================================================================================================================================================
Installing:
oracle-database-free-23ai x86_64 1.0-1 @commandline 1.3 G
Transaction Summary
=============================================================================================================================================================
Install 1 Package
Total size: 1.3 G
Installed size: 3.6 G
Downloading Packages:
Running transaction check
Transaction check succeeded.
Running transaction test
Transaction test succeeded.
Running transaction
Preparing : 1/1
Running scriptlet: oracle-database-free-23ai-1.0-1.x86_64 1/1
Installing : oracle-database-free-23ai-1.0-1.x86_64 1/1
Running scriptlet: oracle-database-free-23ai-1.0-1.x86_64 1/1
[INFO] Executing post installation scripts...
[INFO] Oracle home installed successfully and ready to be configured.
To configure Oracle Database Free, optionally modify the parameters in '/etc/sysconfig/oracle-free-23ai.conf' and then run '/etc/init.d/oracle-free-23ai configure' as root.
Verifying : oracle-database-free-23ai-1.0-1.x86_64 1/1
Installed:
oracle-database-free-23ai-1.0-1.x86_64
Complete!
3、创建和配置Oracle Database
3.1 查看/编辑配置文件
配置文件/etc/sysconfig/oracle-free–23ai.conf缺省会创建1个cdb(FREE)、一个pdb(FREEPDB1) ,并且配置监听端口(1521)。我们可以编辑它来修改配置参数。
[oracle@oracle23c oracle]$ cat /etc/sysconfig/oracle-free-23ai.conf
#This is a configuration file to setup the Oracle Database.
#It is used when running '/etc/init.d/oracle-free-23ai configure'.
# LISTENER PORT used Database listener, Leave empty for automatic port assignment
LISTENER_PORT=
# Character set of the database
CHARSET=AL32UTF8
# Database file directory
# If not specified, database files are stored under Oracle base/oradata
DBFILE_DEST=
# DB Domain name
DB_DOMAIN=
# 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
ENCRYPT_TABLESPACES=
# SKIP Validations, memory, space
SKIP_VALIDATIONS=false
3.2 静默创建数据库和监听
[root@oracle23c ~]# /etc/init.d/oracle-free-23ai configure
Specify a password to be used for database accounts. Oracle recommends that the password entered should be at least 8 characters in length, contain at least 1 uppercase character, 1 lower case character and 1 digit [0-9]. Note that the same password will be used for SYS, SYSTEM and PDBADMIN accounts:
Confirm the password:
Configuring Oracle Listener.
Listener configuration succeeded.
Configuring Oracle Database FREE.
Enter SYS user password:
**********
Enter SYSTEM user password:
*******
Enter PDBADMIN User Password:
**********
Prepare for db operation
7% complete
Copying database files
29% complete
Creating and starting Oracle instance
30% complete
33% complete
36% complete
39% complete
43% complete
Completing Database Creation
47% complete
49% complete
50% complete
Creating Pluggable Databases
54% complete
71% complete
Executing Post Configuration Actions
93% complete
Running Custom Scripts
100% complete
Database creation complete. For details check the logfiles at:
/opt/oracle/cfgtoollogs/dbca/FREE.
Database Information:
Global Database Name:FREE
System Identifier(SID):FREE
Look at the log file "/opt/oracle/cfgtoollogs/dbca/FREE/FREE.log" for further details.
Connect to Oracle Database using one of the connect strings:
Pluggable database: oracle23c/FREEPDB1
Multitenant container database: oracle23c
文件目录结构及用途:

The parameters set in this file are explained in detail in the silent mode installation procedure: Performing a Silent Installation.
To create the database with the default settings:
4 设置oracle用户环境变量
[oracle@oracle23c ~]$ vi .bash_profile
export ORACLE_SID=FREE
export ORAENV_ASK=NO
. /opt/oracle/product/23ai/dbhomeFree/bin/oraenv
export ORACLE_BASE=/opt/oracle/
export ORACLE_HOME=/opt/oracle/product/23ai/dbhomeFree
export PATH=$ORACLE_HOME/bin:$PATH
四、数据库使用
1、连接数据库
--连接cdb
[oracle@oracle23c admin]$ sqlplus sys@oracle23c:1521 as sysdba
SQL*Plus: Release 23.0.0.0.0 - Production on Sun May 5 18:00:35 2024
Version 23.4.0.24.05
Copyright (c) 1982, 2024, Oracle. All rights reserved.
Enter password:
Connected to:
Oracle Database 23ai Free Release 23.0.0.0.0 - Develop, Learn, and Run for Free
Version 23.4.0.24.05
SQL> show pdbs;
CON_ID CON_NAME OPEN MODE RESTRICTED
---------- ------------------------------ ---------- ----------
2 PDB$SEED READ ONLY NO
3 FREEPDB1 READ WRITE NO
[oracle@oracle23c ~]$ sqlplus system@oracle23c:1521
SQL*Plus: Release 23.0.0.0.0 - Production on Sun May 5 17:56:37 2024
Version 23.4.0.24.05
Copyright (c) 1982, 2024, Oracle. All rights reserved.
Enter password:
Last Successful login time: Sun May 05 2024 17:54:19 +08:00
Connected to:
Oracle Database 23ai Free Release 23.0.0.0.0 - Develop, Learn, and Run for Free
Version 23.4.0.24.05
SQL>
--连接pdb
[oracle@oracle23c ~]$ sqlplus system@oracle23c:1521/FREEPDB1
SQL*Plus: Release 23.0.0.0.0 - Production on Sun May 5 17:53:33 2024
Version 23.4.0.24.05
Copyright (c) 1982, 2024, Oracle. All rights reserved.
Enter password:
Last Successful login time: Sun May 05 2024 16:32:51 +08:00
Connected to:
Oracle Database 23ai Free Release 23.0.0.0.0 - Develop, Learn, and Run for Free
Version 23.4.0.24.05
SQL>
2、启停数据库
2.1使用sqlplus启停数据库
--停止数据库
$ sqlplus / as sysdba
SQL> SHUTDOWN IMMEDIATE
--启动数据库
SQL> STARTUP
SQL> ALTER PLUGGABLE DATABASE ALL OPEN;
2.2使用服务启停数据库和监听
--root用户执行
# systemctl daemon-reload
# systemctl enable oracle-free-23ai
--启停数据库和监听
# systemctl start oracle-free-23ai
# systemctl stop oracle-free-23ai
--重启数据库和监听
# systemctl restart oracle-free-23ai
--查看数据库和监听状态
# /etc/init.d/oracle-free-23ai status
[root@oracle23c ~]# /etc/init.d/oracle-free-23ai status
Status of the Oracle FREE 23ai service:
LISTENER status: RUNNING
FREE Database status: RUNNING
3、查看监听状态
[oracle@oracle23c ~]$ lsnrctl status
LSNRCTL for Linux: Version 23.0.0.0.0 - Production on 05-MAY-2024 17:47:48
Copyright (c) 1991, 2024, Oracle. All rights reserved.
Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=oracle23c)(PORT=1521)))
STATUS of the LISTENER
------------------------
Alias LISTENER
Version TNSLSNR for Linux: Version 23.0.0.0.0 - Production
Start Date 05-MAY-2024 16:08:37
Uptime 0 days 1 hr. 40 min. 6 sec
Trace Level off
Security ON: Local OS Authentication
SNMP OFF
Default Service FREE
Listener Parameter File /opt/oracle/product/23ai/dbhomeFree/network/admin/listener.ora
Listener Log File /opt/oracle/diag/tnslsnr/oracle23c/listener/alert/log.xml
Listening Endpoints Summary...
(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=oracle23c)(PORT=1521)))
(DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=EXTPROC1521)))
Services Summary...
Service "17b22ca69c5317efe065020c294702bf" has 1 instance(s).
Instance "FREE", status READY, has 1 handler(s) for this service...
Service "FREE" has 1 instance(s).
Instance "FREE", status READY, has 1 handler(s) for this service...
Service "FREEXDB" has 1 instance(s).
Instance "FREE", status READY, has 1 handler(s) for this service...
Service "freepdb1" has 1 instance(s).
Instance "FREE", status READY, has 1 handler(s) for this service...
The command completed successfully
4、查看后台进程
[oracle@oracle23c ~]$ ps -ef|grep db_
oracle 71278 1 0 16:59 ? 00:00:01 db_pmon_FREE
oracle 71282 1 0 16:59 ? 00:00:00 db_clmn_FREE
oracle 71286 1 0 16:59 ? 00:00:01 db_psp0_FREE
oracle 71290 1 0 16:59 ? 00:00:58 db_vktm_FREE
oracle 71296 1 0 16:59 ? 00:00:00 db_gen0_FREE
oracle 71300 1 0 16:59 ? 00:00:00 db_mman_FREE
oracle 71306 1 0 16:59 ? 00:00:00 db_gen2_FREE
oracle 71308 1 0 16:59 ? 00:00:00 db_diag_FREE
oracle 71311 1 0 16:59 ? 00:00:00 db_ofsd_FREE
oracle 71314 1 0 16:59 ? 00:00:00 db_gwpd_FREE
oracle 71316 1 0 16:59 ? 00:00:03 db_dbrm_FREE
oracle 71318 1 0 16:59 ? 00:00:15 db_vkrm_FREE
oracle 71324 1 0 16:59 ? 00:00:01 db_pman_FREE
oracle 71327 1 0 16:59 ? 00:00:02 db_dia0_FREE
oracle 71329 1 0 16:59 ? 00:00:00 db_dbw0_FREE
oracle 71333 1 0 16:59 ? 00:00:01 db_lgwr_FREE
oracle 71336 1 0 16:59 ? 00:00:01 db_ckpt_FREE
oracle 71339 1 0 16:59 ? 00:00:00 db_smon_FREE
oracle 71346 1 0 16:59 ? 00:00:00 db_smco_FREE
oracle 71350 1 0 16:59 ? 00:00:00 db_reco_FREE
oracle 71352 1 0 16:59 ? 00:00:00 db_lreg_FREE
oracle 71354 1 0 16:59 ? 00:00:00 db_pxmn_FREE
oracle 71362 1 0 16:59 ? 00:00:04 db_mmon_FREE
oracle 71364 1 0 16:59 ? 00:00:01 db_mmnl_FREE
oracle 71366 1 0 16:59 ? 00:00:03 db_bg00_FREE
oracle 71368 1 0 16:59 ? 00:00:00 db_w000_FREE
oracle 71376 1 0 16:59 ? 00:00:01 db_bg01_FREE
oracle 71379 1 0 16:59 ? 00:00:00 db_w001_FREE
oracle 71386 1 0 16:59 ? 00:00:01 db_bg02_FREE
oracle 71395 1 0 16:59 ? 00:00:00 db_d000_FREE
oracle 71397 1 0 16:59 ? 00:00:00 db_s000_FREE
oracle 71399 1 0 16:59 ? 00:00:00 db_tmon_FREE
oracle 71401 1 0 16:59 ? 00:00:00 db_rcbg_FREE
oracle 71404 1 0 16:59 ? 00:00:00 db_tt00_FREE
oracle 71406 1 0 16:59 ? 00:00:00 db_tt01_FREE
oracle 71410 1 0 16:59 ? 00:00:00 db_p000_FREE
oracle 71412 1 0 16:59 ? 00:00:00 db_aqpc_FREE
oracle 71418 1 0 16:59 ? 00:00:46 db_cjq0_FREE
oracle 71430 1 0 16:59 ? 00:00:00 db_qm02_FREE
oracle 71437 1 0 16:59 ? 00:00:00 db_q002_FREE
oracle 71633 1 0 16:59 ? 00:00:02 db_q003_FREE
oracle 71648 1 0 16:59 ? 00:00:08 db_m001_FREE
oracle 71650 1 0 16:59 ? 00:00:15 db_m002_FREE
oracle 71654 1 0 16:59 ? 00:00:12 db_m003_FREE
oracle 74169 1 0 17:58 ? 00:00:03 db_m004_FREE
oracle 74756 1 0 18:18 ? 00:00:01 db_m006_FREE
附录、参考文档:
https://mp.weixin.qq.com/s/uiY7bImlB-w8KcQHH957WA




