Wednesday, 26 November 2025

how to get and noted locks , waits and blocks in oracle database 19C 2025

 Hi ,

How to find the lock , blocks and waits in the oracle database these sqls will helpfull.


select a.sid, a.serial#, b.sql_text

   from gv$session a,g v$sqlarea b

    where a.sql_address=b.address

     and a.sid = &sid



select a.sid, a.serial#, b.sql_text

   from gv$session a, gv$sqlarea b

    where a.sql_address=b.address

     and a.sid = &sid


Other cell single block physical read: pmem cache 81,785,379 0.00 28,198.94 344.79us 12.81  

1 User I/O read by other session 4,283,630 0.00 5,926.70 1.38ms 2.69  

1 User I/O cell multiblock physical read 13,427,646 0.00 5,746.40 427.95us 2.61  

1 User I/O cell smart table scan 23,662,938 14.94 3,403.67 143.84us 1.55  

1 Concurrency enq: TX - index contention 46,174 0.00 2,367.85 51.28ms 1.08



select vs.sid ,vs.serial# "Serial#",vs.PROCESS "OS PROCESS"

,a.oracle_process_id "spid",vs.SQL_ID,VS.PREV_SQL_ID

from APPLSYS.fnd_Concurrent_requests a

,APPLSYS.fnd_concurrent_processes b,applsys.fnd_concurrent_queues q

,APPLSYS.fnd_concurrent_programs_tl c2,APPLSYS.fnd_concurrent_programs c

,APPLSYS.fnd_user f,v$session vs,v$process vp

where

a.controlling_manager = b.concurrent_process_id

and a.concurrent_program_id = c.concurrent_program_id

and a.program_application_id = c.application_id

and c2.concurrent_program_id = c.concurrent_program_id

and c2.application_id = c.application_id

and a.phase_code in ('I','P','R','T')

and a.requested_by = f.user_id

and b.queue_application_id = q.application_id

and b.concurrent_queue_id = q.concurrent_queue_id

and c2.language = 'US' and vs.process (+) = b.os_process_id

and vs.paddr = vp.addr (+) and a.request_id=&request_id

/


set lines 300 pages 50000

select sid,serial#,sql_id,prev_sql_id from gv$session where sid=1713;

 


SELECT a.request_id, d.sid, d.serial# ,d.osuser,d.process,d.inst_id

FROM apps.fnd_concurrent_requests a,

apps.fnd_concurrent_processes b,

gv$process c,

gv$session d

WHERE a.controlling_manager = b.concurrent_process_id

AND c.pid = b.oracle_process_id

AND b.session_id=d.audsid

AND a.request_id = XXXX;



select oracle_username,os_user_name,locked_mode,object_name,object_type

from v$locked_object lo,dba_objects do

where lo.object_id = do.object_id;


select obj.owner,obj.object_name,obj.OBJECT_TYPE,sess.sid,



sess.serial#, sess.status,sess.LOGON_TIME,sess.module,sess.sql_id,sess.ACTION,sess.process

from gv$locked_object lo,dba_objects obj ,v$session sess

where obj.object_id=lo.OBJECT_ID

and sess.sid=lo.SESSION_ID;

and object_name like '%MMC_GLB_GL2WEBCAS_AUDIT%';




select sql_text from v$sql where sql_id='0P9HP6SP7NJZ0';


SET LINESIZE 500

SET PAGESIZE 1000

COLUMN username FORMAT A15

COLUMN machine FORMAT A25

COLUMN logon_time FORMAT A20

SELECT LPAD(' ', (level-1)*2, ' ') || NVL(s.username, '(oracle)') AS username,

s.osuser,

s.sid,

s.serial#,

s.lockwait,

s.status,

s.module,

s.machine,

s.program,

TO_CHAR(s.logon_Time,'DD-MON-YYYY HH24:MI:SS') AS logon_time

FROM   v$session s

CONNECT BY PRIOR s.sid = s.blocking_session

START WITH s.blocking_session IS NULL;



select obj.owner,obj.object_name,obj.OBJECT_TYPE,sess.sid,


sess.serial#, sess.status,sess.LOGON_TIME,sess.module,sess.sql_id,sess.ACTION,sess.process

from gv$locked_object lo,dba_objects obj ,v$session sess

where obj.object_id=lo.OBJECT_ID

and sess.sid=lo.SESSION_ID;

and object_name like '%PAY%';


select SQL_TEXT from  DBA_HIST_SQLTEXT where sql_id='0P9HP6SP7NJZ0';


