GNU/Linux >> Znalost Linux >  >> Linux

Jak nastavit replikaci MySQL Master-Slave na RHEL 7?

V procesu replikace MySQL jsou data jednoho serveru automaticky zkopírována na jiný záložní server v reálném čase. Replikace databáze poskytuje odolnost proti chybám a redundanci. Pokud selže hlavní server, vaše data budou obnovena z jiného serveru.

Následují kroky pro konfiguraci replikace MySQL master-slave na RHEL 7. K tomu potřebujeme 2 servery s různými IP adresami.

  1. Stáhněte a nainstalujte server MySQL na oba servery pomocí příkazu Yum.

    # wget https://dev.mysql.com/get/mysql57-community-release-el7-9.noarch.rpm
    # sudo rpm -ivh mysql57-community-release-el7-9.noarch.rpm # sudo yum install mysql-server
  2. Jakmile je MySQL Server nainstalován, spusťte jej a povolte jeho spuštění při spouštění.

    sudo systemctl enable mysqld
    sudo systemctl start mysqld
  3. Zjistěte dočasné heslo serveru mysql pomocí níže uvedeného příkazu.

    # sudo grep 'temporary password' /var/log/mysqld.log
    
  4. Spusťte níže uvedený příkaz pro posílení nebo zabezpečení databáze MySQL.

    # sudo mysql_secure_installation
    
  5. Zadejte dočasné heslo, které jsme právě získali v kroku (3), a změňte výchozí heslo.



  6. Chcete-li zajistit nejlepší zabezpečení, stiskněte y pro všechny odpovědi.

Krok 1  :Konfigurace hlavního serveru

  1. Otevřete konfigurační soubor MySQL pomocí svého oblíbeného editoru.

    # sudo vim /etc/my.cnf
    
  2. Přidejte pod řádek v sekci mysqld.

    # bind-address = Your Master server IP Address
    server-id = 1
    log_bin =mysql-bin


  3. Restartujte službu mysql.

    # sudo systemctl restart mysqld
    
  4. Chcete-li vytvořit uživatele replikace, přihlaste se k serveru mysql pomocí root a zadejte heslo.

    # sudo mysql -u root -p
    
  5. Vytvoříme uživatele repliky pomocí níže uvedeného příkazu a udělíme uživateli přístup podřízeného zařízení. Ujistěte se, že používáte IP adresu svého serveru.

    mysql> CREATE USER 'replica'@'173.248.174.102' IDENTIFIED BY '[email protected]';
    mysql> GRANT REPLICATION SLAVE ON *.*TO 'replica'@'173.248.174.102';


  6. Kliknutím na níže uvedený příkaz získáte binární název souboru a pozici.

    mysql> SHOW MASTER STATUS\G
    


  7. Budeme si muset poznamenat hlavní název souboru mysql-bin.000034 a jeho pozici 154.

Krok 2:Konfigurace podřízeného serveru:

  1. Otevřete konfigurační soubor MySQL pomocí svého oblíbeného editoru.

    sudo vim /etc/my.cnf
    
  2. Přidejte pod řádek v sekci mysqld.

    bind-address = Your Slave server IP Address
    server-id = 2
    log_bin =mysql-bin
  3. Restartujte službu mysql.

    sudo systemctl restart mysqld
    
  4. Nechte nás nakonfigurovat podřízený server pro replikaci z hlavního serveru. Přihlaste se k serveru MySQL.

    sudo mysql -u root -p
    mysql> STOP SLAVE;


  5. Spustíme níže uvedený dotaz pro konfiguraci podřízeného serveru pro replikaci hlavního serveru.

mysql> CHANGE MASTER TO
    -> MASTER_HOST='173.248.174.101',
    -> MASTER_USER='replica',
    -> MASTER_PASSWORD='[email protected]',
    -> MASTER_LOG_FILE='mysql-bin.000034',
    -> MASTER_LOG_POS=154;

  1. Spusťte podřízený server.

    mysql> START SLAVE;
    

Krok 3:Otestujte replikaci MySQL Master-Slave:

Máme hotovou konfiguraci hlavního a podřízeného serveru. Nyní otestujeme replikaci na obou serverech.

  1. Přejděte na hlavní server a stiskněte níže uvedený příkaz.

    sudo mysql -u root -p
    
  2. Vytvořte testovací databázi.

    mysql> CREATE DATABASE replica_database;
    
  3. Přejděte na Slave Server a přihlaste se k databázovému serveru MySQL.

    sudo mysql -u root -p
    
  4. Vypište databázi pomocí níže uvedeného příkazu.

    mysql> SHOW DATABASES;
    

Pokud je veškerá konfigurace správná, uvidíte databázi vytvořenou v masteru. To je ono. Naše replikace MySQL master/slave funguje dobře.


Linux
  1. Jak nastavit replikaci MySQL Master-Master Replication

  2. Jak nastavit SysLog Server na CentOS 7 / RHEL 7

  3. Jak nastavit NTP server v CentOS?

  1. Jak nastavit server NFS na CentOS 7 / RHEL 7

  2. Jak nastavit SVN Server na CentOS, RHEL a Fedora

  3. Jak nastavit replikaci MySQL na CentOS

  1. Jak nainstalovat Minecraft server na RHEL 8 Linux

  2. Jak nastavit replikaci MariaDB Master Slave na Ubuntu 18.04

  3. Jak nastavit proxy server squid na CentOS/RHEL 7