Sunday 14 April 2024

Oracle RAC DBA Complete Course Content

 Dear All,


Those who want to learn Oracle RAC DBA from starting to Expert level follow the below course content .

All Below content will make video's and post on my Channel ..  YouTube @racsinfotech 

https://www.youtube.com/@RACSINFOTECH


RAC Course Contents:

1. Introduction to Oracle Custer ware / Cluster ware Architecture


>> Standalone Vs RAC

>> What is Oracle Cluster ware

>> Oracle Cluster ware Architecture and Cluster Services

>> RAC One Node Vs RAC database

>> Online Relocation

>> Networking in Cluster ware 

>> Cluster ware services Start-up and shutdown Sequences

>> what are OCR and Voting disk


2. Linux Installation and Configuration step by step on Oracle VM.


>> Oracle Virtual box 7 version setup on windows.

>> Installation of Linux OS (7.x)

>> OS Post Installation checks and Tasks

>> Node1 VM to Node2 VM Clone .


3. Network Setting and Configuration setup.


>> Public IP, VIP and Scan IP Configuration

>> DNS Server Configuration

>> VM Shared Disk Creation process 

>> how to create ASM Disks using VM shared disk's.


4. Cluster Installation and Configuration steps.


>> Custer Pre-installation Tasks

   > System requirements Checks 

   > Kernel parameters checks

   > Create required directory ,groups and users for grid & db install 

   > Execute the ./runcluvfy from any one of the nodes using below command

     ex: ./runcluvfy.sh stage -pre crsinst -n racnode1,racnode2 -verbose)


>> ssh user password less /equivalence configuration on cluster nodes.


>> Start the Oracle Cluster Installation and Configuration steps using ./gridSetup.sh 


>> Cluster Post Installation checks


ex:: ./cluvfy stage -post crsinst -n racnode1,racnode2 -verbose



5. Oracle RAC DB Installation and Configuration steps


>> Pre-installation tasks


   > System requirements Checks 

   > Kernel parameters checks

   > Create required directory ,groups and users for db install 

   > ssh user password less connection  setup / equivalence configuration


>> Installation and Configuration RAC DB.

>> RAC DB software Post Installation Tasks


6. Create Oracle ASM Disk groups >> +OCR,+DATA & +ARCH etc disk groups.


7. Oracle RAC Database Creation and Configuration


>> Pre-installation for Oracle RAC DB Configuration


./cluvfy stage -pre dbcfg -n racnode1,racnode2 -d Oracle_home -verbose


