Need for Global Concurrency Control Latches and mutexes may only protect access to memory structures if they are accessed by processes in the same instance. In RAC, latches and mutexes are still used, but for global concurrency control, some additional global enqueues are used to provide protection across instances. Oracle requires concurrency control because it […]
Archives for April 2021
RMAN backup Concepts for Oracle RAC
Oracle Recovery Manager Oracle Database provides RMAN for backing up and restoring the database. RMAN enables you to back up, restore, and recover data files, control files, SPFILEs, and archived redo logs. You can run RMAN from the command line or you can use it from the Backup Manager in Enterprise Manager. In addition, RMAN […]
Archived Redo File Conventions in Oracle RAC
Archived Redo File Conventions in RAC Variable Description Example %t Thread number, not padded log_1 %T Thread number, left-zero-padded log_0001 %s Log sequence number, not padded log_251 %S Log sequence number, left-zero-padded log_0000000251 %r Resetlogs identifier log_23452345 %R Padded resetlogs identifier log_0023452345 %t_%s_%r Using multiple variables log_1_251_23452345 For any archived redo log configuration, uniquely identify […]
Understanding Transparent Data Encryption and Keystores in RAC
Transparent Data Encryption and Keystores in RAC Oracle Database enables RAC nodes to share the keystore (wallet). This eliminates the need to manually copy and synchronize the keystore across all nodes. Oracle recommends that you create the keystore on a shared file system. This allows all instances to access the same shared keystore. Oracle RAC […]
How to Termibate a Session on a Specific Instance of Oracle RAC
Terminating Sessions on a Specific Instance You can use the ALTER SYSTEM KILL SESSION statement to terminate a session on a specific instance. The example below illustrates this by terminating a session started on a different instance than the one used to terminate the problematic session. SQL> SELECT SID, SERIAL#, INST_ID 2 FROM GV$SESSION WHERE […]
How to quiesce an Oracle 12c RAC database
Quiescing RAC Databases To quiesce a RAC database, use the ALTER SYSTEM QUIESCE RESTRICTED statement from one instance. It is not possible to open the database from any instance while the database is in the process of being quiesced from another instance. After all the non-DBA sessions become inactive, the ALTER SYSTEM QUIESCE RESTRICTED statement […]
How to Start and Stop Oracle RAC Instances (CDB/PDB)
Starting and Stopping RAC Instances In a RAC environment, multiple instances can have the same RAC database open at the same time. The procedures for starting up and shutting down RAC instances are identical to the procedures used in single-instance Oracle, with the following exception: – The SHUTDOWN TRANSACTIONAL command with the LOCAL option is […]
Oracle Database 12c New feature: Local Temporary Tablespaces
Local Temporary Tablespaces To improve I/O operations, Oracle introduces a local temporary tablespace in Oracle Database 12c release 2 (12.2), so that spill-overs are written to the local disks on the reader nodes. It is still possible for SQL operations, such as hash aggregation, sort, hash join, creation of cursor-duration temporary tables for the WITH […]
Automatic Undo Management and Oracle RAC
The Oracle database automatically manages undo segments within a specific undo tablespace that is assigned to an instance. Under normal circumstances, only the instance assigned to the undo tablespace can modify the contents of that tablespace. However, all instances can always read all undo blocks for consistent-read purposes. Also, any instance can update any undo […]
Define redo log files in an Oracle RAC environment
Redo Log Files and RAC In an Oracle RAC database, each instance must have at least two groups of redo log files. You must allocate the redo log groups before enabling a new instance with the ALTER DATABASE ENABLE INSTANCE instance_name command. When you use DBCA to create the database, DBCA allocates redo log files […]