πŸ•ΉοΈ
Ghoulsec Vault
Website Toolbase
  • Welcome !
  • πŸ—ƒοΈExam Prep Notes
    • πŸ“”CEH V13 (Master Edition)
      • Module 02: Footprinting and Reconnaissance
      • Module 03: Scanning Networks
      • Module 04: Enumeration
      • Module 05: Vulnerability Analysis
      • Module 06: System Hacking
      • Module 07: Malware Threats
      • Module 08: Sniffing
      • Module 09 : Social Engineering
      • Module 10: Denial of Service
      • Module 11: Session Hijacking
      • Module 12: Evading IDS, Firewalls , Honeypots
      • Module 13: Hacking web servers
      • Module 14: Hacking Web Applications
      • Module 15:SQL Injection
      • Module 16: Wireless Attacks
      • Module 17: Hacking Mobile Platforms
      • Module 18: IoT & OT Hacking
      • Module 19 : Cloud Computing
      • Module 20 : Cryptography
    • πŸ“˜ISC2 -Certified in Cyber Security
      • Chapter -1 Security Principals
      • Chapter -2 Disaster Recovery,Business Continuity & Incident Response
      • Chapter -3 Access Control Concepts
      • Chapter -4 Network Security
      • Chapter -5 Security Operations
    • πŸ“—AZ - 900
      • Basics of Cloud Computing
        • Economic of Scale
        • CapEx & OpEx
        • Consumption based model
        • Cloud Deployment Models
        • Shared Responsibility Model
        • Data centers, Regions & Availability Zones & Geographyies in Azure
        • Resources & Resource Group
        • Azure Access Tools
        • Azure Service Lifecycle
        • Azure SLAs
        • Azure Cloud Adoption Framework
      • Azure Services
        • Azure Computing Services
        • Azure Networking Services
        • Azure Storage Services
        • Azure Database Service
        • Azure Marketplace
        • Big Data & Azure
        • Azure Serverless Computing
        • IoT & Azure
        • Other Azure Services
        • Azure Resource Locks & Resource Tags
        • Azure Security Services
          • Security Groups
          • Routing Tables
          • Azure Firewall
          • Azure DDOS Protection
          • Azure Identity & Access Management (Azure AD)
          • Azure RBAC
          • Azure Security Center
          • Azure Key Vault
      • Azure policies & Blueprints
      • Azure Cost Management
      • Azure Core Tenents
    • πŸ“—SC - 900
      • Zero Trust Model
      • Shared Responsibility Model
      • Defense in Depth
      • Security Controls
      • CIA Triad
      • Encryption / Hashing / Signing
      • Microsoft Security & Compliance Principals
      • Common Identity Attacks
      • Microsoft Identity as Primary Security Perimeter
      • Modern Authentication with Azure AD
      • Azure AD Identity Types
      • Azure External Identities
      • Hybrid Identities
      • Authentication Methods & Password Protection
      • Conditional Access
      • Azure AD Roles & RBAC
      • Governance in Azure AD
      • Azure Identity Protection
      • Azure NSG, DDOS, Firewall
      • Azure Bastion & Keyvault
      • Azure Encryption
      • Azure CSPM
      • Azure Security Center
      • Azure Defender
        • Microsoft O365 Defender
        • Azure Sentinel
      • Microsoft Cloud App Security
      • Microsoft Intune
      • Microsoft Complaince Manager
      • Information Protection
      • Microsoft insider risk capabilities
    • πŸ“”AWS Cloud Practitioner
      • Cloud Deployment
        • AWS Global Infrastructure
      • AWS Cloud Essentials
        • AWS SNS
          • AWS SQS
      • AWS Compute & Container Services
        • AWS EC2
          • Elasticity & Agility
        • AWS Serverless Computing
        • AWS Container Services
        • AWS Beanstalk
        • AWS Load Balancing
      • AWS Storage & Databases
      • AWS Networking
      • AWS Security
        • AWS Organisation
        • AWS Compliance
        • AWS DDOS
        • Additional Security Services
      • AWS Monitoring & Analytics
        • Other Analytics Services
      • AWS Pricing & Support
      • AWS Migration & Innovation
        • Migration Statergies
        • AWS Snow Family
        • AWS Transfer Family
        • Innovation on AWS
      • AWS Well Architecture Framework
      • Other AWS Services
  • πŸ§‘β€πŸ’»Cyber Security Base
    • Ghoul's Den
    • Cheatsheets
    • SSL Handbook
      • Installing OpenSSL
      • Encrypting Web Servers using SSL
      • Compiling .pfx file using openssl
      • De-compiling .pfx file
      • Zimbra Mail Server SSL renew
      • SSL Certificates
    • ☁️Cloud Security
      • Amazon Web Services (AWS)
        • AWS - IAM & Policy Management
        • AWS Organization
        • AWS - Roles (Assume Role)
        • AWS - EC2 (Elastic Computing)
        • AWS - VPC
        • AWS - Bastion Host
        • AWS Application Load Balancer
        • AWS Auto Scaling Group
        • AWS WAF
        • AWS - VPC Peering
        • AWS Transit Gateway
        • AWS NAT Gateway
        • AWS - Route 53
        • AWS Certificates Manager
        • AWS Network Load Balancer (NLB)
    • πŸ•ΈοΈNetwork Security
      • Firewalls
        • Sophos - Security Suite
          • Sophos Firewalls
      • VPN
        • VPNs
          • Wireguard Tunneling
          • StrongSwan Gateway VPN Server on Ubuntu
      • IP Address and IP Subnetting
      • Basic to Advance Networking Materials
    • πŸ§‘β€πŸ’»VAPT
      • Sample Report Templete
      • OWASP
        • OWASP Web Application Security & WebGoat
      • Web Application testing checklist
        • Client Side Penetration Testing
          • Clickjacking
          • Websockets
          • CSRF
          • XSS Filters
        • Server Side Penetration Testing
        • Advanced Web Application Pentesting
          • OAuth
          • JWT Injection
          • Server Side Templete Injection
    • β˜„οΈGRC
      • ISMS AUDIT PLAN
      • CIS Compliance Windows
    • πŸ”Forensic
      • Forensic Tools
      • EMAIL Forensics
      • File header forensics
    • Trend Micro
      • Deep Security
        • Installation & Prerequisite
          • Microsoft SQL server 2022
          • Postgres 16 Core
          • Installation
    • Practical Malware Analysis & API Threats
  • πŸ•ΉοΈServer are fun !
    • Securing Linux
      • Securing SSH
      • Sudoers
      • UFW (Uncomplicated FW)
      • Unattended Upgrades
      • Password Complexiety
      • Auditing Linux
      • Samba - SMB
      • NFS - Network File System
      • FTP
      • AIDE
    • Servers
      • Linux Sever
        • OpenLDAP Server Setup
          • ldap-account-manager
          • Securing OpenLDAP
          • OpenLDAP client setup
          • Checking LDAP setup
        • Users & Groups
        • Password Policy
        • File & File Permissions
        • Automatic Updates
        • Adding GUI to Ubuntu Server
        • DNS Server
        • NTP Server
      • Windows Sever
        • Deep dive into Windows Server
        • Windows server Installation
        • Disable IPv6
        • Disable Server Manager on startup
        • Promoting OS to AD server
        • AD DNS
        • AD DHCP
        • AD Activation
        • AD Users & Groups
        • AD FileServer
        • Adding Users into AD
        • Bulk Importing users into Domain
        • Windows AD Resources
        • Group Policy Editor
          • Creating First Policy
          • Restricting CMD & Powershell
          • Password Policies
          • Audit Policies
          • Log Retention Policy
          • Windows Defender Firewall
          • Patch Management & Window Updates
        • Setting Up local accounts for windows hosts
    • Hacking Systems
      • Linux Systems
        • Battery Charge Threshold (Linux)
        • Metasploitable OS Complete Solved
      • Tricking Windows
        • Bitlocker & Time based policy bypass
    • Monitoring HeartBeats
    • RAID Technology
    • Managing Partitions
      • Parted
      • Fdisk
      • LVM
        • Re-claiming unused disk space
        • Adding physical volume into VG
        • Removing physical volume from VG
      • SWAP Memory
    • Virtualization
      • Proxmox
        • Proxmox VE Installation
        • Default Storage Expansion
        • Proxmox Network Link Aggegration
        • NAT Interface Configuration
        • Importing disk into proxmox
        • Creating an LVM Thin Pool
        • Proxmox IAM
  • πŸ™β€β™‚οΈDan the AI Expert
    • Ollama Ollama ...
      • Ollama
        • Ollama models
        • Open Web UI & Ollama Integration
    • Microsoft Presentation using AI
  • πŸ›‘οΈSecurity Operations
    • Wazuh - Open Source XDR. Open Source SIEM.
      • Components
      • Deployment Methods
      • Installation
        • Single Node Installation
          • Wazuh Indexer Installation
          • Wazuh Server Installation
          • Wazuh Dashboard Installation
          • Single node deployment with Script
        • Managing multiple Wazuh clusters with Cross-Cluster Search
          • Cluster Configuration
          • Set up Cross-Cluster Search
        • Upgrading Wazuh Central Components
        • Uninstalling Wazuh
      • Custom Decoder & Rules
        • Pfsense Decoders
        • Pfsense Rules
      • Security Operations Center Tools (Wazuh)
    • IRIS-DFIR / Case Management
    • Graylog & ElasticSearch
    • Zabbix NMS
      • Zabbix Installation
      • Zabbix Database Management
        • Zabbix Database backup
        • Zabbix Database restore
        • MySQL Replication (M-M)
        • MySQL Replication (M-W)
      • Zabbix Geomap Setup
      • Adding Hosts into Zabbix
      • Zabbix Hostgroups
      • Auto Registration Hosts Zabbix
      • Zabbix Globalscrips
      • Zabbix HA Cluster
      • Zabbix Proxy
      • Zabbix Notifications
      • Zabbix Maintainance
      • Zabbix User Management & Authentication
      • Zabbix Housekeeping
      • Scheduled Reporting
      • Service Monitoring using Zabbix
  • Git the master!!
    • Configuring git
    • Git Branches
    • Undoing changes
    • Git - Cheat sheet
    • My first git...