./cluvfy stage -pre dbinst -n node_list [-r {11gR1 | 11gR2 | 12cR1 | 12cR2}]  [-osdba osdba_group] [-d Oracle_home] [-fixup [-fixupdir fixup_dir] [-verbose]


>> Oracle RAC Database Creation and Configuration using dbca / command line using response file.


>> Post Installation Tasks for Oracle RAC DB Configuration 



8. Oracle ASM Introduction & Architecture 


>> Oracle ASM Storage Components.

>> what is Mirroring and Stripping in ASM.

>> what are the ASM instance parameters.

>> Oracle ASM Administration process / steps.



9. Oracle ASM Disk Groups Administering


>> How to Administering Oracle ASM Disk Groups.

>> How to Preform Adding Disk to Disk group and Dropping Disks from disk groups.

>> How to Preform Disk group Rebalance and Rebalance Power limit in ASM.



10. RAC Database Administration and Oracle Cluster ware Administration



Oracle Cluster ware Administration 


>> What are OCR and Voting Disks in Cluster.

>> What are the Cluster Resource and Services

>> What are crsctl vs srvctl utilities / tools.

>> How to Restarting Oracle Cluster ware and Services.

>> How to Restarting Oracle Cluster Databases.

>> How to Rebooting Cluster Nodes.

>> what is VIP, SCAN IP , Private and Public IP In RAC.


11. RAC Database Administration


>> Oracle RAC specific parameters In Init/spfile.

>> Difference between pfile and spfile in RAC database

>> Use of password file for RAC database

>> How to manage the Redo Log Files and Control file.

>> UNDO & TEMP Tablespaces use cases.



12. Backup and Recovery in Oracle RAC Database 


>> Backup strategy Understanding in RAC.

>> Types of Backups in RAC.

>> Recoveries scenarios in RAC.



13. Networking setup in RAC ( Listeners in Cluster ware / Local )


>> Grid / ASM Listeners.

>> Remote / SCAN Listeners (Remote Listeners).

>> Local Database Listeners (Local Listeners).



14. RAC Database Multitenant Architecture vs Non Multitenant Architecture


>> Oracle Multitenant Architecture In-detail.

>> what are CDB and PDB databases.

>> How to Install the Pluggable database(PDB).

>> How to Clone Pluggable Database(PDB).



15. ASM Cluster Filesystem (ACFS) Configuration and Administration


>> How to Configure ACFS in Linux.

>> How to Administering & Managing ACFS.


16. Patching Oracle RAC and RAC Databases


>> What are the OPatch Vs opatchauto utilities.

>> How to Patch Oracle Cluster ware.

>> How to Patch RAC Oracle Home.

>> How to Patch RAC Databases.

>> what is Datapatch.


17. Oracle Cluster/Grid and Database Upgradation from lower version to Higher


>> Pre-Upgrade steps.

>> How many ways we can perform db and grid  upgrade.

>> Post-upgrade steps.


18. How to perform Node Addition and Deletion in RAC


>> Pre-requisites for node addition.

>> Node addition steps 

>> post node addition steps.


>> Pre-requisites for node deletion.

>> Node deletion steps 

>> post node deletion steps.

19. How to Convert the Single Instance to RAC using DBCA / OEM / RCONFIG etc. 

**20. Interview Preparation Tips and Mock Interviews to crack Realtime Interviews.

**21. Resume / CV Preparation Tips and suggestions. 


Thanks,

Srini

Oracle Data Guard Interview Question and Answers

Dear All,


In this post i am sharing few Data Guard Interview Q&A :

 

Oracle Data Guard: Architecture:

Primary database, Data Guard uses the following processes:

Log writer (LGWR): LGWR collects transaction redo information and updates the online redo logs.

 

Synchronous (SYNC) standby database, LGWR passes the redo to an LNS (Log Writer Network Server) process, which ships the redo directly to the remote file server (RFS) process on the standby database. LGWR waits for confirmation from the LNS process before acknowledging the commit.

 

Asynchronous (ASYNC)standby databases, independent LNS processes read the redo from either the redo log buffer in memory or the online redo log file, and then ship the redo to its standby database.

 

Archiver (ARCn): The ARCn process creates a copy of the online redo log files locally for use in a primary database recovery operation. ARCn is also responsible for shipping redo data to an RFS process at a standby database and for proactively detecting and resolving gaps on all standby databases.

 

The Standby database, Data Guard uses the following processes:

Remote file server (RFS):

RFS receives redo information from the primary database and write into standby redo logs.

 

Archiver (ARCn): The ARCn process archives the standby redo logs.

 

 

Managed recovery (MRP):

   For physical standby databases only, MRP applies archived redo log information to the physical standby database.

Logical standby (LSP):

   For logical standby databases only, LSP controls the application of archived redo log information to the logical standby database.

 

 

How Many Type of Standby Databases In Oracle :

 

Ø Physical Standby Database:

 

    It’s identical to the primary database on a block-for-block basis.

It’s synchronized with the primary database through redo data received from the primary database.

Can be used concurrently for data protection and reporting.

Ø Logical Standby Database:

 

  It’s Shares the same schema definition

It’s kept synchronized with the primary database by transforming the data in the redo received from the primary database into SQL statements and then executing the SQL statements.

Can be used concurrently for data protection, reporting, and database upgrades

 

Ø Snapshot standby database:

 

     It’s a fully updatable standby database.

It’s created by converting a physical standby database

Can be used for updates, but those updates are discarded before the snapshot standby database is converted back into a physical standby database.

The snapshot standby database is appropriate when you require a temporary, updatable version of a physical standby database.

 

Data Protection Modes In Oracle DG :

 

Ø Maximum Protection:

This protection mode guarantees that no data loss occurs if the primary database fails.the redo data that is needed to recover  must be written to both the local online redo log and the standby redo log  before the transaction commits. In this mode To ensure that data loss does not occur, the primary database shuts down if redo is not shipped to standby database.

 

 

Ø Maximum Availability:

It works similar Maximum protection but the primary database does not shut down if redo is not shipped

to a remote standby redo log. Instead, the primary database operates in an unsynchronized mode until the fault is corrected and all the gaps in the redo log files are resolved.

 

Ø Maximum Performance ( Default)

     In case of maximum performance this allow a transaction to commit as soon as the redo data needed to recover that transaction is written to the local online redo log.

 

Why we need to enable Force Logging Mode:

 

Ø  FORCE LOGGING mode is recommended to ensure data consistency and forces redo to be generated even when NOLOGGING operations are executed.

 

Standby Redo Logs:

  Are used to store redo data received from the primary database.

Synchronous transport mode,Real-time apply

 

What is real-time apply in DG ?

Log buffer on primary is read by LGWR and sent to redo shipping process LNS. LNS now transfers this to RFS and is written to SRL's. MRP will apply from SRL.

 

Setting Initialization Parameters on the Primary Database to Control Redo Transport

LOG_ARCHIVE_CONFIG,LOG_ARCHIVE_DEST_n,DB_FILE_NAME_CONVERT,LOG_FILE_NAME_CONVERT,STANDBY_FILE_MANAGEMENT,DB_UNIQUE_NAME

 

SYNC: Specifies that redo data generated by a transaction must have been received at a destination before the transaction can commit; otherwise, the destination is deemed to have failed.

ASYNC (default): Specifies that redo data generated by a transaction need not have been received at a destination that has this attribute before the transaction can commit

AFFIRM: Specifies that a redo transport destination acknowledges redo data received after writing it to the standby redo log.

NOAFFIRM: Specifies that a redo transport destination acknowledges received redo data before writing it to the standby redo log.

the default is AFFIRM when the SYNC attribute is specified and NOAFFIRM when the ASYNC attribute is specified.

 

Logical Standby Database or SQL Apply Architecture:

A logical standby database provides benefits in disaster recovery, high availability, and data protection that are similar to those of a physical standby database.

 

Benefits of Implementing a Logical Standby Database

Provides data protection:

Primary database corruptions not propagated

Provides disaster recovery capabilities:

-Switchover and failover

– Minimizes down time for planned and unplanned outages

Can be used to upgrade Oracle Database software and apply patch sets

 

How to Create and Managing a Snapshot Standby Database?

 

A snapshot standby database is a fully updatable standby database created by converting a physical standby database.

Snapshot standby databases receive and archive—but do not apply—redo data from a primary database.

When the physical standby database is converted, an implicit guaranteed restore point is created and Flashback Database is enabled.

 

What is Oracle Active Data Guard:

 

Its a new feature of 11g database.

This feature includes

 1. Real-time query

 2. RMAN block change tracking on a physical standby database.

 

What is fast sync?

Data Guard maximum availability supports the use of the NOAFFIRM redo transport attribute. A standby database returns receipt acknowledgment to its primary database as soon as redo is received in memory. The standby database does not wait for the Remote File Server (RFS) to write to a standby redo log file.

 

This feature provides increased primary database performance in Data Guard configurations using maximum availability and SYNC redo transport. Fast Sync isolates the primary database in a maximum availability configuration from any performance impact due to slow I/O at a standby database.

 

What is far sync?

 

Oracle Far Sync is an Oracle 12c new feature for Oracle Data Guard. This feature is meant to resolve the performance problems induced by network latency when we maintain a standby database geographically distant of the primary database. In this type of situation we sometimes have to make a compromise between performance and data loss. The Far Sync feature offer you both.

Far Sync instance receive data synchronously from the primary database and then forward it asynchronously to up de 29 remote destinations.

 

The far sync database is not a standard database, it only contains a specific controlfile, a spfile and standby redologs. This database must be placed near the primary database to guarantee an optimal network latency during synchronous replication. But be careful, don’t place this database on the same geographical place than the primary, because if your primary database experiences a geographical disaster, your Far Sync will be impacted too, and some data could be lost.

 

In case of an outage on the primary database, the standard failover procedure applies and the far sync instance guarantee that no data is lost during the failover.

 

Step by step to Creating Standby database

1. Enable Forced Logging  (Primary database)

2. Create a Password File

3. Configure a Standby Redo Log

   a. Ensure log file sizes are identical on the primary and standby databases.

The size of the current standby redo log files must exactly match the size of the current primary database online redo log files.

   b. Determine the appropriate number of standby redo log file groups.

 

Minimally, the configuration should have one more standby redo log file group than the number of online redo log file groups on the primary database. However, the recommended number of standby redo log file groups is dependent on the number of threads on the primary database. Use the following equation to determine an appropriate number of standby redo log file groups:

 

(maximum number of logfiles for each thread + 1) * maximum number of threads

   c. Create standby redo log file groups. >>>ALTER DATABASE ADD STANDBY LOGFILE GROUP 10

  

4. Set Primary Database Initialization Parameters

 

Primary : PROD

DB_NAME=PROD

DB_UNIQUE_NAME=PROD

LOG_ARCHIVE_CONFIG='DG_CONFIG=(PROD,STBY)'

CONTROL_FILES='/arch1/PROD/control1.ctl', '/arch2/PROD/control2.ctl'

LOG_ARCHIVE_DEST_1=

 'LOCATION=/arch1/PROD/

  VALID_FOR=(ALL_LOGFILES,ALL_ROLES)

  DB_UNIQUE_NAME=PROD'

LOG_ARCHIVE_DEST_2=

 'SERVICE=STBY LGWR ASYNC

  VALID_FOR=(ONLINE_LOGFILES,PRIMARY_ROLE)

  DB_UNIQUE_NAME=STBY'

LOG_ARCHIVE_DEST_STATE_1=ENABLE

LOG_ARCHIVE_DEST_STATE_2=ENABLE

REMOTE_LOGIN_PASSWORDFILE=EXCLUSIVE

LOG_ARCHIVE_FORMAT=%t_%s_%r.arc

LOG_ARCHIVE_MAX_PROCESSES=30

 

Primary Database: Standby Role Initialization Parameters

 

FAL_SERVER=STBY

FAL_CLIENT=PROD

DB_FILE_NAME_CONVERT='STBY','PROD'

LOG_FILE_NAME_CONVERT=

 '/arch1/STBY/','/arch1/PROD/','/arch2/STBY/','/arch2/PROD/'

STANDBY_FILE_MANAGEMENT=AUTO

 

 

Verifying Flashback and converting to snapshot standby database

 

1. Flash back should be on

DGMGRL> connect sys/Welcome12

Connected.

DGMGRL> edit database 'PROD' set state='apply-on';

DGMGRL> convert database PROD to snapshot standby;

 

Convert the snapshot standby database back to a physical standby database.

DGMGRL> convert database PROD to physical standby;

 

Active Data guard >>>>

 

DGMGRL> connect sys/Welcome12

Disable Redo Apply on your physical standby database.

DGMGRL> edit database 'PROD' set state='apply-off';

sqlplus / as sysdba >>>>>>> On standby

SQL> alter database open read only;

Restart Redo Apply and confirm your change. Exit DGMGRL

DGMGRL> edit database 'PROD' set state='apply-on';

 

We can enable block change tracking on Active dataguard

 

SQL> alter database enable block change tracking;

 

How to Change the protection mode in DG?

 

show database PROD LogXptMode;

LogXptMode = 'ASYNC'

 

show parameter log_archive_dest

<< Output formatted below for display >>

NAME TYPE VALUE

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

log_archive_dest_1 string LOCATION=

USE_DB_RECOVERY_FILE_DEST

log_archive_dest_2 string service=PROD async valid_for

(online_logfile,primary_role)

db_unique_name=PROD

 

DGMGRL> edit database 'PROD' set property

'LogXptMode'='SYNC';

Property "LogXptMode" updated

 

DGMGRL> edit configuration set protection mode as

maxavailability;

Succeeded.

 

set the protection mode back to MAXPERFORMANCE.

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

 

DGMGRL> edit configuration set protection mode as

maxperformance;

Succeeded.

 

DGMGRL> edit database PROD set property

'LogXptMode'='ASYNC';

Property "LogXptMode" updated

 

Enabling Fast-Start Failover

 

DGMGRL> edit database pc01prmy

> set property FastStartFailoverTarget = PROD;

Property "faststartfailovertarget" updated

DGMGRL> edit database PROD

> set property FastStartFailoverTarget = pc01prmy;

Property "faststartfailovertarget" updated

 

Set the fast-start failover threshold to 90 seconds.

 

DGMGRL> edit configuration

> set property FastStartFailoverThreshold=90;

Property "faststartfailoverthreshold" updated

DGMGRL> enable fast_start failover;

Enabled.

 

Thanks,

Srini

 

 

 

 

 

 

 

 

 

 

 

 


Tuesday 2 April 2024

Oracle DBA and RAC DBA demo sessions on 6th Apr 2024

 

Oracle RAC DBA Online Training Demo session on 6th Apr 2024 7:30AM IST to 8:30AM IST.

Join Zoom Meeting

https://us06web.zoom.us/j/89577110408?pwd=qtoOaRG6YKQJbtiNGegVoaEn7AuaUw.1

Meeting ID: 895 7711 0408

Passcode: 556114

 

Course Index :

https://anjaniappsdba.blogspot.com/2024/03/oracle-19c-rac-dba-online-training.html

 

 

 

 

Contact us for online training's , Interview and job support

+91 9392634440

racsinfotech@gmail.com 

 

Join WhatsApp's Group : https://chat.whatsapp.com/BctnmdzEH3pJh8yUhjtQDA

 

Telegram Group :

https://t.me/+R2pg2-9Nsb1lNjFl

 

Follow My Oracle DBA and Apps DBA Blog :

https://anjaniappsdba.blogspot.com/

 

YouTube Channel :

www.youtube.com/@RACSINFOTECH 

Oracle DBA Online Training Demo session on 6th Apr 2024 7:30PM IST to 8:30PM IST.

 

Join Zoom Meeting

https://us06web.zoom.us/j/83583153696?pwd=3haaZku3ySEhbp4sRqCxknInboSSDY.1

Meeting ID: 835 8315 3696

Passcode: 800138

 

Course Index :

https://anjaniappsdba.blogspot.com/2024/03/oracle-19c-dba-training-apr-2024-course.html

 

 

 

 

Contact us for online training's , Interview and job support

+91 9392634440

racsinfotech@gmail.com 

 

Join WhatsApp's Group : https://chat.whatsapp.com/BctnmdzEH3pJh8yUhjtQDA

 

Telegram Group :

https://t.me/+R2pg2-9Nsb1lNjFl

 

Follow My Oracle DBA and Apps DBA Blog :

https://anjaniappsdba.blogspot.com/

 

YouTube Channel :

www.youtube.com/@RACSINFOTECH 


Thanks,

Srini

Wednesday 27 March 2024

Oracle 19C RAC DBA Online Training - April 2024

 DEAR ALL,


In this Post i am sharing ORACLE 19C RAC  DBA Online Training details .

Oracle 19C RAC DBA Course : Duration 35 hours 


9th Apr 2024  -  7:30PM to 8:30 PM IST ..( Only on Weekdays)


Course Fee : 15K INR 


Contact us :  racsinfotech@gmail.com   / +91 9392634440     for more details ..


MODULE 1: INTRODUCTION TO ORACLE RAC

What is Oracle RAC?

Advantages and use cases of Oracle RAC.

Architecture of Oracle RAC.

Key components of Oracle RAC (Cluster ware, Database Instances, ASM, VIPs, SCAN).

High Availability and Scalability in RAC.


MODULE 2: ORACLE RAC INSTALLATION AND CONFIGURATION


Hardware and software prerequisites.

Preparing the cluster nodes.

Installing Grid Infrastructure.

Installing Oracle Database Software.

Post-installation steps and verification.

Oracle RAC-specific installation options.

Troubleshooting installation issues.


MODULE 3: RAC DATABASE CREATION AND MANAGEMENT


Creating a RAC database using DBCA.

Manual RAC database creation.

Understanding services and managing services in RAC.

Managing database instances.


MODULE 4: STORAGE MANAGEMENT IN RAC


Understanding Oracle ASM (Automatic Storage Management).

Creating ASM Disk Groups.

ASM Disk Management and Monitoring.

Using ASM with RAC.

Mirroring and striping in ASM.

Difference Between  non-ASM & ASM Storage.


MODULE 5: CLUSTERWARE AND NODE MANAGEMENT


Cluster ware components and architecture.

Administering Oracle Cluster ware.

Node addition and removal.

Troubleshooting Cluster ware issues Explanation. .

Voting disks and OCR management.


MODULE 6: LOAD BALANCING AND CONNECTION MANAGEMENT


Oracle Services and SCAN (Single Client Access Name).

Implementing load balancing and failover.

What is  TAF (Transparent Application Failover).

How to Configure connection pools for RAC Explanation.


MODULE 7: BACKUP AND RECOVERY IN RAC


RAC-specific backup strategies.

RMAN (Recovery Manager) in RAC.

Flashback technology in RAC.


MODULE 8: RAC SECURITY AND AUDITING


Managing user privileges and roles in RAC.

Auditing and compliance in RAC.

Securing the RAC environment.


MODULE 9: PATCHING AND UPGRADES


Applying patches and updates in RAC.

Upgrading RAC databases to Oracle 19c.

Rolling patching techniques.

Best practices for patching and upgrades.


MODULE 10: TROUBLESHOOTING AND PERFORMANCE TUNING


Identifying and resolving performance bottlenecks explanation .

Diagnostic tools and utilities.

RAC-specific performance tuning.

Common issues and resolutions in RAC.

Best practices for troubleshooting.


MODULE 11: ADVANCED TOPICS - Explanation 

RAC in the Cloud (Oracle Cloud, AWS, Azure).

RAC and Multitenant databases.


MODULE 12: REAL-WORLD SCENARIOS AND BEST PRACTICES


Case studies and real-world deployment scenarios.

High Availability considerations.

Disaster recovery strategies.

Best practices for managing Oracle RAC in production environments.


Thanks,

Srini

Oracle 19C DBA Training - APR 2024 Course Index

 Dear All,


In this Post i am sharing ORACLE 19C DBA Online Training details .

Oracle 19C DBA Course : Duration 40 hours 
9th Apr 2024  -  7:30AM to 8:30 AM IST ..( Only on Weekdays)
Course Fee : 15K INR 

Contact us :  racsinfotech@gmail.com   / +91 9392634440     for more details ..



This training Prepared with Realtime Scenarios   , It will useful for jobseekers and students those who are looking for jobs in IT post studies .

Course Index : 

Oracle 19C DBA Training with Live Labs.


1. 12c and 19c Architecture.

2. DBA Roles and Responsibilities 

3. Required tools and Prerequisites for DBA Training.

4. VirtualBox , Linux OS and Database Installation .

5. How to connect to database and Network setup .

6. User Management ( user , role , profile creation etc .. )

7. Tablespace / Storage management

8. Backup and Recovery.

9. Database Patching.

10. Database Clone.

11. Performance Tuning Basics( AWR/ADDM/ASH reports ).

12. ASM and DG Installation / Configuration .

13. Database Upgrade steps (  12c to 19c and 19C to 21C  ) .

14. Frequently asked Interview questions and answers Discussions.

15. CV Preparation suggestions and support.

16. Real time Scenarios and excises.


Note : we will provide the Lab setup* on your PC/ Laptops ,

 This training designed completely with Realtime scenarios .


Thanks,

Srini

Oracle 19C RAC Node Addition steps

 Dear All,

In this post i am going to share the rac node addition steps ..

Present we are having 2 node Rac setup , we are going to add Node3 ..


Before node addition : 




Node addtion :: RAC 

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

1)  Configure Node3 will all pre-requisites and add IP's into remain nodes.