Performance->sql>sql tuning adviser->click on historical AWR 

there you search for the SQLID 

select sid,serial#,sql_id,prev_sql_id from gv$session where sid=1713;

get explain plan ..


SELECT * FROM table(dbms_xplan.display_awr(SQL_ID=>'0P9HP6SP7NJZ0'));

SELECT * FROM table(DBMS_XPLAN.DISPLAY_CURSOR('0P9HP6SP7NJZ0'));


Query to Check Lock is Table Level or Row Level:-

----------------------------------------------------

 

col session_id head 'Sid' form 9999

col object_name head "Table|Locked" form a30

col oracle_username head "Oracle|Username" form a10 truncate

col os_user_name head "OS|Username" form a10 truncate

col process head "Client|Process|ID" form 99999999

col owner head "Table|Owner" form a10

col mode_held form a15

select lo.session_id,lo.oracle_username,lo.os_user_name,

lo.process,do.object_name,do.owner,

decode(lo.locked_mode,0, 'None',1, 'Null',2, 'Row Share (SS)',

3, 'Row Excl (SX)',4, 'Share',5, 'Share Row Excl (SSX)',6, 'Exclusive',

to_char(lo.locked_mode)) mode_held

from gv$locked_object lo, dba_objects do

where lo.object_id = do.object_id

order by 5

/


SELECT a.request_id, d.sid, d.serial# ,d.osuser,d.process,d.inst_id

FROM apps.fnd_concurrent_requests a,

apps.fnd_concurrent_processes b,

gv$process c,

gv$session d

WHERE a.controlling_manager = b.concurrent_process_id

AND c.pid = b.oracle_process_id

AND b.session_id=d.audsid

AND a.request_id = xxx;


error :  Routine AFPCMT encountered an ORACLE error. ORA-03114: not connected to ORACLE

Concurrent Processing R12 : All Concurrent Requests Fail With Database Errors ORA-03113 and ORA-07445 (Doc ID 945107.1)

AFPGRG Failed Due To ORA-03114 (Doc ID 2331973.1)


1. Check the load of the server using top command

2. Verify the mount space using df -hP

3. Check the tablespace size

4. Verify the status of the concurrent request using query:

select request_id ,phase_code, status_code from fnd_concurrent_requests where request_id ='333333';


5. Check which CM is running this request. 

SELECT request_id, user_concurrent_program_name, status_code, phase_code, completion_text FROM apps.fnd_conc_req_summary_v WHERE request_id =&req_id ;


6. Confirm the Actual and target of the CM from above output

7. Confirm the Concurrent Manager Status and queue

8. Check the SID of the concurrent request using query:

SELECT a.request_id, d.sid, d.serial# ,d.osuser,d.process , c.SPID ,d.inst_id FROM apps.fnd_concurrent_requests a,apps.fnd_concurrent_processes b,gv$process c,gv$session d WHERE a.controlling_manager = b.concurrent_process_id AND c.pid = .oracle_process_id AND b.session_id=d.audsid AND a.request_id =&req_id AND a.phase_code = 'R';


9. Query to get the row fetched using the SID from step 8.

column name format a30 word_wrapped

column vlu format 999,999,999,999

select b.name, a.value vlu from v$sesstat a, v$statname b where a.statistic# = b.statistic# and sid =&sid and a.value != 0 and b.name like '%row%' /


col sid format 999999

col username format a20

col osuser format a15

select a.sid, a.serial#,a.username, a.osuser, b.spid from v$session a, v$process b where .paddr= b.addr and a.sid='&sid' order by a.sid;

10. Check Database session status and what it is running

set echo off

set linesize 132

set verify off

set feedback off

set serveroutput on;

declare

   SID number        := 0 ;

   SERIAL number       := 0 ;

   username varchar(20)   := '';

   Status varchar(8)     := '';

   machine varchar(10)   := '';

   terminal  varchar(25)  := '';

   program  varchar(30)   := '';

   Module varchar(30)    := '';

   Action varchar(20)    := '';

   sql_hash_value number  := 0 ;

   logontime varchar(30)   := '';

   last_call_et number    := 0 ;

   proc number        := 0 ;

   spid number        := 0 ;

   event varchar(30)     := '';

   state varchar(30)     := '';

   sql_text varchar(2000)  := '';

cursor cur1 is

