Change the DBID and the DBNAME using NID in Oracle RAC Multitenant oracledna RAC May 30, 2026 This post demonstrates to change the DBID of both CDB and PDB in Oracle RAC. Also, demonstrated the DBNAME of CDB. We can change both the DBID and DBNAME in an Oracle RAC environment using the DBNEWID (NID) utility, but it requires careful steps: disable cluster mode, run NID in mount state, update parameters, open with RESETLOGS, and reconfigure RAC with srvctl. Always take a full backup before and after the change. The DBNEWID utility enables us to change only the DBID, DBNAME, or both the DBID and DBNAME of a database. Note:=====1. Ensure you take a full and valid database backup before starting this procedure. It is strongly recommended. After changing the DBID, again back up the database immediately. When the DBID of a database is changed, all previous backups and archived logs of the database become unusable. 2. Ensure all data files are consistent and do not require media recovery. 3. If you change DBID at Primary in a Standby Environment, the STANDBY Database must be rebuild. 4. Changing the DBNAME without changing the DBID does not require you to open with the RESETLOGS option, so database backups and archived logs are not invalidated. 5. Offline data files must be accessible and writable. If a file is not accessible or writable, then we must drop it before using the DBNEWID utility. Caution:=======If you are using a capture process to capture changes like Oracle GoldenGate or Streams to the database, then do not change the DBID or DBNAME of a database. We cannot use the NID (DBNEWID) utility to change the name of a Pluggable Database (PDB). The NID utility is strictly used to change the name and Database Identifier (DBID) of an entire Container Database (CDB) or a non-CDB. Test Environment:=============RAC Nodes -2 (racnode1, racnode2)DB Name: PRODCDB (CDB), PRODPDB1 (PDB)New DB Name: PRODRAC DB Version: 19.27 (19c)Linux Version: OEL 9.4 1. Connect to the RAC CDB DB and to change the cluster_database to false. export ORACLE_SID=prodcdb1 set linesize 300col name for a10col db_unique_name for a15col open_mode for a10col database_role for a18col instance_name for a15col host_name for a16col startup_time for a20COL STARTUP_TIME FOR A20SELECT d.name,d.db_unique_name,d.open_mode,d.database_role,i.instance_name,i.host_name, TO_CHAR(i.startup_time,’DD-MON-YYYY HH24:MI’) AS startup_time FROM gv$database d JOIN gv$instance iON d.inst_id = i.inst_id; NAME DB_UNIQUE_NAME OPEN_MODE DATABASE_ROLE INSTANCE_NAME HOST_NAME STARTUP_TIME———- ————— ———- —————— ————— —————- ——————–PRODCDB prodcdb READ WRITE PRIMARY prodcdb1 racnode1 30-MAY-2026 09:30PRODCDB prodcdb READ WRITE PRIMARY prodcdb2 racnode2 30-MAY-2026 09:30 SQL> show pdbs CON_ID CON_NAME OPEN MODE RESTRICTED———- —————————— ———- ———-2 PDB$SEED READ ONLY NO3 PRODPDB1 READ WRITE NO SQL> set lines 1234 pages 1234col NAME for a15SELECT CON_ID, NAME, DBID, OPEN_MODE FROM V$CONTAINERS ORDER BY CON_ID;CON_ID NAME DBID OPEN_MODE———- ————— ———- ———-1 CDB$ROOT 3232597591 READ WRITE2 PDB$SEED 2108530843 READ ONLY3 PRODPDB1 1230706380 READ WRITE SQL> alter system set cluster_database=false scope=spfile sid=’*’;System altered. 2. start only one instance in mount mode. [oracle@racnode1 ~]$ srvctl stop database -db prodcdb [oracle@racnode1 ~]$ srvctl status database -db prodcdb -vInstance prodcdb1 is not running on node racnode1Instance prodcdb2 is not running on node racnode2 [oracle@racnode1 ~]$ sqlplus / as sysdbaSQL*Plus: Release 19.0.0.0.0 – Production on Sat May 30 11:15:41 2026Version 19.27.0.0.0Copyright (c) 1982, 2024, Oracle. All rights reserved.Connected to an idle instance. SQL> startup mountORACLE instance started.Total System Global Area 2717907328 bytesFixed Size 9181568 bytesVariable Size 838860800 bytesDatabase Buffers 1862270976 bytesRedo Buffers 7593984 bytesDatabase mounted. SQL> show parameter cluster_databaseNAME TYPE VALUE———————————— ———– ——————————cluster_database boolean FALSEcluster_database_instances integer 1 SQL> set linesize 300col name for a10col db_unique_name for a15col open_mode for a10col database_role for a18col instance_name for a15col host_name for a16col startup_time for a20COL STARTUP_TIME FOR A20SELECT d.name,d.db_unique_name,d.open_mode,d.database_role,i.instance_name,i.host_name, TO_CHAR(i.startup_time,’DD-MON-YYYY HH24:MI’) AS startup_time FROM gv$database dJOIN gv$instance iON d.inst_id = i.inst_id; NAME DB_UNIQUE_NAME OPEN_MODE DATABASE_ROLE INSTANCE_NAME HOST_NAME STARTUP_TIME———- ————— ———- —————— ————— —————- ——————–PRODCDB prodcdb MOUNTED PRIMARY prodcdb1 racnode1 30-MAY-2026 11:15 3. Execute nid utility to change the DBNAME and DBID [oracle@racnode1 ~]$ nid TARGET=SYS DBNAME=PROD PDB=ALL DBNEWID: Release 19.0.0.0.0 – Production on Sat May 30 11:21:51 2026 Copyright (c) 1982, 2019, Oracle and/or its affiliates. All rights reserved. Password:Connected to database PRODCDB (DBID=3232597591) Connected to server version 19.27.0 Control Files in database:+DATA/PRODCDB/CONTROLFILE/current.317.1234523607+DATA/PRODCDB/CONTROLFILE/current.316.1234523607 Change database ID and database name PRODCDB to PROD? (Y/[N]) => Y Proceeding with operationChanging database ID from 3232597591 to 646406868Changing database name from PRODCDB to PRODControl File +DATA/PRODCDB/CONTROLFILE/current.317.1234523607 – modifiedControl File +DATA/PRODCDB/CONTROLFILE/current.316.1234523607 – modifiedDatafile +DATA/PRODCDB/DATAFILE/system.312.123452347 – dbid changed, wrote new nameDatafile +DATA/PRODCDB/DATAFILE/sysaux.313.123452352 – dbid changed, wrote new nameDatafile +DATA/PRODCDB/DATAFILE/undotbs1.314.123452354 – dbid changed, wrote new nameDatafile +DATA/PRODCDB/86B637B62FE07A65E053F706E80A27CA/DATAFILE/system.323.123452457 – dbid changed, wrote new nameDatafile +DATA/PRODCDB/86B637B62FE07A65E053F706E80A27CA/DATAFILE/sysaux.324.123452457 – dbid changed, wrote new nameDatafile +DATA/PRODCDB/DATAFILE/users.315.123452354 – dbid changed, wrote new nameDatafile +DATA/PRODCDB/86B637B62FE07A65E053F706E80A27CA/DATAFILE/undotbs1.325.123452457 – dbid changed, wrote new nameDatafile +DATA/PRODCDB/DATAFILE/undotbs2.327.123452483 – dbid changed, wrote new nameDatafile +DATA/RACDB/DATAFILE/system.270.123308947 – dbid changed, wrote new nameDatafile +DATA/RACDB/DATAFILE/sysaux.271.123308952 – dbid changed, wrote new nameDatafile +DATA/RACDB/DATAFILE/undotbs1.272.123308954 – dbid changed, wrote new nameDatafile +DATA/RACDB/DATAFILE/users.273.123308955 – dbid changed, wrote new nameDatafile +DATA/RACDB/DATAFILE/undotbs2.281.123309057 – dbid changed, wrote new nameDatafile +DATA/PRODCDB/TEMPFILE/temp.322.123452361 – dbid changed, wrote new nameDatafile +DATA/PRODCDB/52EF8C0D04B3B300E0639838A8C0529B/TEMPFILE/temp.326.123452459 – dbid changed, wrote new nameDatafile +DATA/PRODCDB/51A171F8FDC0E142E0639838A8C0A4A0/TEMPFILE/temp.339.123452716 – dbid changed, wrote new nameControl File +DATA/PRODCDB/CONTROLFILE/current.317.1234523607 – dbid changed, wrote new nameControl File +DATA/PRODCDB/CONTROLFILE/current.316.1234523607 – dbid changed, wrote new nameInstance shut down Database name changed to PROD.Modify parameter file and generate a new password file before restarting.Database ID for database PROD changed to 646406868.All previous backups and archived redo logs for this database are unusable.Database is not aware of previous backups and archived logs in Recovery Area.Database has been shutdown, open database with RESETLOGS option.Succesfully changed database name and ID.DBNEWID – Completed succesfully. Oracle recommends that you use PDB=ALL. For backward compatibility, the default is PDB=NONE. Note: The database instance will automatically shut down upon successful completion 4. Start only one instance in nomount mode and change db_name parameter. SQL> startup nomountORACLE instance started.Total System Global Area 2717907328 bytesFixed Size 9181568 bytesVariable Size 838860800 bytesDatabase Buffers 1862270976 bytesRedo Buffers 7593984 bytes SQL> alter system set db_name=PROD scope=spfile sid=’*’;System altered. SQL> shut immediateORA-01507: database not mountedORACLE
Migrate Non-CDB RAC Database to PDB manually
Migrate Non-CDB RAC Database to PDB manually oracledna RAC May 29, 2026 To manually migrate a Non-CDB RAC database to a PDB in Oracle 19c, we must first create a CDB, then plug in the Non-CDB as a PDB using the DBMS_PDB.DESCRIBE and CREATE PLUGGABLE DATABASE commands, followed by running noncdb_to_pdb.sql inside the new PDB. Note: This procedure is irreversible, make sure to have valid backup of NON CDB database. 1. Shutdown the source non-cdb database and start in Read-Only mode. oracle@racnode1 ~]$ srvctl stop database -db racdb [oracle@racnode1 ~]$ srvctl status database -db racdb -vInstance racdb1 is not running on node racnode1Instance racdb2 is not running on node racnode2 [oracle@racnode1 ~]$ srvctl start database -db racdb -o “READ ONLY” [oracle@racnode1 ~]$ srvctl status database -db racdb -vInstance racdb1 is running on node racnode1. Instance status: Open,Readonly.Instance racdb2 is running on node racnode2. Instance status: Open,Readonly. 2. In non-CDB source database, generate manifest file by executing the “DBMS_PDB.DESCRIBE” package. The “DBMS_PDB.DESCRIBE” package will generate the xml file. SQL> exec dbms_pdb.describe(‘/tmp/CDB19.xml’);PL/SQL procedure successfully completed. [oracle@racnode1 ~]$ cd /tmp/[oracle@racnode1 tmp]$ ls -lrt *.xml-rw-r–r–. 1 oracle asmadmin 7957 May 29 12:01 CDB19.xml Shutdown the source non-CDB database.[oracle@racnode1 ~]$ srvctl stop database -db racdb [oracle@racnode1 ~]$ srvctl status database -db racdb -vInstance racdb1 is not running on node racnode1Instance racdb2 is not running on node racnode2 3. Check the compatibility in CDB to plug in the source non CDB as PDB. Connecto to the CDB database export ORACLE_SID=prodcdb1sqlplus / as sysdba set serveroutput onBEGINIF dbms_pdb.check_plug_compatibility(‘/tmp/CDB19.xml’) THENdbms_output.put_line(‘PDB compatible? ==> YES’);ELSEdbms_output.put_line(‘PDB compatible? ==> NO’);END IF;END;/ SQL> set serveroutput onBEGIN IF dbms_pdb.check_plug_compatibility(‘/tmp/CDB19.xml’) THEN dbms_output.put_line(‘PDB compatible? ==> YES’); ELSE dbms_output.put_line(‘PDB compatible? ==> NO’); END IF;END;/SQL> PDB compatible? ==> YES PL/SQL procedure successfully completed. So, source database is compatible to convert as pdb. SQL> select name, cause, type, message from pdb_plug_in_violations where name=’PROD’ and status <>’RESOLVED’;no rows selected 4. Plug the Non-CDB into the CDB as a PDB sqlplus / as sysdba SQL> show con_nameCON_NAME——————————CDB$ROOT SQL> show pdbs CON_ID CON_NAME OPEN MODE RESTRICTED———- —————————— ———- ———-2 PDB$SEED READ ONLY NO SQL> CREATE PLUGGABLE DATABASE PRODPDB1 USING ‘/tmp/CDB19.xml’ NOCOPY TEMPFILE REUSE;Pluggable database created. SQL> show pdbsCON_ID CON_NAME OPEN MODE RESTRICTED———- —————————— ———- ———-2 PDB$SEED READ ONLY NO3 PRODPDB1 MOUNTED 5. Connect to the PDB and run the noncdb_to_pdb.sql in new pdb. SQL> show pdbs CON_ID CON_NAME OPEN MODE RESTRICTED———- —————————— ———- ———-2 PDB$SEED READ ONLY NO3 PRODPDB1 MOUNTED SQL> alter pluggable database PRODPDB1 open;Warning: PDB altered with errors. SQL> show pdbsCON_ID CON_NAME OPEN MODE RESTRICTED———- —————————— ———- ———-2 PDB$SEED READ ONLY NO3 PRODPDB1 READ WRITE YES SQL> alter session set container=PRODPDB1;Session altered. SQL> show con_nameCON_NAME——————————PRODPDB1 SQL> @?/rdbms/admin/noncdb_to_pdb.sqlSQL> SET FEEDBACK 1SQL> SET NUMWIDTH 10SQL> SET LINESIZE 80SQL> SET TRIMSPOOL ONSQL> SET TAB OFFSQL> SET PAGESIZE 100SQL> SET VERIFY OFFSQL>SQL> WHENEVER SQLERROR EXIT;SQL>SQL> DOCDOC>#######################################################################DOC>#######################################################################DOC> The following statement will cause an “ORA-01403: no data found”DOC> error if we’re not in a PDB.DOC> This script is intended to be run right after plugin of a PDB,DOC> while inside the PDB…….. SQL> alter session set container = “&pdbname”; Session altered. SQL>SQL> alter session set “_enable_view_pdb”=false; Session altered. SQL>SQL> — leave the PDB in the same state it was when we startedSQL> BEGIN2 execute immediate ‘&open_sql &restricted_state’;3 EXCEPTION4 WHEN OTHERS THEN5 BEGIN6 IF (sqlcode <> -900) THEN7 RAISE;8 END IF;9 END;10 END;11 / PL/SQL procedure successfully completed. SQL>SQL> WHENEVER SQLERROR CONTINUE; 6. Restart the PDB and check the plug in violations. SQL> alter pluggable database PRODPDB1 close;Pluggable database altered. SQL> alter pluggable database PRODPDB1 open;Pluggable database altered. SQL> show pdbsCON_ID CON_NAME OPEN MODE RESTRICTED———- —————————— ———- ———-2 PDB$SEED READ ONLY NO3 PRODPDB1 READ WRITE NO SQL> alter session set container=PRODPDB1;Session altered. SQL> select name ,open_mode from v$pdbs;NAME OPEN_MODE———- ———-PRODPDB1 READ WRITE SQL> select name, cause, type, message from pdb_plug_in_violations where name=’PROD’ and status <>’RESOLVED’;no rows selected Disclaimer: Please note the above information is only for educational purpose and practised in personal test database only. Always test in test database before implementing in production database. The pre-requisites and ways of implementing may vary from one environment to another. Hence, not providing guarantee that it will work in your environment. Popular Posts Migrate Non-CDB RAC Database to PDB manually Relink The Oracle GridInfrastructure RAC Cluster Installation Changing the NLS_CHARACTERSET in Oracle 11.2.0.X Installing Oracle Enterprise Manager Cloud Control 13.5.0.0 (13.5) on Oracle Linux 9.4 Upgrade Oracle Database 19c non cdb to 26ai using Autoupgrade Categories ASM (2) DataGuard (11) News (1) OEM (1) Oracle Standalone Database (13) Patching (1) RAC (5) Uncategorized (1)
Relink The Oracle GridInfrastructure RAC Cluster Installation
Relink The Oracle GridInfrastructure RAC Cluster Installation oracledna RAC May 28, 2026 To relink Oracle Grid Infrastructure RAC/Cluster installation, we must stop CRS, unlock the Grid home, run the relink process as the Grid owner, and then re-lock/start CRS. This procedure is required after OS patching or upgrades to ensure Oracle Clusterware and ASM binaries are properly rebuilt. 1. Stop CRS on first node. [root@racnode1 ~]# crsctl stop crsCRS-2791: Starting shutdown of Oracle High Availability Services-managed resources on ‘racnode1’CRS-2673: Attempting to stop ‘ora.crsd’ on ‘racnode1’CRS-2790: Starting shutdown of Cluster Ready Services-managed resources on server ‘racnode1’CRS-2673: Attempting to stop ‘ora.qosmserver’ on ‘racnode1’CRS-2673: Attempting to stop ‘ora.racdb.db’ on ‘racnode1’CRS-2673: Attempting to stop ‘ora.chad’ on ‘racnode1’CRS-2677: Stop of ‘ora.chad’ on ‘racnode1’ succeededCRS-2677: Stop of ‘ora.racdb.db’ on ‘racnode1’ succeededCRS-33673: Attempting to stop resource group ‘ora.asmgroup’ on server ‘racnode1’CRS-2673: Attempting to stop ‘ora.OCR.dg’ on ‘racnode1’CRS-2673: Attempting to stop ‘ora.DATA.dg’ on ‘racnode1’CRS-2673: Attempting to stop ‘ora.LISTENER.lsnr’ on ‘racnode1’CRS-2673: Attempting to stop ‘ora.LISTENER_SCAN2.lsnr’ on ‘racnode1’CRS-2673: Attempting to stop ‘ora.LISTENER_SCAN3.lsnr’ on ‘racnode1’CRS-2673: Attempting to stop ‘ora.cvu’ on ‘racnode1’CRS-2677: Stop of ‘ora.LISTENER_SCAN2.lsnr’ on ‘racnode1’ succeededCRS-2673: Attempting to stop ‘ora.scan2.vip’ on ‘racnode1’CRS-2677: Stop of ‘ora.OCR.dg’ on ‘racnode1’ succeededCRS-2677: Stop of ‘ora.LISTENER_SCAN3.lsnr’ on ‘racnode1’ succeededCRS-2677: Stop of ‘ora.DATA.dg’ on ‘racnode1’ succeededCRS-2673: Attempting to stop ‘ora.asm’ on ‘racnode1’CRS-2677: Stop of ‘ora.LISTENER.lsnr’ on ‘racnode1’ succeededCRS-2677: Stop of ‘ora.scan2.vip’ on ‘racnode1’ succeededCRS-2673: Attempting to stop ‘ora.racnode1.vip’ on ‘racnode1’CRS-2673: Attempting to stop ‘ora.scan3.vip’ on ‘racnode1’CRS-2677: Stop of ‘ora.asm’ on ‘racnode1’ succeededCRS-2673: Attempting to stop ‘ora.ASMNET1LSNR_ASM.lsnr’ on ‘racnode1’CRS-2677: Stop of ‘ora.cvu’ on ‘racnode1’ succeededCRS-2677: Stop of ‘ora.racnode1.vip’ on ‘racnode1’ succeededCRS-2677: Stop of ‘ora.scan3.vip’ on ‘racnode1’ succeededCRS-2677: Stop of ‘ora.ASMNET1LSNR_ASM.lsnr’ on ‘racnode1’ succeededCRS-2673: Attempting to stop ‘ora.asmnet1.asmnetwork’ on ‘racnode1’CRS-2677: Stop of ‘ora.asmnet1.asmnetwork’ on ‘racnode1’ succeededCRS-33677: Stop of resource group ‘ora.asmgroup’ on server ‘racnode1’ succeeded.CRS-2677: Stop of ‘ora.qosmserver’ on ‘racnode1’ succeededCRS-2672: Attempting to start ‘ora.qosmserver’ on ‘racnode2’CRS-2672: Attempting to start ‘ora.scan2.vip’ on ‘racnode2’CRS-2672: Attempting to start ‘ora.scan3.vip’ on ‘racnode2’CRS-2672: Attempting to start ‘ora.cvu’ on ‘racnode2’CRS-2672: Attempting to start ‘ora.racnode1.vip’ on ‘racnode2’CRS-2676: Start of ‘ora.cvu’ on ‘racnode2’ succeededCRS-2676: Start of ‘ora.racnode1.vip’ on ‘racnode2’ succeededCRS-2676: Start of ‘ora.scan2.vip’ on ‘racnode2’ succeededCRS-2676: Start of ‘ora.scan3.vip’ on ‘racnode2’ succeededCRS-2672: Attempting to start ‘ora.LISTENER_SCAN2.lsnr’ on ‘racnode2’CRS-2672: Attempting to start ‘ora.LISTENER_SCAN3.lsnr’ on ‘racnode2’CRS-2676: Start of ‘ora.LISTENER_SCAN3.lsnr’ on ‘racnode2’ succeededCRS-2676: Start of ‘ora.LISTENER_SCAN2.lsnr’ on ‘racnode2’ succeededCRS-2676: Start of ‘ora.qosmserver’ on ‘racnode2’ succeededCRS-2673: Attempting to stop ‘ora.ons’ on ‘racnode1’CRS-2677: Stop of ‘ora.ons’ on ‘racnode1’ succeededCRS-2673: Attempting to stop ‘ora.net1.network’ on ‘racnode1’CRS-2677: Stop of ‘ora.net1.network’ on ‘racnode1’ succeededCRS-2792: Shutdown of Cluster Ready Services-managed resources on ‘racnode1’ has completedCRS-2677: Stop of ‘ora.crsd’ on ‘racnode1’ succeededCRS-2673: Attempting to stop ‘ora.storage’ on ‘racnode1’CRS-2673: Attempting to stop ‘ora.crf’ on ‘racnode1’CRS-2673: Attempting to stop ‘ora.drivers.acfs’ on ‘racnode1’CRS-2673: Attempting to stop ‘ora.mdnsd’ on ‘racnode1’CRS-2677: Stop of ‘ora.crf’ on ‘racnode1’ succeededCRS-2677: Stop of ‘ora.drivers.acfs’ on ‘racnode1’ succeededCRS-2677: Stop of ‘ora.storage’ on ‘racnode1’ succeededCRS-2673: Attempting to stop ‘ora.asm’ on ‘racnode1’CRS-2677: Stop of ‘ora.mdnsd’ on ‘racnode1’ succeededCRS-2677: Stop of ‘ora.asm’ on ‘racnode1’ succeededCRS-2673: Attempting to stop ‘ora.cluster_interconnect.haip’ on ‘racnode1’CRS-2677: Stop of ‘ora.cluster_interconnect.haip’ on ‘racnode1’ succeededCRS-2673: Attempting to stop ‘ora.ctssd’ on ‘racnode1’CRS-2673: Attempting to stop ‘ora.evmd’ on ‘racnode1’CRS-2677: Stop of ‘ora.evmd’ on ‘racnode1’ succeededCRS-2677: Stop of ‘ora.ctssd’ on ‘racnode1’ succeededCRS-2673: Attempting to stop ‘ora.cssd’ on ‘racnode1’CRS-2677: Stop of ‘ora.cssd’ on ‘racnode1’ succeededCRS-2673: Attempting to stop ‘ora.gipcd’ on ‘racnode1’CRS-2673: Attempting to stop ‘ora.gpnpd’ on ‘racnode1’CRS-2677: Stop of ‘ora.gipcd’ on ‘racnode1’ succeededCRS-2677: Stop of ‘ora.gpnpd’ on ‘racnode1’ succeededCRS-2793: Shutdown of Oracle High Availability Services-managed resources on ‘racnode1’ has completedCRS-4133: Oracle High Availability Services has been stopped. [root@racnode1 ~]# crsctl status res -tCRS-4535: Cannot communicate with Cluster Ready ServicesCRS-4000: Command Status failed, or completed with errors. 2) As root OS user, unlock the Grid Infrastructure Home [root@racnode1 ~]# cd /u01/app/19c/grid/crs/install [root@racnode1 install]# rootcrs.sh -unlockUsing configuration parameter file: /u01/app/19c/grid/crs/install/crsconfig_paramsThe log of current session can be found at:/u01/app/grid/crsdata/racnode1/crsconfig/crsunlock_racnode1_2026-05-28_11-13-46AM.log2026/05/28 11:13:46 CLSRSC-4012: Shutting down Oracle Trace File Analyzer (TFA) Collector.2026/05/28 11:14:08 CLSRSC-4013: Successfully shut down Oracle Trace File Analyzer (TFA) Collector.2026/05/28 11:14:09 CLSRSC-347: Successfully unlock /u01/app/19c/grid Note: On 12.1/12.2/19c releases, rootcrs.sh can be used instead of rootcrs.pl. Command as “rootcrs.sh -unlock” 3) As the Oracle Grid Infrastructure owner, relink the Grid Infrastructure Home as follows: [root@racnode1 ~]# su – grid [grid@racnode1 ~]$ export ORACLE_HOME=/u01/app/19c/grid [grid@racnode1 ~]$ /u01/app/19c/grid/bin/relink allwriting relink log to: /u01/app/19c/grid/install/relinkActions2026-05-28_11-20-29AM.log 4) As root OS user, execute the below command [grid@racnode1 ~]$ su – root [root@racnode1 ~]# cd /u01/app/19c/grid/rdbms/install/ [root@racnode1 install]# ./rootadd_rdbms.sh — [root@racnode1 ~]# cd /u01/app/19c/grid/crs/install [root@racnode1 install]# rootcrs.sh -lockUsing configuration parameter file: /u01/app/19c/grid/crs/install/crsconfig_paramsThe log of current session can be found at:/u01/app/grid/crsdata/racnode1/crsconfig/crslock_racnode1_2026-05-28_11-27-38AM.log2026/05/28 11:27:48 CLSRSC-329: Replacing Clusterware entries in file ‘oracle-ohasd.service’ — Note: On 12.1, use “rootcrs.sh -patch”.Note: On 12.2/21c, use “rootcrs.sh -lock” then “crsctl start crs”Note: On 12/21c, <GI_HOME>/crs/install/rootcrs.sh -postpatch, can be used to start and lock the GI home 5. As root user, start the CRS on node1. [root@racnode1 ~]# crsctl start crsCRS-4123: Oracle High Availability Services has been started. 5. Peform the 1 to 5 steps on node2. [root@racnode2 install]# crsctl start crsCRS-4123: Oracle High Availability Services has been started. [root@racnode2 ~]# crsctl status res -t——————————————————————————–Name Target State Server State details——————————————————————————–Local Resources——————————————————————————–ora.LISTENER.lsnrONLINE ONLINE racnode1 STABLEONLINE ONLINE racnode2 STABLEora.chadONLINE ONLINE racnode1 STABLEONLINE ONLINE racnode2 STABLEora.net1.networkONLINE ONLINE racnode1 STABLEONLINE ONLINE racnode2 STABLEora.onsONLINE ONLINE racnode1 STABLEONLINE ONLINE racnode2 STABLEora.proxy_advmOFFLINE OFFLINE racnode1 STABLEOFFLINE OFFLINE racnode2 STABLE——————————————————————————–Cluster Resources——————————————————————————–ora.ASMNET1LSNR_ASM.lsnr(ora.asmgroup)1 ONLINE ONLINE racnode1 STABLE2 ONLINE ONLINE racnode2 STABLEora.DATA.dg(ora.asmgroup)1 ONLINE ONLINE racnode1 STABLE2 ONLINE ONLINE racnode2 STABLEora.LISTENER_SCAN1.lsnr1 ONLINE ONLINE racnode2 STABLEora.LISTENER_SCAN2.lsnr1 ONLINE ONLINE racnode1 STABLEora.LISTENER_SCAN3.lsnr1 ONLINE ONLINE racnode1 STABLEora.OCR.dg(ora.asmgroup)1 ONLINE ONLINE racnode1 STABLE2 ONLINE ONLINE racnode2 STABLEora.asm(ora.asmgroup)1 ONLINE ONLINE racnode1 Started,STABLE2 ONLINE ONLINE racnode2 Started,STABLEora.asmnet1.asmnetwork(ora.asmgroup)1 ONLINE ONLINE racnode1 STABLE2 ONLINE ONLINE racnode2 STABLEora.cvu1 ONLINE ONLINE racnode1 STABLEora.qosmserver1 ONLINE ONLINE racnode1 STABLEora.racdb.db1 ONLINE ONLINE racnode1 Open,HOME=/u01/app/oracle/product/19c/db,STABLE2 ONLINE ONLINE racnode2 Open,HOME=/u01/app/oracle/product/19c/db,STABLEora.racnode1.vip1 ONLINE ONLINE racnode1 STABLEora.racnode2.vip1 ONLINE ONLINE racnode2 STABLEora.scan1.vip1 ONLINE ONLINE racnode2 STABLEora.scan2.vip1 ONLINE ONLINE racnode1 STABLEora.scan3.vip1 ONLINE ONLINE racnode1 STABLE 6. Review the relink.log files of both nodes. Review the relink.log files of both nodes located at the following directory for any error <Grid Infrastructure Oracle Home>/install/relink.log Disclaimer: Please note the above information is only for educational purpose and practised in personal test database only. Always test in test database before implementing in production database.
Clone Oracle Grid Infrastructure Home Using Golden Images
Clone Oracle Grid Infrastructure Home Using Golden Images oracledna RAC March 1, 2026 Instead of doing fresh installation of Grid Infrastructure Home with respective patches, we can clone the existing GI home using Golden Image method. By using this Golden Image, we can install GI home in another server with already applied patches. 1. Create directory at OS level to store the Golden Images. [grid@racnode1 ~]$ mkdir -p /u01/app/grid/GoldImage 2. Create the Golden Image of 19c GI home, from GI home execute the below command. [grid@racnode1 ~]$ cd /u01/app/19.0.0/grid [grid@racnode1 grid]$ ./gridSetup.sh -createGoldImage -destinationLocation /u01/app/grid/GoldImage -silentLaunching Oracle Grid Infrastructure Setup Wizard… Successfully Setup Software.Gold Image location: /u01/app/grid/GoldImage/grid_home_2026-03-01_02-01-26PM.zip 3. Verify whether the golden Image created or not. [grid@racnode1 ~]$ cd /u01/app/grid/GoldImage [grid@racnode1 GoldImage]$ ls -lrttotal 2802444-rw-r–r– 1 grid oinstall 2869701449 Mar 1 14:05 grid_home_2026-03-01_02-01-26PM.zi Disclaimer: Please note the above information is only for educational purpose and practised in personal test database only. Always test in test database before implementing in production database. The pre-requisites and ways of implementing may vary from one environment to another. Hence, not providing guarantee that it will work in your environment. Popular Posts Clone Oracle Grid Infrastructure Home Using Golden Images Enabling Flash Recovery Area In Oracle RAC 19c Database Restore OCR from backup in Oracle RAC 19c Downgrade Oracle Database from 19c to 11g by using dbdowngrade (Non CDB) Upgrade Oracle Database from 11g to 19c by DBUA (Non CDB) Categories ASM (2) DataGuard (2) News (1) Oracle Standalone Database (8) Patching (1) RAC (3)
Enabling Flash Recovery Area In Oracle RAC 19c Database
Enabling Flash Recovery Area In Oracle RAC 19c Database oracledna RAC February 14, 2026 This post is to demonstrate enabling Flash Recovery Area In Oracle RAC 19c Database. 1. Before enabling the fast recovery area, check the status of FRA. SQL> show parameter db_recovery; NAME TYPE VALUE———————————— ———– ——————————db_recovery_file_dest stringdb_recovery_file_dest_size big integer 0 2. Enable the FRA. SQL> alter system set db_recovery_file_dest_size=20G scope=both sid=’*’;System altered. SQL> alter system set DB_RECOVERY_FILE_DEST=’+DATA’ scope=both sid=’*’;System altered. 3. Verify the FRA status from all RAC nodes. SQL> show parameter db_recovery; NAME TYPE VALUE———————————— ———– ——————————db_recovery_file_dest string +DATAdb_recovery_file_dest_size big integer 20G 4. Check the FRA utilization and occupant details. set linesize 300col NAME for a20select name, ROUND(SPACE_LIMIT/1024/1024/1024,2) “Allocated Space(GB)”, round(SPACE_USED/1024/1024/1024,2) “Used Space(GB)”,round(SPACE_RECLAIMABLE/1024/1024/1024,2) “SPACE_RECLAIMABLE (GB)” ,(select round(ESTIMATED_FLASHBACK_SIZE/1024/1024/1024,2) from V$FLASHBACK_DATABASE_LOG) “Estimated Space (GB)”from V$RECOVERY_FILE_DEST; NAME Allocated Space(GB) Used Space(GB) SPACE_RECLAIMABLE (GB) Estimated Space (GB)——————– ——————- ————– ———————- ——————–+DATA 20 .81 0 — SQL> select * from v$flash_recovery_area_usage; FILE_TYPE PERCENT_SPACE_USED PERCENT_SPACE_RECLAIMABLE NUMBER_OF_FILES CON_ID———————– —————— ————————- ————— ——–CONTROL FILE .09 0 1 0REDO LOG 3.93 0 4 0ARCHIVED LOG 0 0 0 0BACKUP PIECE 0 0 0 0IMAGE COPY 0 0 0 0FLASHBACK LOG 0 0 0 0FOREIGN ARCHIVED LOG 0 0 0 0AUXILIARY DATAFILE COPY 0 0 0 0 8 rows selected. Disclaimer: Please note the above information is only for educational purpose and practised in personal test database only. Always test in test database before implementing in production database. The pre-requisites and ways of implementing may vary from one environment to another. Hence, not providing guarantee that it will work in your environment. Popular Posts Enabling Flash Recovery Area In Oracle RAC 19c Database Restore OCR from backup in Oracle RAC 19c Downgrade Oracle Database from 19c to 11g by using dbdowngrade (Non CDB) Upgrade Oracle Database from 11g to 19c by DBUA (Non CDB) Downgrade Oracle Database from 19c (19.3) to 11g (11.2.0.4) manually Categories ASM (2) DataGuard (2) News (1) Oracle Standalone Database (8) Patching (1) RAC (2)
Restore OCR from backup in Oracle RAC 19c
Restore OCR from backup in Oracle 19c oracledna RAC January 27, 2026 In this scenario, OCR located in ASM and we lost OCR, backup of OCR file is available.Lets learn how to retore OCR from backup OCR file. 1. List the nodes of cluster [root@racnode1 ~]# olsnodesracnode1racnode2 2. If OCR is located in ASM disk group, stop the Oracle Clusterware on all nodes by root user. [root@racnode1 ~]# crsctl stop crsCRS-2791: Starting shutdown of Oracle High Availability Services-managed resources on ‘racnode1’CRS-2673: Attempting to stop ‘ora.crsd’ on ‘racnode1’CRS-2790: Starting shutdown of Cluster Ready Services-managed resources on server ‘racnode1’CRS-2673: Attempting to stop ‘ora.qosmserver’ on ‘racnode1’CRS-2673: Attempting to stop ‘ora.racdb.db’ on ‘racnode1’CRS-2673: Attempting to stop ‘ora.chad’ on ‘racnode1’CRS-2677: Stop of ‘ora.racdb.db’ on ‘racnode1’ succeededCRS-33673: Attempting to stop resource group ‘ora.asmgroup’ on server ‘racnode1’CRS-2673: Attempting to stop ‘ora.OCRVOTEDISK.dg’ on ‘racnode1’CRS-2673: Attempting to stop ‘ora.DATA.dg’ on ‘racnode1’CRS-2673: Attempting to stop ‘ora.LISTENER.lsnr’ on ‘racnode1’CRS-2673: Attempting to stop ‘ora.LISTENER_SCAN2.lsnr’ on ‘racnode1’CRS-2673: Attempting to stop ‘ora.LISTENER_SCAN3.lsnr’ on ‘racnode1’CRS-2673: Attempting to stop ‘ora.cvu’ on ‘racnode1’CRS-2677: Stop of ‘ora.LISTENER.lsnr’ on ‘racnode1’ succeededCRS-2677: Stop of ‘ora.LISTENER_SCAN3.lsnr’ on ‘racnode1’ succeededCRS-2677: Stop of ‘ora.DATA.dg’ on ‘racnode1’ succeededCRS-2673: Attempting to stop ‘ora.racnode1.vip’ on ‘racnode1’CRS-2673: Attempting to stop ‘ora.scan3.vip’ on ‘racnode1’CRS-2677: Stop of ‘ora.OCRVOTEDISK.dg’ on ‘racnode1’ succeededCRS-2673: Attempting to stop ‘ora.asm’ on ‘racnode1’CRS-2677: Stop of ‘ora.LISTENER_SCAN2.lsnr’ on ‘racnode1’ succeededCRS-2677: Stop of ‘ora.chad’ on ‘racnode1’ succeededCRS-2677: Stop of ‘ora.racnode1.vip’ on ‘racnode1’ succeededCRS-2677: Stop of ‘ora.scan3.vip’ on ‘racnode1’ succeededCRS-2673: Attempting to stop ‘ora.scan2.vip’ on ‘racnode1’CRS-2677: Stop of ‘ora.asm’ on ‘racnode1’ succeededCRS-2673: Attempting to stop ‘ora.ASMNET1LSNR_ASM.lsnr’ on ‘racnode1’CRS-2677: Stop of ‘ora.scan2.vip’ on ‘racnode1’ succeededCRS-2677: Stop of ‘ora.cvu’ on ‘racnode1’ succeededCRS-2677: Stop of ‘ora.qosmserver’ on ‘racnode1’ succeededCRS-2677: Stop of ‘ora.ASMNET1LSNR_ASM.lsnr’ on ‘racnode1’ succeededCRS-2673: Attempting to stop ‘ora.asmnet1.asmnetwork’ on ‘racnode1’CRS-2677: Stop of ‘ora.asmnet1.asmnetwork’ on ‘racnode1’ succeededCRS-33677: Stop of resource group ‘ora.asmgroup’ on server ‘racnode1’ succeeded.CRS-2672: Attempting to start ‘ora.qosmserver’ on ‘racnode2’CRS-2672: Attempting to start ‘ora.scan2.vip’ on ‘racnode2’CRS-2672: Attempting to start ‘ora.scan3.vip’ on ‘racnode2’CRS-2672: Attempting to start ‘ora.cvu’ on ‘racnode2’CRS-2672: Attempting to start ‘ora.racnode1.vip’ on ‘racnode2’CRS-2676: Start of ‘ora.racnode1.vip’ on ‘racnode2’ succeededCRS-2676: Start of ‘ora.scan2.vip’ on ‘racnode2’ succeededCRS-2676: Start of ‘ora.scan3.vip’ on ‘racnode2’ succeededCRS-2672: Attempting to start ‘ora.LISTENER_SCAN2.lsnr’ on ‘racnode2’CRS-2672: Attempting to start ‘ora.LISTENER_SCAN3.lsnr’ on ‘racnode2’CRS-2676: Start of ‘ora.cvu’ on ‘racnode2’ succeededCRS-2676: Start of ‘ora.LISTENER_SCAN2.lsnr’ on ‘racnode2’ succeededCRS-2676: Start of ‘ora.LISTENER_SCAN3.lsnr’ on ‘racnode2’ succeededCRS-2676: Start of ‘ora.qosmserver’ on ‘racnode2’ succeededCRS-2673: Attempting to stop ‘ora.ons’ on ‘racnode1’CRS-2677: Stop of ‘ora.ons’ on ‘racnode1’ succeededCRS-2673: Attempting to stop ‘ora.net1.network’ on ‘racnode1’CRS-2677: Stop of ‘ora.net1.network’ on ‘racnode1’ succeededCRS-2792: Shutdown of Cluster Ready Services-managed resources on ‘racnode1’ has completedCRS-2677: Stop of ‘ora.crsd’ on ‘racnode1’ succeededCRS-2673: Attempting to stop ‘ora.asm’ on ‘racnode1’CRS-2673: Attempting to stop ‘ora.crf’ on ‘racnode1’CRS-2673: Attempting to stop ‘ora.mdnsd’ on ‘racnode1’CRS-2677: Stop of ‘ora.crf’ on ‘racnode1’ succeededCRS-2677: Stop of ‘ora.mdnsd’ on ‘racnode1’ succeededCRS-2677: Stop of ‘ora.asm’ on ‘racnode1’ succeededCRS-2673: Attempting to stop ‘ora.cluster_interconnect.haip’ on ‘racnode1’CRS-2677: Stop of ‘ora.cluster_interconnect.haip’ on ‘racnode1’ succeededCRS-2673: Attempting to stop ‘ora.ctssd’ on ‘racnode1’CRS-2673: Attempting to stop ‘ora.evmd’ on ‘racnode1’CRS-2677: Stop of ‘ora.ctssd’ on ‘racnode1’ succeededCRS-2677: Stop of ‘ora.evmd’ on ‘racnode1’ succeededCRS-2673: Attempting to stop ‘ora.cssd’ on ‘racnode1’CRS-2677: Stop of ‘ora.cssd’ on ‘racnode1’ succeededCRS-2673: Attempting to stop ‘ora.gipcd’ on ‘racnode1’CRS-2673: Attempting to stop ‘ora.gpnpd’ on ‘racnode1’CRS-2677: Stop of ‘ora.gipcd’ on ‘racnode1’ succeededCRS-2677: Stop of ‘ora.gpnpd’ on ‘racnode1’ succeededCRS-2793: Shutdown of Oracle High Availability Services-managed resources on ‘racnode1’ has completedCRS-4133: Oracle High Availability Services has been stopped. — [root@racnode2 ~]# crsctl stop crsCRS-2791: Starting shutdown of Oracle High Availability Services-managed resources on ‘racnode2’CRS-2673: Attempting to stop ‘ora.crsd’ on ‘racnode2’CRS-2790: Starting shutdown of Cluster Ready Services-managed resources on server ‘racnode2’CRS-2673: Attempting to stop ‘ora.racdb.db’ on ‘racnode2’CRS-2673: Attempting to stop ‘ora.qosmserver’ on ‘racnode2’CRS-2673: Attempting to stop ‘ora.chad’ on ‘racnode2’CRS-2677: Stop of ‘ora.racdb.db’ on ‘racnode2’ succeededCRS-33673: Attempting to stop resource group ‘ora.asmgroup’ on server ‘racnode2’CRS-2673: Attempting to stop ‘ora.OCRVOTEDISK.dg’ on ‘racnode2’CRS-2673: Attempting to stop ‘ora.DATA.dg’ on ‘racnode2’CRS-2673: Attempting to stop ‘ora.LISTENER.lsnr’ on ‘racnode2’CRS-2673: Attempting to stop ‘ora.LISTENER_SCAN1.lsnr’ on ‘racnode2’CRS-2673: Attempting to stop ‘ora.LISTENER_SCAN2.lsnr’ on ‘racnode2’CRS-2673: Attempting to stop ‘ora.LISTENER_SCAN3.lsnr’ on ‘racnode2’CRS-2673: Attempting to stop ‘ora.cvu’ on ‘racnode2’CRS-2673: Attempting to stop ‘ora.racnode1.vip’ on ‘racnode2’CRS-2677: Stop of ‘ora.racnode1.vip’ on ‘racnode2’ succeededCRS-2677: Stop of ‘ora.chad’ on ‘racnode2’ succeededCRS-2677: Stop of ‘ora.OCRVOTEDISK.dg’ on ‘racnode2’ succeededCRS-2677: Stop of ‘ora.DATA.dg’ on ‘racnode2’ succeededCRS-2673: Attempting to stop ‘ora.asm’ on ‘racnode2’CRS-2677: Stop of ‘ora.LISTENER_SCAN1.lsnr’ on ‘racnode2’ succeededCRS-2677: Stop of ‘ora.LISTENER_SCAN2.lsnr’ on ‘racnode2’ succeededCRS-2677: Stop of ‘ora.LISTENER_SCAN3.lsnr’ on ‘racnode2’ succeededCRS-2677: Stop of ‘ora.LISTENER.lsnr’ on ‘racnode2’ succeededCRS-2673: Attempting to stop ‘ora.scan1.vip’ on ‘racnode2’CRS-2673: Attempting to stop ‘ora.scan2.vip’ on ‘racnode2’CRS-2673: Attempting to stop ‘ora.scan3.vip’ on ‘racnode2’CRS-2673: Attempting to stop ‘ora.racnode2.vip’ on ‘racnode2’CRS-2677: Stop of ‘ora.scan2.vip’ on ‘racnode2’ succeededCRS-2677: Stop of ‘ora.scan1.vip’ on ‘racnode2’ succeededCRS-2677: Stop of ‘ora.cvu’ on ‘racnode2’ succeededCRS-2677: Stop of ‘ora.scan3.vip’ on ‘racnode2’ succeededCRS-2677: Stop of ‘ora.racnode2.vip’ on ‘racnode2’ succeededCRS-2677: Stop of ‘ora.asm’ on ‘racnode2’ succeededCRS-2673: Attempting to stop ‘ora.ASMNET1LSNR_ASM.lsnr’ on ‘racnode2’CRS-2677: Stop of ‘ora.ASMNET1LSNR_ASM.lsnr’ on ‘racnode2’ succeededCRS-2673: Attempting to stop ‘ora.asmnet1.asmnetwork’ on ‘racnode2’CRS-2677: Stop of ‘ora.asmnet1.asmnetwork’ on ‘racnode2’ succeededCRS-33677: Stop of resource group ‘ora.asmgroup’ on server ‘racnode2’ succeeded.CRS-2677: Stop of ‘ora.qosmserver’ on ‘racnode2’ succeededCRS-2673: Attempting to stop ‘ora.ons’ on ‘racnode2’CRS-2677: Stop of ‘ora.ons’ on ‘racnode2’ succeededCRS-2673: Attempting to stop ‘ora.net1.network’ on ‘racnode2’CRS-2677: Stop of ‘ora.net1.network’ on ‘racnode2’ succeededCRS-2792: Shutdown of Cluster Ready Services-managed resources on ‘racnode2’ has completedCRS-2677: Stop of ‘ora.crsd’ on ‘racnode2’ succeededCRS-2673: Attempting to stop ‘ora.asm’ on ‘racnode2’CRS-2673: Attempting to stop ‘ora.crf’ on ‘racnode2’CRS-2673: Attempting to stop ‘ora.mdnsd’ on ‘racnode2’CRS-2677: Stop of ‘ora.crf’ on ‘racnode2’ succeededCRS-2677: Stop of ‘ora.mdnsd’ on ‘racnode2’ succeededCRS-2677: Stop of ‘ora.asm’ on ‘racnode2’ succeededCRS-2673: Attempting to stop ‘ora.cluster_interconnect.haip’ on ‘racnode2’CRS-2677: Stop of ‘ora.cluster_interconnect.haip’ on ‘racnode2’ succeededCRS-2673: Attempting to stop ‘ora.ctssd’ on ‘racnode2’CRS-2673: Attempting to stop ‘ora.evmd’ on ‘racnode2’CRS-2677: Stop of ‘ora.ctssd’ on ‘racnode2’ succeededCRS-2677: Stop of ‘ora.evmd’ on ‘racnode2’ succeededCRS-2673: Attempting to stop ‘ora.cssd’ on ‘racnode2’CRS-2677: Stop of ‘ora.cssd’ on ‘racnode2’ succeededCRS-2673: Attempting to stop ‘ora.gipcd’ on ‘racnode2’CRS-2673: Attempting to stop ‘ora.gpnpd’ on ‘racnode2’CRS-2677: Stop of ‘ora.gpnpd’ on ‘racnode2’ succeededCRS-2677: Stop of ‘ora.gipcd’ on ‘racnode2’ succeededCRS-2793: Shutdown of Oracle High Availability Services-managed resources on ‘racnode2’ has completedCRS-4133: Oracle High Availability Services has been stopped. — If, above command returns any error, stop the Oracle Clusterware with force option by below command. crsctl stop crs -f 3.