>> Add these IPs into resvers zone / forward zone .. /var/named/localdomain.zone ..   /var/named/4.38.10.in-addr.arpa


node3 : preparation steps 

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


cat /etc/resolv.conf


cd /var/named/


0.168.192.in-addr.arpa

localdomain.zone


[root@racs2 named]# cat localdomain.zone

$TTL 86400

@ IN SOA racs2.localdomain.com. root.localdomain.com. (

2014051001 ; serial

3600 ; refresh

1800 ; retry

604800 ; expire

86400 ; minimum

)

@ IN NS racs2.localdomain.

localhost IN A 127.0.0.1

racs1 IN A 192.168.0.71

racs2 IN A 192.168.0.72

racs1-priv IN A 192.168.10.1

racs2-priv IN A 192.168.10.2

racs1-vip IN A 192.168.0.81

racs2-vip IN A 192.168.0.82

racs-scan IN A 192.168.0.91

racs-scan IN A 192.168.0.92

racs-scan IN A 192.168.0.93

[root@racs2 named]# 

>>>create the grid and oracle users on Node3 

rpm -qa|grep oracle

create the directores for oracle home, grid home , create the groups and add those to grid and oracle users 

2) Install Oracle asm Librarys , Grid software , oracle software , create instance3 and attache the shared disks on node3.

