Monday, February 17, 2025

Oracle 23ai (Free) Installation

  • Introduction:
    Oracle Database 23ai, released in May 2024, is Oracle's latest long-term support release, introducing over 300 new features designed to integrate artificial intelligence (AI) capabilities directly into enterprise data management.
    Oracle offers a free version of Oracle Database 23ai, known as Oracle Database 23ai Free, which allows users to explore and develop with the latest features without incurring any costs. This guide will walk you through the Oracle Database 23ai installation process step-by-step.

  • Prerequisites: Below are the minimum requirements for Linux environment.
    1. CPU - 2core
    2. RAM - 2GB
    3. Disk space - 12GB
    4. Swap - 1.5 time of RAM
    5. OS - Oracle Linux 8/9, Red Hat Enterprise Linux 8/9.

  • Software Download:
    1. oracle-database-preinstall-23ai : For Linux 8 and for For Linux 9
    2. Oracle Database 23ai: Download RPM

  • Environment Used:
    1. Hostname: oracle23ai
    2. OS: OL9

  • Note:  Keep enough space in / mount point as ORACLE_HOME will be created in  /opt. you can also create a separate mount point with name /opt.
  • Now start installation step by step:
1. Install oracle-database-preinstall-23ai
[root@oracle23ai ~]# yum install -y oracle-database-preinstall-23ai
Oracle Linux 9 BaseOS Latest (x86_64) 2.2 MB/s | 50 MB 00:22
Oracle Linux 9 Application Stream Packages (x86_64) 2.1 MB/s | 50 MB 00:23
Oracle Linux 9 UEK Release 7 (x86_64) 3.2 MB/s | 58 MB 00:17
Last metadata expiration check: 0:00:10 ago on Sat 15 Feb 2025 06:50:29 PM IST.
Dependencies resolved.
========================================================================
Package Architecture Version Repository Size
========================================================================
Installing:
oracle-database-preinstall-23ai x86_64 1.0-2.el9 ol9_appstream 35 k
Installing dependencies:
initscripts x86_64 10.11.7-1.0.1.el9 ol9_baseos_latest 285 k
ksh x86_64 3:1.0.6-4.el9_5 ol9_appstream 889 k
libnsl x86_64 2.34-100.0.1.el9 ol9_baseos_latest 69 k
Transaction Summary
========================================================================
Install 4 Packages
Total download size: 1.2 M
Installed size: 4.2 M
Downloading Packages:
(1/4): libnsl-2.34-100.0.1.el9.x86_64.rpm 38 kB/s | 69 kB 00:01
(2/4): initscripts-10.11.7-1.0.1.el9.x86_64.rpm 149 kB/s | 285 kB 00:01
(3/4): ksh-1.0.6-4.el9_5.x86_64.rpm 339 kB/s | 889 kB 00:02
(4/4): oracle-database-preinstall-23ai-1.0-2.el9.x86_64.rpm 31 kB/s | 35 kB 00:01
-------------------------------------------------------------------------------------------------------
Total 434 kB/s | 1.2 MB 00:02
Oracle Linux 9 BaseOS Latest (x86_64) 6.1 MB/s | 6.2 kB 00:00
Importing GPG key 0x8D8B756F:
Userid : "Oracle Linux (release key 1) "
Fingerprint: 3E6D 826D 3FBA B389 C2F3 8E34 BC4D 06A0 8D8B 756F
From : /etc/pki/rpm-gpg/RPM-GPG-KEY-oracle
Key imported successfully
Importing GPG key 0x8B4EFBE6:
Userid : "Oracle Linux (backup key 1) "
Fingerprint: 9822 3175 9C74 6706 5D0C E9B2 A7DD 0708 8B4E FBE6
From : /etc/pki/rpm-gpg/RPM-GPG-KEY-oracle
Key imported successfully
Running transaction check
Transaction check succeeded.
Running transaction test
Transaction test succeeded.
Running transaction
Preparing : 1/1
Installing : ksh-3:1.0.6-4.el9_5.x86_64 1/4
Running scriptlet: ksh-3:1.0.6-4.el9_5.x86_64 1/4
Installing : libnsl-2.34-100.0.1.el9.x86_64 2/4
Installing : initscripts-10.11.7-1.0.1.el9.x86_64 3/4
Running scriptlet: initscripts-10.11.7-1.0.1.el9.x86_64 3/4
Created symlink /etc/systemd/system/sysinit.target.wants/import-state.service → /usr/lib/systemd/system/import-state.service.
Created symlink /etc/systemd/system/sysinit.target.wants/loadmodules.service → /usr/lib/systemd/system/loadmodules.service.
Installing : oracle-database-preinstall-23ai-1.0-2.el9.x86_64 4/4
Running scriptlet: oracle-database-preinstall-23ai-1.0-2.el9.x86_64 4/4
Verifying : initscripts-10.11.7-1.0.1.el9.x86_64 1/4
Verifying : libnsl-2.34-100.0.1.el9.x86_64 2/4
Verifying : ksh-3:1.0.6-4.el9_5.x86_64 3/4
Verifying : oracle-database-preinstall-23ai-1.0-2.el9.x86_64 4/4
Installed:
initscripts-10.11.7-1.0.1.el9.x86_64 ksh-3:1.0.6-4.el9_5.x86_64 libnsl-2.34-100.0.1.el9.x86_64 oracle-database-preinstall-23ai-1.0-2.el9.x86_64
Complete!
[root@oracle23ai ~]#
If you want to install preinstall-23ai rpm manually then run below command post downloading the rpm.
rpm -ivh oracle-database-preinstall-23ai-1.0-2.el9.x86_64.rpm
2. Now download the Oracle 23 ai RPM and keep it in /u01. Then start installing it.
[root@oracle23ai ~]# yum -y localinstall /u01/oracle-database-free-23ai-1.0-1.el9.x86_64.rpm
Last metadata expiration check: 0:08:51 ago on Sat 15 Feb 2025 06:50:43 PM IST.
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.5 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. Change password of oracle user.
[root@oracle23ai ~]# passwd oracle
Changing password for user oracle.
New password:
BAD PASSWORD: The password is shorter than 8 characters
Retype new password:
passwd: all authentication tokens updated successfully.
4. Now locate ORACLE_HOME directory.
[root@oracle23ai ~]# cd /opt/oracle/product/23ai/dbhomeFree
[root@oracle23ai dbhomeFree]# pwd
/opt/oracle/product/23ai/dbhomeFree
[root@oracle23ai dbhomeFree]# ll
total 80
drwxr-xr-x. 2 oracle oinstall 102 Feb 15 19:05 addnode
drwxr-xr-x. 9 oracle oinstall 93 Feb 15 19:02 assistants
drwxr-xr-x. 2 oracle oinstall 8192 Feb 15 19:05 bin
drwxrwx---. 3 oracle oinstall 17 Feb 15 19:06 cfgtoollogs
drwxr-xr-x. 4 oracle oinstall 87 Feb 15 19:05 clone
drwxr-xr-x. 6 oracle oinstall 55 Feb 15 19:02 crs
drwxr-xr-x. 4 oracle oinstall 31 Feb 15 19:02 crypto
drwxr-xr-x. 3 oracle oinstall 18 Feb 15 19:02 css
drwxr-xr-x. 11 oracle oinstall 119 Feb 15 19:03 ctx
drwxr-xr-x. 7 oracle oinstall 71 Feb 15 19:03 cv
drwxr-xr-x. 3 oracle oinstall 20 Feb 15 19:03 data
drwxr-xr-x. 2 oracle oinstall 22 Feb 15 19:05 dbs
drwxr-xr-x. 5 oracle oinstall 173 Feb 15 19:05 deinstall
drwxr-xr-x. 3 oracle oinstall 20 Feb 15 19:03 demo
drwxr-xr-x. 3 oracle oinstall 20 Feb 15 19:03 diagnostics
drwxr-xr-x. 3 oracle oinstall 19 Feb 15 19:03 dv
-rw-r--r--. 1 oracle oinstall 852 Aug 18 2015 env.ora
drwxr-xr-x. 3 oracle oinstall 18 Feb 15 19:03 has
drwxr-xr-x. 5 oracle oinstall 41 Feb 15 19:03 hs
drwxrwx---. 11 oracle oinstall 4096 Feb 15 19:06 install
drwxr-xr-x. 2 oracle oinstall 29 Feb 15 19:05 instantclient
drwxr-x---. 12 oracle oinstall 4096 Feb 15 19:05 inventory
drwxr-xr-x. 9 oracle oinstall 94 Feb 15 19:03 javavm
drwxr-xr-x. 3 oracle oinstall 17 Feb 15 19:03 jdbc
drwxr-xr-x. 6 oracle oinstall 68 Feb 15 19:05 jdk
drwxr-xr-x. 2 oracle oinstall 4096 Feb 15 19:05 jlib
drwxr-xr-x. 10 oracle oinstall 112 Feb 15 19:04 ldap
drwxr-xr-x. 3 oracle oinstall 12288 Feb 15 19:05 lib
-rwxrwxr-x. 1 oracle oinstall 5780 Jan 31 07:30 LICENSE
drwxrwxr-x. 2 oracle oinstall 6 Jan 31 07:29 log
drwxr-xr-x. 5 oracle oinstall 42 Feb 15 19:04 md
drwxr-xr-x. 4 oracle oinstall 31 Feb 15 19:04 mgw
drwxr-xr-x. 11 oracle oinstall 118 Feb 15 19:04 network
drwxr-xr-x. 5 oracle oinstall 46 Feb 15 19:04 nls
drwxr-xr-x. 8 oracle oinstall 133 Feb 15 19:05 odbc
drwxr-xr-x. 5 oracle oinstall 42 Feb 15 19:04 olap
drwxr-xr-x. 4 oracle oinstall 35 Feb 15 19:04 oml4py
drwxr-xr-x. 13 oracle oinstall 4096 Feb 15 19:05 OPatch
drwxr-xr-x. 7 oracle oinstall 65 Feb 15 19:04 opmn
drwxr-xr-x. 5 oracle oinstall 45 Feb 15 19:05 oracore
-rw-r-----. 1 oracle oinstall 130 Feb 15 19:06 oraInst.loc
drwxr-xr-x. 4 oracle oinstall 29 Feb 15 19:05 ord
drwxr-xr-x. 3 oracle oinstall 19 Feb 15 19:05 oss
drwxr-xr-x. 8 oracle oinstall 4096 Feb 15 19:05 oui
drwxr-xr-x. 4 oracle oinstall 28 Feb 15 19:05 perl
drwxr-xr-x. 6 oracle oinstall 106 Feb 15 19:05 plsql
drwxr-xr-x. 7 oracle oinstall 88 Feb 15 19:05 precomp
drwxr-xr-x. 5 oracle oinstall 39 Feb 15 19:05 python
drwxr-xr-x. 2 oracle oinstall 26 Feb 15 19:05 QOpatch
drwxr-xr-x. 5 oracle oinstall 52 Feb 15 19:01 R
drwxr-xr-x. 4 oracle oinstall 29 Feb 15 19:05 racg
drwxr-xr-x. 13 oracle oinstall 140 Feb 15 19:05 rdbms
drwxr-xr-x. 3 oracle oinstall 21 Feb 15 19:05 relnotes
-rwx------. 1 oracle oinstall 525 Jan 31 07:29 root.sh
-rwxr-x---. 1 oracle oinstall 2957 Jun 7 2024 runInstaller
-rw-r--r--. 1 oracle oinstall 2927 Jul 20 2020 schagent.conf
drwxr-xr-x. 5 oracle oinstall 119 Feb 15 19:05 sdk
drwxr-xr-x. 3 oracle oinstall 18 Feb 15 19:05 slax
drwxr-xr-x. 4 oracle oinstall 28 Feb 15 19:05 sqlcl
drwxr-xr-x. 3 oracle oinstall 17 Feb 15 19:05 sqlj
drwxr-xr-x. 3 oracle oinstall 4096 Feb 15 19:05 sqlpatch
drwxr-xr-x. 6 oracle oinstall 53 Feb 15 19:05 sqlplus
drwxr-xr-x. 6 oracle oinstall 54 Feb 15 19:05 srvm
drwxr-xr-x. 3 oracle oinstall 17 Feb 15 19:05 ucp
drwxr-xr-x. 4 oracle oinstall 31 Feb 15 19:05 usm
drwxr-xr-x. 2 oracle oinstall 33 Feb 15 19:05 utl
drwxr-x---. 7 oracle oinstall 69 Feb 15 19:05 xdk
5. Now login with Oracle user and set .bash_profile.
[oracle@oracle23ai ~]$ cat .bash_profile
# .bash_profile
# Get the aliases and functions
if [ -f ~/.bashrc ]; then
. ~/.bashrc
Fi
# User specific environment and startup programs
ORACLE_HOME=/opt/oracle/product/23ai/dbhomeFree
export ORACLE_HOME
LD_LIBRARY_PATH=$ORACLE_HOME/lib:/usr/lib:.
export LD_LIBRARY_PATH
LIBPATH=$ORACLE_HOME/lib32:$ORACLE_HOME/lib:/usr/lib:/lib
export LIBPATH
TNS_ADMIN=${ORACLE_HOME}/network/admin
export TNS_ADMIN
PATH=$ORACLE_HOME/bin:$PATH:.
export PATH
6. Now run the DBCA and start DB installation.
[oracle@oracle23ai ~]$ dbca
Now you can create the database as you are doing for other Oracle DB version.



