>운영 및 유지보수 >리눅스 운영 및 유지 관리 >Linux에서 데이터베이스 마스터-슬레이브 복제를 구성하는 방법

Linux에서 데이터베이스 마스터-슬레이브 복제를 구성하는 방법

PHPz
PHPz원래의
2023-07-07 09:45:061739검색

Linux에서 데이터베이스 마스터-슬레이브 복제를 구성하는 방법

데이터베이스 마스터-슬레이브 복제 구성은 Linux 시스템에서 일반적인 작업입니다. 마스터-슬레이브 복제는 데이터 중복 백업, 로드 밸런싱, 고가용성 등의 이점을 제공합니다. 이 문서에서는 Linux에서 데이터베이스 마스터-슬레이브 복제를 구성하는 방법에 대한 단계를 소개하고 해당 코드 예제를 제공합니다.

1단계: 데이터베이스 소프트웨어 설치
먼저 마스터 서버와 슬레이브 서버에 해당 데이터베이스 소프트웨어를 설치해야 합니다. 이 문서에서는 MySQL 데이터베이스를 예로 들어 설치 프로세스는 다음과 같습니다.

  1. 마스터 서버와 슬레이브 서버에서 다음 명령을 실행하여 MySQL 데이터베이스를 설치합니다.

    sudo apt update
    sudo apt install mysql-server

2단계: 마스터 서버 구성
다음으로 마스터 서버에 MySQL 데이터베이스를 설치해야 합니다. 다음에서 일련의 구성을 수행합니다.

  1. MySQL 구성 파일 /etc/mysql/mysql.conf.d/mysqld.cnf편집 > 다음 줄의 주석 처리를 해제합니다(줄 앞의 # 삭제 ): /etc/mysql/mysql.conf.d/mysqld.cnf,取消以下行的注释(删除行前的#):

    #bind-address            = 127.0.0.1
    #log_bin                  = /var/log/mysql/mysql-bin.log
    #binlog_do_db            = mydatabase
  2. 重启MySQL服务器:

    sudo service mysql restart
  3. 登录MySQL服务器并执行以下SQL命令:

    mysql -u root -p

    在MySQL交互界面中执行:

    CREATE USER 'replication'@'%' IDENTIFIED BY 'password';
    GRANT REPLICATION SLAVE ON *.* TO 'replication'@'%';
    FLUSH PRIVILEGES;
    FLUSH TABLES WITH READ LOCK;
    SHOW MASTER STATUS;

    记下FilePosition字段的值,我们将在从服务器上用到。

  4. 解锁表格:

    UNLOCK TABLES;

步骤三:配置从服务器
接下来,在从服务器上进行一系列配置:

  1. 编辑MySQL配置文件/etc/mysql/mysql.conf.d/mysqld.cnf,取消以下行的注释:

    #bind-address            = 127.0.0.1
  2. 重启MySQL服务器:

    sudo service mysql restart
  3. 登录MySQL服务器并执行以下SQL命令:(将412d557bec4e5def6d6435dfb165ebbe替换为主服务器的IP地址,6c758c1d3077d1131076a81a435b0724e9089245baf80435fcf1948d83058143替换为上一步中记录下的FilePosition字段的值。)

    mysql -u root -p

    在MySQL交互界面中执行:

    CHANGE MASTER TO MASTER_HOST='<master-ip>', MASTER_USER='replication', MASTER_PASSWORD='password', MASTER_LOG_FILE='<master-file>', MASTER_LOG_POS=<master-position>;
    START SLAVE;
  4. 检查从服务器的状态:

    SHOW SLAVE STATUSG

    确保Slave_IO_RunningSlave_SQL_Running字段的值都为Yesrrreee

MySQL 서버를 다시 시작합니다.

rrreee


MySQL 서버에 로그인하고 다음 SQL 명령을 실행합니다. :

rrreee🎜MySQL 대화형 인터페이스에서 실행: 🎜rrreee🎜 파일을 적어두세요. code> 및 <code>Position 필드의 값은 슬레이브 서버에서 사용됩니다. 🎜🎜🎜🎜테이블 잠금 해제: 🎜rrreee🎜🎜🎜3단계: 슬레이브 서버 구성 🎜다음으로 슬레이브 서버에서 일련의 구성을 수행합니다. 🎜🎜🎜🎜MySQL 구성 파일 /etc/mysql/ 편집 mysql.conf .d/mysqld.cnf에서 다음 줄의 주석 처리를 제거합니다. 🎜rrreee🎜🎜🎜MySQL 서버를 다시 시작합니다. 🎜rrreee🎜🎜🎜MySQL 서버에 로그인하고 다음 SQL 명령을 실행합니다. code> ;는 마스터 서버의 IP 주소로 대체되고, <master-file></master-file><master-position></master-position>는 이전 단계에서 기록한 File 및 Position 필드 값으로 대체됩니다.) 🎜rrreee🎜MySQL 대화형 인터페이스에서 실행: 🎜rrreee🎜🎜🎜상태 확인 슬레이브 서버: 🎜rrreee🎜 Slave_IO_Running 및 <code>Slave_SQL_Running 필드의 값이 모두 Yes입니다. 이는 마스터-슬레이브 복제가 완료되었음을 나타냅니다. 성공적으로 구성되었습니다. 🎜🎜🎜🎜이 시점에서 Linux에서 데이터베이스 마스터-슬레이브 복제 구성 프로세스가 완료되었습니다. 🎜🎜요약🎜이 문서에서는 Linux 시스템에서 데이터베이스 마스터-슬레이브 복제를 구성하는 단계를 소개하고 해당 코드 예제를 제공합니다. 마스터-슬레이브 복제를 통해 데이터 중복 백업, 로드 밸런싱 및 고가용성의 이점을 얻을 수 있습니다. 마스터-슬레이브 복제를 구성할 때 마스터 서버와 슬레이브 서버의 소프트웨어 설치 및 구성에 주의하고 마스터 및 슬레이브 서버의 연결 및 권한을 올바르게 설정해야 합니다. 이 기사가 Linux 시스템에서 데이터베이스 마스터-슬레이브 복제를 구성하는 데 도움이 되기를 바랍니다. 🎜

위 내용은 Linux에서 데이터베이스 마스터-슬레이브 복제를 구성하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.