oracleasm init

oracleasm configure -i  >> grid , oinstall , y , y

oracleasm scandisks

oracleasm listdisks

>> GI Installation -> GI_HOME/gridSetup.sh (GUI)

Add new cluster nodes -> GI_HOME/gridSetup.sh (GUI) or GI_HOME/addnode/addnode.sh (Command line)

>> OH Installation -> runInstaller (GUI)

Add OH on newly added nodes -> ORACLE_HOME/addnode/addnode.sh (GUI) or ORACLE_HOME/addnode/addnode.sh (Command line)

>> create database/create Instance -> ORACLE_HOME/bin/dbca (GUI)

add 3rd Insatnce -> ORACLE_HOME/bin/dbca (GUI) or srvctl add instance (Command line)


3) Enable the password less connectivity between all the nodes ..

./sshUserSetup.sh -user oracle -hosts "racs1 racs2 racs3" -noPromptPassphrase -confirm -advanced

./sshUserSetup.sh -user grid -hosts "racs1 racs2 racs3" -noPromptPassphrase -confirm -advanced

./sshUserSetup.sh -user root -hosts "racs1 racs2 racs3" -noPromptPassphrase -confirm -advanced


4) Verify the Cluvfy Utility & Node pre-requisites - From Node1 

/u02/app/19.0.0/grid_home/bin   ## node to node comparison check 