ORACLE SID will be always FREE as its Oracle 23ai Free. Global DB name and PDB can be modified as per need.
Customize the location of data files as per your setup and need.
Specify FRA location










7. Now set environment and do the login..
[oracle@oracle23ai ~]$ . oraenv
ORACLE_SID = [oracle] ? FREE
The Oracle base has been set to /opt/oracle
[oracle@oracle23ai ~]$
[oracle@oracle23ai ~]$ sqlplus / as sysdba
SQL*Plus: Release 23.0.0.0.0 - Production on Sat Feb 15 20:25:04 2025
Version 23.7.0.25.01
Copyright (c) 1982, 2025, Oracle. All rights reserved.
Connected to:
Oracle Database 23ai Free Release 23.0.0.0.0 - Develop, Learn, and Run for Free
Version 23.7.0.25.01
SQL>
SQL>
SQL>
SQL> set lines 200 pages 1000
col open_mode for a15
col HOST_NAME for a15
select NAME,DATABASE_ROLE,OPEN_MODE,INSTANCE_NUMBER,INSTANCE_NAME,HOST_NAME,VERSION,STARTUP_TIME,STATUS from gv$database,gv$instance;
SQL>
NAME DATABASE_ROLE OPEN_MODE INSTANCE_NUMBER INSTANCE_NAME HOST_NAME VERSION STARTUP_T STATUS
--------- ---------------- --------------- --------------- ---------------- --------------- ----------------- --------- ------------
APEXDB PRIMARY READ WRITE 1 FREE oracle23ai 23.0.0.0.0 15-FEB-25 OPEN
SQL> show pdbs
CON_ID CON_NAME OPEN MODE RESTRICTED
---------- ------------------------------ ---------- ----------
2 PDB$SEED READ ONLY NO
3 APEXPDB1 READ WRITE NO
SQL> !lsnrctl status
LSNRCTL for Linux: Version 23.0.0.0.0 - Production on 15-FEB-2025 20:28:17
Copyright (c) 1991, 2025, Oracle. All rights reserved.
Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=laptop-fhsjip9c)(PORT=1521)))
STATUS of the LISTENER
------------------------
Alias LISTENER
Version TNSLSNR for Linux: Version 23.0.0.0.0 - Production
Start Date 15-FEB-2025 19:45:57
Uptime 0 days 0 hr. 42 min. 22 sec
Trace Level off
Security ON: Local OS Authentication
SNMP OFF
Listener Parameter File /opt/oracle/product/23ai/dbhomeFree/network/admin/listener.ora
Listener Log File /opt/oracle/diag/tnslsnr/oracle23ai/listener/alert/log.xml
Listening Endpoints Summary...
(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=oracle23ai)(PORT=1521)))
(DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=EXTPROC1521)))
Services Summary...
Service "2cf5fcb8b4ef1dc4e0631fc45e647325" has 1 instance(s).
Instance "FREE", status READY, has 1 handler(s) for this service...
Service "2e302888a2dbd35ee0630a65a8c0ae25" 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 "apexdb" has 1 instance(s).
Instance "FREE", status READY, has 1 handler(s) for this service...
Service "apexpdb1" has 1 instance(s).
Instance "FREE", status READY, has 1 handler(s) for this service...
The command completed successfully



Thanks for visiting!!

0 comments:

Post a Comment