select a.sid sid,

   a.serial# serial,

   a.username username,

   a.status status ,

   a.machine machine,

   a.terminal terminal,

   a.program program,

   a.module module,

   a.action action,

   a.sql_hash_value sql_hash_value,

   to_char(a.logon_time,'DD-Mon-YYYY HH:MI:SS') logontime,

   a.last_call_et last_call_et,

   a.process proc,

   b.spid spid,

   sw.event event,

   sw.state state

from  gv$session a, gv$process b, gv$session_wait sw

where a.paddr=b.addr and a.inst_id=b.inst_id

   and a.sid='&1'

   and a.inst_id=sw.inst_id

   and a.sid=sw.sid;

begin

 DBMS_OUTPUT.PUT_LINE('-----------------------------------------------------------------');

 DBMS_OUTPUT.PUT_LINE(' Database session detail for the shadow process ');

 DBMS_OUTPUT.PUT_LINE('-----------------------------------------------------------------');

for m in cur1

loop

DBMS_OUTPUT.ENABLE(50000);

  DBMS_OUTPUT.PUT_LINE(' ');

  DBMS_OUTPUT.PUT_LINE( 'SID............ : ' || m.sid );

  DBMS_OUTPUT.PUT_LINE('SERIAL#........ : ' || m.serial  );

  DBMS_OUTPUT.PUT_LINE('USERNAME....... : ' || m.username  );

  DBMS_OUTPUT.PUT_LINE('STATUS......... : ' || m.status   );

  DBMS_OUTPUT.PUT_LINE( 'Machine........ : ' || m.machine );

  DBMS_OUTPUT.PUT_LINE( 'Terminal....... : ' || m.terminal);

  DBMS_OUTPUT.PUT_LINE( 'Program........ : ' || m.program );

  DBMS_OUTPUT.PUT_LINE('Module......... : ' || m.module );

  DBMS_OUTPUT.PUT_LINE( 'Action......... : ' || m.action );

  DBMS_OUTPUT.PUT_LINE('SQL Hash Value. : ' || m.sql_hash_value );

  DBMS_OUTPUT.PUT_LINE( 'Logon Time..... : ' || m.logontime );

  DBMS_OUTPUT.PUT_LINE( 'Last Call Et... : ' || m.last_call_et );

  DBMS_OUTPUT.PUT_LINE( 'Process ID..... : ' || m.proc );

  DBMS_OUTPUT.PUT_LINE( 'SPID........... : ' || m.spid );

  DBMS_OUTPUT.PUT_LINE('Session Waiting for event:'||m.event );

  DBMS_OUTPUT.PUT_LINE('Session state ...........:'||m.state);

dbms_output.put_line('SQL_TEXT is..........:');

for rec in ( select sql_text from v$session s,v$sqltext v where

  s.sql_hash_value=v.hash_value and

  s.sql_address=v.address and s.sid=m.sid order by piece)

loop

dbms_output.put_line(rec.sql_text);

end loop;

  DBMS_OUTPUT.PUT_LINE('--------------------------------------------------------------------');

  DBMS_OUTPUT.PUT_LINE(' ');

end loop;

end;

/

11. Check which sql id it is running, you can get these details using above steps.

12. You should check the sql_id history and can run sql advisory against the 

   sql_id. this will give you incase of the sql query is not correct or may have 

   to see the recommendation based on the sql advisory 

13. Check the stale value of the tables which is used by the concurrent program.

    select table_name, stale_stats, last_analyzed from dba_tab_statistics where

   stale_stats='YES';

14. You may have to run the gather stats against those tables which are having    stale value.

15. You can also use OEM and monitor the Session id.



column DATABASE format a25

col "GB" format 99,999.9

set pagesize 20


SELECT

disk_group_name

,SUBSTR(alias_path,2,INSTR(alias_path,'/',1,2)-2) Database

,ROUND(SUM(alloc_bytes)/1024/1024/1024,1) "GB"

,ROUND(SUM(alloc_bytes)/1024/1024,1) "MB"

FROM

(SELECT

SYS_CONNECT_BY_PATH(alias_name, '/') alias_path

,alloc_bytes, disk_group_name

FROM

(SELECT

g.name disk_group_name

, a.parent_index pindex

, a.name alias_name

, a.reference_index rindex

, f.space alloc_bytes

, f.type type

FROM

v$asm_file f RIGHT OUTER JOIN v$asm_alias a

USING (group_number, file_number)

JOIN v$asm_diskgroup g

USING (group_number)

)

WHERE type IS NOT NULL

START WITH (MOD(pindex, POWER(2, 24))) = 0

CONNECT BY PRIOR rindex = pindex

)