>> cd $G_H/bin/cluvfy comp peer -n racs3 -refnode racs1 -r 19

/u02/app/19.0.0/grid_home/bin   ## pre-requisites check 

cluvfy stage -pre nodeadd -n racs3 -fixup -verbose

if any fixup.sh .. run from node3 ... under root users 

export IGNORE_PREADDNODE_CHECKS=Y

/u02/app/19.0.0/grid_home/addnode

./addnode.sh -silent "CLUSTER_NEW_NODES={racs3.localdomain.com}" "CLUSTER_NEW_VIRTUAL_HOSTNAMES={racs3-vip.localdomain.com}"

orainstRoot.sh 

root.sh

5) Check the cluster status 

crsctl stat res -t 

crsctl check cluster -all 


6) set the oracle home for racs3 from racs1 ..

set the environment 

$ORACLE_HOME/addnode 

./addnode.sh -silent "CLUSTER_NEW_NODES={racs3}" "CLUSTER_NEW_VIRTUAL_HOSTNAMES={racs3-vip}"


root.sh 

7) Update the inventory for Racs3 

cd $O_H/oui/bin/runInstaller -updateNodeList -noClusterEnabled ORACLE_HOME=homepath CLUSTER_NODES=racs1,racs2,racs3 CRS=false

"INVENTORY_LOCATION=/u02/app/oraInventory" LOCAL_NODE=3

