Friday, 26 February 2021

Reload Postgres config settings without restarting database

We can load config settings updated on pg_hba.conf to postgres database without restarting database using below commands

From Command Prompt:

/usr/bin/pg_ctl reload

Using sql Command from psql:

SELECT pg_reload_conf();


Thursday, 18 February 2021

Oracle RAC Background Process

Oracle RAC (Real Application Clusters) is a database architecture that allows multiple instances (database processes) to run concurrently while accessing a shared set of data files. In a RAC environment, several background processes are responsible for managing various aspects of the cluster. Here are the key Oracle RAC background processes with their complete details:

Global Cache Service (GCS) Process:
Description: The GCS process manages global cache resources, enabling instances to share and access data blocks in the cache.
Purpose: Handles global cache requests, performs block transfers, and maintains cache coherency across instances.
Process Name: LMSn (Lock Manager Server)
Key Initialization Parameter: CLUSTER_DATABASE_INSTANCES

Global Enqueue Service (GES) Process:
Description: The GES process manages global enqueue resources, such as locks and resources required for coordination and serialization.
Purpose: Handles enqueue requests and grants exclusive access to shared resources.
Process Name: LMDn (Global Enqueue Service Daemon)
Key Initialization Parameter: CLUSTER_DATABASE_INSTANCES

Global Resource Directory (GRD) Process:
Description: The GRD process manages the resource directory, which maintains information about the status of cached blocks and enqueues.
Purpose: Provides a centralized view of resource ownership and availability across instances.
Process Name: LMON (Global Enqueue Service Monitor)
Key Initialization Parameter: CLUSTER_DATABASE_INSTANCES

Master Control Process (MCP):
Description: The MCP is responsible for monitoring and managing the interconnect network for Oracle RAC communication.
Purpose: Manages the interconnect network, handles failover, and monitors node liveness.
Process Name: CSSD (Cluster Synchronization Services Daemon)

Oracle Clusterware Process (CRSD/EVMD):
Description: The CRSD (Cluster Ready Services Daemon) and EVMD (Event Volume Manager Daemon) processes are part of Oracle Clusterware, which provides infrastructure services for high availability and node management.
Purpose: CRSD manages cluster resources, services, and their availability. EVMD handles volume management and disk-related events.
Process Names: CRSD, EVMD

RAC Diagnostic Collection Service (DCS):
Description: The DCS process collects diagnostic information from all instances in the cluster and stores it in the Automatic Diagnostic Repository (ADR).
Purpose: Facilitates troubleshooting and performance analysis in Oracle RAC environments.
Process Name: ACMS (Atomic Controlfile to Memory Service)

RAC Global Services Daemon (GSD):
Description: The GSD process provides access to Oracle services running on specific nodes in the cluster.
Purpose: Enables client connections to Oracle services via GSD-based listeners.
Process Name: GSD
        
LMHB (Global Cache Service Heartbeat Process):
Description: The LMHB process monitors and maintains heartbeat information for inter-instance communication.
Responsibilities: Detects and reports failures or communication issues between instances, assists in failover and recovery operations.
    
RMSn (Remote Mapping Server Process):
Description: The RMSn process manages remote mapping of blocks and maintains global object directory (GOD) information.
Responsibilities: Handles block-to-instance mapping for remote block access, maintains metadata for global objects.
    
These are some of the key background processes specific to Oracle RAC. Each process plays a vital role in managing resources, cache coherency, interconnect communication, and high availability in a RAC environment. The precise behavior and functionality of these processes may vary based on the Oracle database version and configuration settings. For in-depth details, it is recommended to consult the Oracle documentation specific to your Oracle version and RAC setup.