GROUP BY disk_group_name, SUBSTR(alias_path,2,INSTR(alias_path,'/',1,2)-2)

ORDER BY 1;




Thanks,

Srini















Sunday, 23 November 2025

CVE-2025-61882 and CVE-2025-61884 Oracle E-Business Suite Security Alert addresses vulnerability R12.2

 Dear All,

In this post i am sharing details related to Oracle E-Business Suite Security Alert addresses vulnerability  R12.2 versions which are reported recently in this year 2025.

Vulnerability in EBS R12.2 versions.

CVE-2025-61882 ::: 

The vulnerability lies in the BI Publisher Integration component of Oracle’s Concurrent Processing module, part of EBS versions 12.2.3 through 12.2.14. It allows unauthenticated attackers to send specially crafted HTTP requests that lead to remote code execution on the affected server.


Critical unauthenticated remote code execution (RCE) in Oracle E-Business Suite (EBS)

> Actively exploited in Clop-led data theft and extortion attacks

> Exploit and Oracle source code leaked publicly

> Emergency patch released

 

Oracle has released an emergency patch for a critical zero-day vulnerability in Oracle E-Business Suite, tracked as CVE-2025-61882. The flaw, with a CVSS score of 9.8, allows attackers to execute arbitrary code remotely without authentication.

Reports from Oracle, Mandiant, and independent researchers confirm the vulnerability has been actively exploited in Clop ransomware (Ransomware is a type of malicious software (malware) )  group campaigns, leading to large-scale data theft and extortion. Public indicators of compromise (IOCs) now match exploit code that leaked on Telegram, confirming this is the same vulnerability used in recent attacks.


 





https://support.oracle.com/epmos/faces/DocumentDisplay?_afrLoop=274578431489086&id=3106344.1&_afrWindowMode=0&_adf.ctrl-state=1a0ce4gyc8_53

EBS R12.2 Environment :


EBS R12.1.3 Environment : 


 

CVE-2025-61884 ::

======== ==== 






https://support.oracle.com/epmos/faces/DocumentDisplay?_afrLoop=274764861518353&id=3107176.1&_afrWindowMode=0&_adf.ctrl-state=1a0ce4gyc8_102




 



post 884 fixup we may see this issue , you can apply the given patch to fix that issue.


Recommended actions

  • Patch immediately: Apply Oracle’s Security Alert update for CVE-2025-61882. Ensure the October 2025 Critical Patch Update is installed first.
  • Hunt for the following IOCs: Reverse shell commands (/bin/bash -i >& /dev/tcp), unexpected child processes from the EBS Java service, the IPs 200.107.207.26 and 185.181.60.11, and presence of files exp.py, server.py, or oracle_ebs_nday_exploit*.zip.
  • Review access exposure: Identify any externally accessible EBS instances or outdated versions.
  • Increase runtime visibility: Monitor for process and library behavior within application workloads, not just endpoints.

 

 

  • June 2025: Dark Web posts advertise an Oracle EBS zero-day exploit for sale (~$70,000).
  • August 2025: Clop begins an extortion campaign targeting EBS servers across multiple organizations.
  • October 4, 2025: Oracle publishes a Security Alert for CVE-2025-61882 and releases an emergency patch.
  • October 5, 2025: Mandiant confirms Clop leveraged both previously patched July vulnerabilities and this new zero-day.
  • October 6, 2025: Exploit archive and partial Oracle source code leaked by a group calling itself Scattered Lapsus$ Hunters.


Importent dates : 



Thanks,

Srini













Wednesday, 29 October 2025

Oracle 26AI database Silent Mode installation step by step

 Dear All, 

In this post i am going share how to Install oracle AI database Free in Silent Mode.

Performing a Silent Installation

You can install Oracle AI Database Free using silent mode. You can use this mode to perform an embedded install of Oracle AI Database Free with your application, or unattended operation.