cd $ORACLE_HOME/addnode

 ./addnode.sh "CLUSTER_NEW_NODES={racs3}"

cd $ORACLE_HOME/bin

./dbca 

>> run the root.sh

add instance to Cluster database for Racs3 node 

srvctl add instance -d RACS -i racs3 -n racs3  ## by using dbca also we can add the node3 instance to cluster .


After node addition : 






Thanks,

Srini

Tuesday 5 March 2024

RMAN-06136: Oracle error from auxiliary database: ORA-01503: CREATE CONTROLFILE failed

 Dear All,


In this post i am going to show you RMAN Duplicate database clone errors fixup on Oracle database 19C .


while im doing RAC to Non RAC clone i faced this error on Target server .


[oracle@uatdb01 ~]$ rman auxiliary /


Recovery Manager: Release 19.0.0.0.0 - Production on Wed Mar 6 09:06:18 2024

Version 19.22.0.0.0


Copyright (c) 1982, 2019, Oracle and/or its affiliates.  All rights reserved.


connected to auxiliary database: UATDB (not mounted)


RMAN> duplicate database to 'UATDB' backup location '/u01/Backup' nofilenamecheck;


Starting Duplicate Db at 06-MAR-24

searching for database ID

found backup of database ID 1143261986



RMAN-00571: ===========================================================

RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============

RMAN-00571: ===========================================================

RMAN-03002: failure of Duplicate Db command at 03/06/2024 09:09:00

RMAN-05501: aborting duplication of target database

RMAN-06136: Oracle error from auxiliary database: ORA-01503: CREATE CONTROLFILE failed

ORA-00349: failure obtaining block size for '+DATA'

ORA-29701: unable to connect to Cluster Synchronization Service

ORA-29701: unable to connect to Cluster Synchronization Service

ORA-29701: unable to connect to Cluster Synchronization Service



Solution for the above error :

Add below values in parameter file on target server ..  update the correct path for your datafile and logfiles location in target side parameter .. that will resolve the below error .

*.cluster_database=FALSE

#*.control_files='/u01/app/oracle/oradata/UATDB/control01.ctl','/u01/app/oracle/fast_recovery_area/UATDB/control02.ctl'
*.db_file_name_convert='+DATA/RACSDB/DATAFILE','/u01/app/oracle/oradata/UATDB'
*.log_file_name_convert='+DATA/RACSDB/ONLINELOG','/u01/app/oracle/oradata/UATDB','+ARCH/RACSDB/ONLINELOG','/u01/app/oracle/oradata/UATDB'


After that restart the duplicate command 

RMAN> duplicate database to 'UATDB' backup location '/u01/Backup' nofilenamecheck;



Starting Duplicate Db at 06-MAR-24
searching for database ID
found backup of database ID 1143261986

contents of Memory Script:
{
   sql clone "create spfile from memory";
}
executing Memory Script

sql statement: create spfile from memory

contents of Memory Script:
{
   shutdown clone immediate;
   startup clone nomount;
}
executing Memory Script

Oracle instance shut down

connected to auxiliary database (not started)
Oracle instance started

Total System Global Area    1912602056 bytes

Fixed Size                     8941000 bytes
Variable Size                436207616 bytes
Database Buffers            1459617792 bytes
Redo Buffers                   7835648 bytes

contents of Memory Script:
{
   sql clone "alter system set  control_files =
  ''/u01/app/oracle/fast_recovery_area/UATDB/controlfile/o1_mf_lyhstm01_.ctl'' comment=
 ''Set by RMAN'' scope=spfile";
   sql clone "alter system set  db_name =
 ''RACSDB'' comment=
 ''Modified by RMAN duplicate'' scope=spfile";
   sql clone "alter system set  db_unique_name =
 ''UATDB'' comment=
 ''Modified by RMAN duplicate'' scope=spfile";
   shutdown clone immediate;
   startup clone force nomount
   restore clone primary controlfile from  '/u01/Backup/c-1143261986-20240306-00';
   alter clone database mount;
}
executing Memory Script

sql statement: alter system set  control_files =   ''/u01/app/oracle/fast_recovery_area/UATDB/controlfile/o1_mf_lyhstm01_.ctl'' comment= ''Set by RMAN'' scope=spfile

sql statement: alter system set  db_name =  ''RACSDB'' comment= ''Modified by RMAN duplicate'' scope=spfile