Powered by GitBook
On this page
  1. Security Operations
  2. Zabbix NMS
  3. Zabbix Database Management

MySQL Replication (M-M)

PreviousZabbix Database restoreNextMySQL Replication (M-W)

Last updated 1 month ago


Prerequisites:

  1. Two MySQL Servers β€” You need two MySQL servers, each with a unique hostname (e.g., server1.example.com and server2.example.com).

  2. Network Access β€” Ensure that both MySQL servers can communicate with each other over the network (typically port 3306).

  3. Admin Access β€” You need to have root access to both servers to configure replication and make the necessary changes.


Step 1: Initial MySQL Configuration

  1. Configure MySQL on both servers to enable binary logging and unique server IDs.

    Edit the my.cnf file on both servers (/etc/my.cnf or /etc/mysql/my.cnf depending on your system):

    • On Server 1 (e.g., server1.example.com):

      [mysqld]
      server-id = 1  # Unique server ID
      log-bin = mysql-bin  # Enable binary logging for replication
      binlog-do-db = your_database_name  # Optional: replicate only specific DBs
    • On Server 2 (e.g., server2.example.com):

      [mysqld]
      server-id = 2  # Unique server ID (must differ from Server 1)
      log-bin = mysql-bin  # Enable binary logging for replication
      binlog-do-db = your_database_name  # Optional: replicate only specific DBs

    After making these changes, restart MySQL on both servers:

    sudo systemctl restart mysql