To perform a silent installation, you must enter a password for the administrative accounts as a parameter to the script, or specify it in the configuration file.

  1. Create a wrapper shell script to perform the silent installation. The script should contain commands similar to the following:

    For Oracle Linux 8

    #!/bin/bash
     
    yum -y install /downloads/oracle-ai-database-free-26ai-23.26.0-1.el8.x86_64.rpm > /free_logs/FREEsilentinstall.log 2>&1
    
    /etc/init.d/oracle-free-26ai configure >> /free_logs/FREEsilentinstall.log 2>&1
    

    For Oracle Linux 9

    #!/bin/bash
     
    yum -y install /downloads/oracle-ai-database-free-26ai-23.26.0-1.el9.x86_64.rpm > /free_logs/FREEsilentinstall.log 2>&1
    
    /etc/init.d/oracle-free-26ai configure >> /free_logs/FREEsilentinstall.log 2>&1
    

    For Oracle Linux 8 on Linux for Arm (aarch64)

    #!/bin/bash
     
    yum -y install /downloads/oracle-ai-database-free-26ai-23.26.0-1.el8.aarch64.rpm > /free_logs/FREEsilentinstall.log 2>&1
    
    /etc/init.d/oracle-free-26ai configure >> /free_logs/FREEsilentinstall.log 2>&1
    

    Alternatively, you can enter the password in the script, such as:

    (echo "password"; echo "password";) | /etc/init.d/oracle-free-26ai configure >> /free_logs/FREEsilentinstall.log 2>&1

    Replace password with a password that is secure. 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].

  2. Make the wrapper script executable.

    chmod +x myscript.sh
  3. Run the script as root using sudo.
    sudo ./myscript.sh

    The Oracle AI Database Free Oracle home is /opt/oracle/product/26ai/dbhomeFREE

    For details of the installation, review the /free_logs/FREEsilentinstall.log file.

The /etc/sysconfig/oracle-free-26ai.conf configuration file sets the following:

  • LISTENER_PORT: A valid listener numeric port value for the database listener. Do not specify any value for automatic port assignment.

  • CHARSET: Character set of the database. This is set to AL32UTF8.

  • DBFILE_DEST Database file directory. By default, the database files are stored in the Oracle base /opt/oracle/oradata subdirectory. You can also create your own database file directory. However, the permissions for this file path should be owned by the oracle user.

  • SKIP_VALIDATIONS: Skip validation for memory and disk space. Default is false.

  • CONFIGURE_TDE: Set CONFIGURE_TDE=true to configure Transparent Data Encryption (TDE). The default value is false.
  • ENCRYPT_TABLESPACES: Leave this value empty for user tablespaces. Set this value to ALL for encrypting all the tablespaces. For specific tablespaces, use SYSTEM:true,SYSAUX:false. Default value is empty.

The database creation logs are located under Oracle base in the /opt/oracle/cfgtoollogs/dbca/ subdirectory.

Setting Oracle AI Database Free Environment Variables

After you install and configure Oracle AI Database Free, set the environment before you use Oracle AI Database Free.

Use the oraenv and coraenv scripts to set your environment variables.

For example, to set your environment variables in Bourne, Bash, or Korn shell without being prompted by the script, log in as the Oracle user and run the following commands:

export ORACLE_SID=FREE export ORAENV_ASK=NO . /opt/oracle/product/26ai/dbhomeFree/bin/oraenv

These commands display an output similar to the following:

ORACLE_HOME = [] ? /opt/oracle/product/26ai/dbhomeFree
The Oracle base has been set to /opt/oracle
For C shell:
setenv ORACLE_SID FREE setenv ORACLEENV_ASK NO source /opt/oracle/product/26ai/dbhomeFree

Monday, 27 October 2025

how to install Oracle AI Database Free using RPM packages

 Dear All, 

in this post i am going to share how to install Oracle AI Database Free .

Learn how to install Oracle AI Database Free using RPM packages.

An RPM-based installation performs preinstallation checks, extracts the database software, reassigns ownership of the extracted software to the preconfigured user and groups, maintains the Oracle inventory, and runs all root operations required to configure the Oracle AI Database software for a single-instance Oracle AI Database creation and configuration.

The RPM–based installation process detects when the minimum requirements for an installation are not met and prompts you to finish these minimum preinstallation requirements.

This section covers the following topics:

  • Installing Oracle AI Database Free Using RPM Packages

  • Performing a Silent Installation

  • Setting Oracle AI Database Free Environment Variables

Installing Oracle AI Database Free Using RPM Packages

Perform the following steps to install and configure Oracle AI Database Free using RPM packages.

Before you install Oracle AI Database 26ai Free, uninstall any existing Oracle Database XE or Oracle Database Free or database with the SID XE or FREE from the target system. See Deinstalling Oracle AI Database Free.

Oracle AI Database Free installation uses approximately 9 GB disk space under /opt. If this disk partition does not have the required disk space available, you must add space or mount an alternative partition as /opt/oracle. This disk partition is defined as Oracle base where the software and database will reside.
  • Installing Oracle AI Database Free RPM for Linux x86-64
  • Installing Oracle AI Database Free RPM on Linux for Arm (aarch64)