sql statement: alter system set  db_unique_name =  ''UATDB'' comment= ''Modified by RMAN duplicate'' scope=spfile

Oracle instance shut down

Oracle instance started

Total System Global Area    1912602056 bytes

Fixed Size                     8941000 bytes
Variable Size                436207616 bytes
Database Buffers            1459617792 bytes
Redo Buffers                   7835648 bytes

Starting restore at 06-MAR-24
allocated channel: ORA_AUX_DISK_1
channel ORA_AUX_DISK_1: SID=34 device type=DISK

channel ORA_AUX_DISK_1: restoring control file
channel ORA_AUX_DISK_1: restore complete, elapsed time: 00:00:01
output file name=/u01/app/oracle/fast_recovery_area/UATDB/controlfile/o1_mf_lyhstm01_.ctl
Finished restore at 06-MAR-24

database mounted
released channel: ORA_AUX_DISK_1
allocated channel: ORA_AUX_DISK_1
channel ORA_AUX_DISK_1: SID=34 device type=DISK
RMAN-05158: WARNING: auxiliary (tempfile) file name +DATA/RACSDB/TEMPFILE/temp.264.1159692461 conflicts with a file used by the target database
RMAN-05529: warning: DB_FILE_NAME_CONVERT resulted in invalid ASM names; names changed to disk group only.

contents of Memory Script:
{
   set until scn  7634718;
   set newname for datafile  1 to
 "/u01/app/oracle/oradata/UATDB/system.257.1159692337";
   set newname for datafile  3 to
 "/u01/app/oracle/oradata/UATDB/sysaux.258.1159692373";
   set newname for datafile  4 to
 "/u01/app/oracle/oradata/UATDB/undotbs1.259.1159692387";
   set newname for datafile  5 to
 "/u01/app/oracle/oradata/UATDB/undotbs2.265.1159692665";
   set newname for datafile  7 to
 "/u01/app/oracle/oradata/UATDB/users.260.1159692389";
   restore
   clone database
   ;
}
executing Memory Script

executing command: SET until clause

executing command: SET NEWNAME

executing command: SET NEWNAME

executing command: SET NEWNAME

executing command: SET NEWNAME

executing command: SET NEWNAME

Starting restore at 06-MAR-24
using channel ORA_AUX_DISK_1

channel ORA_AUX_DISK_1: starting datafile backup set restore
channel ORA_AUX_DISK_1: specifying datafile(s) to restore from backup set
channel ORA_AUX_DISK_1: restoring datafile 00001 to /u01/app/oracle/oradata/UATDB/system.257.1159692337
channel ORA_AUX_DISK_1: restoring datafile 00003 to /u01/app/oracle/oradata/UATDB/sysaux.258.1159692373
channel ORA_AUX_DISK_1: restoring datafile 00004 to /u01/app/oracle/oradata/UATDB/undotbs1.259.1159692387
channel ORA_AUX_DISK_1: restoring datafile 00005 to /u01/app/oracle/oradata/UATDB/undotbs2.265.1159692665
channel ORA_AUX_DISK_1: restoring datafile 00007 to /u01/app/oracle/oradata/UATDB/users.260.1159692389
channel ORA_AUX_DISK_1: reading from backup piece /u01/Backup/1143261986-20240306-022l0f0a_2_1_1
channel ORA_AUX_DISK_1: piece handle=/u01/Backup/1143261986-20240306-022l0f0a_2_1_1 tag=TAG20240306T075553
channel ORA_AUX_DISK_1: restored backup piece 1
channel ORA_AUX_DISK_1: restore complete, elapsed time: 00:01:15
Finished restore at 06-MAR-24

contents of Memory Script:
{
   switch clone datafile all;
}
executing Memory Script

datafile 1 switched to datafile copy
input datafile copy RECID=6 STAMP=1162891149 file name=/u01/app/oracle/oradata/UATDB/system.257.1159692337
datafile 3 switched to datafile copy
input datafile copy RECID=7 STAMP=1162891149 file name=/u01/app/oracle/oradata/UATDB/sysaux.258.1159692373
datafile 4 switched to datafile copy
input datafile copy RECID=8 STAMP=1162891149 file name=/u01/app/oracle/oradata/UATDB/undotbs1.259.1159692387
datafile 5 switched to datafile copy
input datafile copy RECID=9 STAMP=1162891149 file name=/u01/app/oracle/oradata/UATDB/undotbs2.265.1159692665
datafile 7 switched to datafile copy
input datafile copy RECID=10 STAMP=1162891149 file name=/u01/app/oracle/oradata/UATDB/users.260.1159692389

contents of Memory Script:
{
   set until scn  7634718;
   recover
   clone database
    delete archivelog
   ;
}
executing Memory Script

executing command: SET until clause

Starting recover at 06-MAR-24
using channel ORA_AUX_DISK_1

starting media recovery