Step 2: Create Replication User

  1. Create a replication user on both servers. This user will have the necessary privileges to replicate data between the servers.

    • On Server 1 (run from mysql client):

      CREATE USER 'replica'@'%' IDENTIFIED BY 'password';
      GRANT REPLICATION SLAVE ON *.* TO 'replica'@'%';
      FLUSH PRIVILEGES;
    • On Server 2 (run from mysql client):

      CREATE USER 'replica'@'%' IDENTIFIED BY 'password';
      GRANT REPLICATION SLAVE ON *.* TO 'replica'@'%';
      FLUSH PRIVILEGES;

Step 3: Get the Binary Log Coordinates

  1. Find the current binary log position on each server.

    • On Server 1, execute:

      SHOW MASTER STATUS;

      This will show something like this:

      +------------------+--------------+------------------+-----------+
      | File             | Position     | Binlog_Do_DB     | Binlog_Ignore_DB |
      +------------------+--------------+------------------+-----------+
      | mysql-bin.000001 | 107          | your_database_name |            |
      +------------------+--------------+------------------+-----------+

      Note the File and Position values. In this example, it’s mysql-bin.000001 and 107.

    • On Server 2, execute the same command to get the binary log status:

      SHOW MASTER STATUS;

      Again, note the File and Position.


Step 4: Set Up Replication on Server 1

  1. Configure Server 1 to replicate from Server 2.

    • On Server 1, connect to the MySQL client and run:

      CHANGE MASTER TO
          MASTER_HOST='server2.example.com',
          MASTER_USER='replica',
          MASTER_PASSWORD='password',
          MASTER_LOG_FILE='mysql-bin.000001',  # Use the File from Server 2
          MASTER_LOG_POS=107;  # Use the Position from Server 2
  2. Start the replication on Server 1:

    START SLAVE;
  3. Check the status of replication on Server 1 to ensure it’s running:

    SHOW SLAVE STATUS\G
    • Look for Slave_IO_Running: Yes and Slave_SQL_Running: Yes in the output. If both are Yes, replication is working.


Step 5: Set Up Replication on Server 2

  1. Configure Server 2 to replicate from Server 1.

    • On Server 2, connect to the MySQL client and run:

      CHANGE MASTER TO
          MASTER_HOST='server1.example.com',
          MASTER_USER='replica',
          MASTER_PASSWORD='password',
          MASTER_LOG_FILE='mysql-bin.000001',  # Use the File from Server 1
          MASTER_LOG_POS=107;  # Use the Position from Server 1
  2. Start the replication on Server 2:

    START SLAVE;
  3. Check the status of replication on Server 2:

    SHOW SLAVE STATUS\G
    • Look for Slave_IO_Running: Yes and Slave_SQL_Running: Yes in the output. If both are Yes, replication is working.


Step 6: Verify and Test the Setup

  1. Test replication by inserting data into Server 1:

    USE your_database_name;
    INSERT INTO your_table (column1, column2) VALUES ('value1', 'value2');
  2. Check if the data appears on Server 2:

    • On Server 2, run:

      SELECT * FROM your_table WHERE column1 = 'value1';

    You should see the data inserted on Server 1 appearing on Server 2.

  3. Repeat the same on Server 2, inserting data into Server 2, and check if it appears on Server 1.


Step 7: Monitor Replication

  1. Regularly monitor the replication status using:

    SHOW SLAVE STATUS\G
    • Ensure that both Slave_IO_Running and Slave_SQL_Running are Yes.

  2. Check for any replication errors. If you encounter errors, resolve them before proceeding to prevent data inconsistencies.


πŸ›‘οΈ