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();


Safe Harbor Statement

The information provided in this blog is intended for informational purposes only and reflects the best available knowledge at the time of writing. While every effort has been made to ensure the accuracy and reliability of the content, technologies and practices can evolve over time. Therefore, the solutions, troubleshooting steps, and recommendations presented here may not be applicable to all scenarios or environments.

Readers are encouraged to assess their own environments and test any suggested changes or approaches in a safe, controlled setting before implementing them in production. This blog does not provide official guidance for any specific software or system and does not guarantee that the proposed methods will resolve every issue. For tailored solutions or assistance, readers should consult official documentation, vendor support, or certified professionals in the respective fields.

The content of this blog is provided "as is," and no warranties or representations, express or implied, are made regarding its accuracy, completeness, or suitability for specific use cases. The authors and contributors are not responsible for any consequences that may arise from using or misinterpreting the information provided.

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.