Installing Oracle AI Database Free RPM for Linux x86-64

  1. Log in as the root user.

  2. Install the Oracle AI Database Preinstallation RPM.

    Oracle Linux 8 and Oracle Linux 9

    dnf -y install oracle-ai-database-preinstall-26ai

    Red Hat Enterprise Linux 8

    1. Go to the Oracle yum site:

      https://yum.oracle.com/repo/OracleLinux/OL8/appstream/x86_64/

    2. Download the latest 26ai Oracle AI Database Preinstallation RPM. For example, oracle-ai-database-preinstall-26ai-1.0-0.1.el8.x86_64.rpm

    3. Install the latest Preinstallation RPM. For example:

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

    Red Hat Enterprise Linux 9

    1. Go to the Oracle yum site:

      https://yum.oracle.com/repo/OracleLinux/OL9/appstream/x86_64/

    2. Download the latest 26ai Oracle AI Database Preinstallation RPM. For example, oracle-ai-database-preinstall-26ai-1.0-0.1.el9.x86_64.rpm

    3. Install the latest Preinstallation RPM. For example:

      dnf -y install oracle-ai-database-preinstall-26ai-1.0-0.1.el9.x86_64.rpm
  3. Access the Oracle AI Database Free software download page:

    https://www.oracle.com/database/technologies/free-downloads.html

  4. Download the oracle-ai-database-free-26ai-23.26.0-1.el8.x86_64.rpm or oracle-ai-database-free-26ai-23.26.0-1.el9.x86_64.rpm RPM file required for performing an RPM-based installation to a directory of your choice.

  5. Install the database software.

    For Oracle Linux 8 and Red Hat Enterprise Linux 8

    dnf -y install oracle-ai-database-free-26ai-23.26.0-1.el8.x86_64.rpm

    For Oracle Linux 9 and Red Hat Enterprise Linux 9

    dnf -y install oracle-ai-database-free-26ai-23.26.0-1.el9.x86_64.rpm


The installation of the Oracle AI Database software is now complete.

Installing Oracle AI Database Free RPM on Linux for Arm (aarch64)

  1. Log in as the root user.

  2. Install the Oracle AI Database Preinstallation RPM.

    Oracle Linux 8

    dnf -y install oracle-ai-database-preinstall-26ai
  3. Access the Oracle AI Database Free software download page:

    https://www.oracle.com/database/technologies/free-downloads.html

  4. Download the oracle-ai-database-free-26ai-23.26.0-1.el8.aarch64.rpm RPM file required for performing an RPM-based installation to a directory of your choice.

  5. Install the database software.

    For Oracle Linux 8

    dnf -y install oracle-database-free-26ai-23.26.0-1.el8.aarch64.rpm

The installation of the Oracle AI Database software is now complete.

Creating and Configuring an Oracle AI Database

The configuration script creates a container database (FREE) with one pluggable database (FREEPDB1) and configures the listener at the default port (1521).

You can modify the configuration parameters by editing the /etc/sysconfig/oracle-free–26ai.conf file.

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:

  1. Log in as root using sudo.

    sudo -s
  2. Run the service configuration script:

    /etc/init.d/oracle-free-26ai configure

    At the command prompt, specify a password for the SYSSYSTEM, and PDBADMIN administrative user accounts. Oracle recommends that your password should be at least 8 characters in length, contain at least 1 upper case character, 1 lower case character, and 1 digit [0-9].

    After the configuration completes, the database and listener are started.

Table 4-1 Configuration, Database Files and Logs Location

File Name and LocationPurpose

/opt/oracle

Oracle base. This is the root of the Oracle AI Database Free directory tree.

/opt/oracle/product/26ai/dbhomeFree

Oracle home. This home is where the Oracle AI Database Free is installed. It contains the directories of the Oracle AI Database Free executables and network files.

/opt/oracle/oradata/FREE

Database files.

/opt/oracle/diag subdirectories

Diagnostic logs. The database alert log is /opt/oracle/diag/rdbms/free/FREE/trace/alert_FREE.log

/opt/oracle/cfgtoollogs/dbca/FREE

Database creation logs. The FREE.log file contains the results of the database creation script execution.

/etc/sysconfig/oracle-free-26ai.conf

Configuration default parameters.

/etc/init.d/oracle-free-26ai

Configuration and services script.

Thanks,

Srini