channel ORA_AUX_DISK_1: starting archived log restore to default destination
channel ORA_AUX_DISK_1: restoring archived log
archived log thread=1 sequence=46
channel ORA_AUX_DISK_1: restoring archived log
archived log thread=2 sequence=36
channel ORA_AUX_DISK_1: reading from backup piece /u01/Backup/1143261986-20240306-032l0f2d_3_1_1
channel ORA_AUX_DISK_1: piece handle=/u01/Backup/1143261986-20240306-032l0f2d_3_1_1 tag=TAG20240306T075701
channel ORA_AUX_DISK_1: restored backup piece 1
channel ORA_AUX_DISK_1: restore complete, elapsed time: 00:00:03
archived log file name=/u01/app/oracle/fast_recovery_area/UATDB/archivelog/2024_03_06/o1_mf_1_46_lyhsxpdr_.arc thread=1 sequence=46
archived log file name=/u01/app/oracle/fast_recovery_area/UATDB/archivelog/2024_03_06/o1_mf_2_36_lyhsxpgb_.arc thread=2 sequence=36
channel clone_default: deleting archived log(s)
archived log file name=/u01/app/oracle/fast_recovery_area/UATDB/archivelog/2024_03_06/o1_mf_1_46_lyhsxpdr_.arc RECID=2 STAMP=1162891151
channel clone_default: deleting archived log(s)
archived log file name=/u01/app/oracle/fast_recovery_area/UATDB/archivelog/2024_03_06/o1_mf_2_36_lyhsxpgb_.arc RECID=1 STAMP=1162891150
media recovery complete, elapsed time: 00:00:00
Finished recover at 06-MAR-24
Oracle instance started

Total System Global Area    1912602056 bytes

Fixed Size                     8941000 bytes
Variable Size                436207616 bytes
Database Buffers            1459617792 bytes
Redo Buffers                   7835648 bytes

contents of Memory Script:
{
   sql clone "alter system set  db_name =
 ''UATDB'' comment=
 ''Reset to original value by RMAN'' scope=spfile";
   sql clone "alter system reset  db_unique_name scope=spfile";
}
executing Memory Script

sql statement: alter system set  db_name =  ''UATDB'' comment= ''Reset to original value by RMAN'' scope=spfile

sql statement: alter system reset  db_unique_name scope=spfile
Oracle instance started

Total System Global Area    1912602056 bytes

Fixed Size                     8941000 bytes
Variable Size                436207616 bytes
Database Buffers            1459617792 bytes
Redo Buffers                   7835648 bytes
sql statement: CREATE CONTROLFILE REUSE SET DATABASE "UATDB" RESETLOGS ARCHIVELOG
  MAXLOGFILES     16
  MAXLOGMEMBERS      3
  MAXDATAFILES      100
  MAXINSTANCES     8
  MAXLOGHISTORY      292
 LOGFILE
  GROUP     1 ( '/u01/app/oracle/oradata/UATDB/group_1.257.1159692457', '/u01/app/oracle/oradata/UATDB/group_1.262.1159692455' ) SIZE 200 M  REUSE,
  GROUP     2 ( '/u01/app/oracle/oradata/UATDB/group_2.258.1159692457', '/u01/app/oracle/oradata/UATDB/group_2.263.1159692455' ) SIZE 200 M  REUSE
 DATAFILE
  '/u01/app/oracle/oradata/UATDB/system.257.1159692337'
 CHARACTER SET AL32UTF8

sql statement: ALTER DATABASE ADD LOGFILE

  INSTANCE 'i2'
  GROUP     3 ( '/u01/app/oracle/oradata/UATDB/group_3.266.1159692729', '/u01/app/oracle/oradata/UATDB/group_3.259.1159692729' ) SIZE 200 M  REUSE,
  GROUP     4 ( '/u01/app/oracle/oradata/UATDB/group_4.267.1159692729', '/u01/app/oracle/oradata/UATDB/group_4.260.1159692729' ) SIZE 200 M  REUSE

contents of Memory Script:
{
   set newname for tempfile  1 to
 "+DATA";
   switch clone tempfile all;
   catalog clone datafilecopy  "/u01/app/oracle/oradata/UATDB/sysaux.258.1159692373",
 "/u01/app/oracle/oradata/UATDB/undotbs1.259.1159692387",
 "/u01/app/oracle/oradata/UATDB/undotbs2.265.1159692665",
 "/u01/app/oracle/oradata/UATDB/users.260.1159692389";
   switch clone datafile all;
}
executing Memory Script

executing command: SET NEWNAME

renamed tempfile 1 to +DATA in control file

cataloged datafile copy
datafile copy file name=/u01/app/oracle/oradata/UATDB/sysaux.258.1159692373 RECID=1 STAMP=1162891171
cataloged datafile copy
datafile copy file name=/u01/app/oracle/oradata/UATDB/undotbs1.259.1159692387 RECID=2 STAMP=1162891171
cataloged datafile copy
datafile copy file name=/u01/app/oracle/oradata/UATDB/undotbs2.265.1159692665 RECID=3 STAMP=1162891171
cataloged datafile copy
datafile copy file name=/u01/app/oracle/oradata/UATDB/users.260.1159692389 RECID=4 STAMP=1162891171

datafile 3 switched to datafile copy
input datafile copy RECID=1 STAMP=1162891171 file name=/u01/app/oracle/oradata/UATDB/sysaux.258.1159692373
datafile 4 switched to datafile copy
input datafile copy RECID=2 STAMP=1162891171 file name=/u01/app/oracle/oradata/UATDB/undotbs1.259.1159692387
datafile 5 switched to datafile copy
input datafile copy RECID=3 STAMP=1162891171 file name=/u01/app/oracle/oradata/UATDB/undotbs2.265.1159692665
datafile 7 switched to datafile copy
input datafile copy RECID=4 STAMP=1162891171 file name=/u01/app/oracle/oradata/UATDB/users.260.1159692389

contents of Memory Script:
{
   Alter clone database open resetlogs;
}
executing Memory Script

database opened
Cannot remove created server parameter file
Finished Duplicate Db at 06-MAR-24

RMAN> 

Do the post restore steps .. 



Thanks,
Srini