
mysql galera 설정
[참고]
아래 테스트한 서버 mariaDB 버전에 경우 서버 설치 후 별다른 설정 없이 기본 레포로 진행하였습니다.
mysql -V //mysql(mariadb)버전 확인 -V << 꼭 대문자 여야합니다. 아니면 에러나면서 안보여줌
mysql Ver 15.1 Distrib 10.3.35-MariaDB, for Linux (x86_64) using readline 5.1
mariaDB galera 사용을 위한 mariadb-galera 설치
# dnf -y install mariadb-server-galera
두개 이상의 서버를 동시 작업 시 헷갈리지 않게 hostname도 센스있게 설정해줍니다.
[root@hagorud99-204868 ~]# vi /etc/hostname
[root@hagorud99-204868 ~]# hostname -F /etc/hostname && exec bash
[root@galeratest1 ~]#
패키지 설치에 경우 /etc/my.cnf 설정파일에 모두 설정되어 있지 않고
/etc/my.cnf.d 디렉토리에 있는 cnf파일을 참조하게 되어 있습니다.
초기 설치 후 galera.cnf 파일이 있어 해당 파일은 그냥 참조 안하게 이름을 바꿔줬습니다.
egrep -v "^#|^$" /etc/my.cnf.d/galera.cnf //#와 $를 제외한 설정값 확인
[mysqld]
binlog_format=ROW
default-storage-engine=innodb
innodb_autoinc_lock_mode=2
bind-address=0.0.0.0
wsrep_on=1
wsrep_provider=/usr/lib64/galera/libgalera_smm.so
wsrep_cluster_name="my_wsrep_cluster"
wsrep_slave_threads=1
wsrep_certify_nonPK=1
wsrep_max_ws_rows=0
wsrep_max_ws_size=2147483647
wsrep_debug=0
wsrep_convert_LOCK_to_trx=0
wsrep_retry_autocommit=1
wsrep_auto_increment_control=1
wsrep_drupal_282555_workaround=0
wsrep_causal_reads=0
wsrep_notify_cmd=
wsrep_sst_method=rsync
wsrep_sst_auth=root:
[root@galeratest1 ~]# mv /etc/my.cnf.d/galera.cnf /etc/my.cnf.d/galera.cnf_ori
//galera.cnf_ori파일로 이름 변경
vi 로 /etc/my.cnf 파일을 열어 아래 내용을 추가해 줍니다. 서버1,2 동일하게 부분부분 수정하여 기입
[galera]
wsrep_on=ON #galera 클러스터 사용여부
wsrep_provider=/usr/lib64/galera/libgalera_smm.so # galera 클러스터링 모듈 위치
wsrep_cluster_address="gcomm://서버1,서버2" #동기화할 ip
wsrep_cluster_name=cluster # 클러스터링 이름
wsrep_node_address="현재서버IP" #ex)xxx.xxx.xx.xx
wsrep_node_name="galeratest-1" #현재 서버의 이름
wsrep_sst_method=rsync #동기화 방식
wsrep_sst_auth="root:passwrod" #동기화시 사용 접속정보
binlog_format=row #로그파일 형식
default_storage_engine=InnoDB # 타입
innodb_autoinc_lock_mode=2
master,slave 서버 시작 및 확인
[root@galeratest1 ~]# galera_new_cluster //master 서버에서 진행
[root@galeratest1 ~]# netstat -nltp //에러없이 진행되었다면 데몬 확인. 4567,3306)
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 50338/sshd
tcp 0 0 0.0.0.0:4567 0.0.0.0:* LISTEN 127571/mysqld
tcp 0 0 0.0.0.0:3306 0.0.0.0:* LISTEN 127571/mysqld
tcp6 0 0 :::22 :::* LISTEN 50338/sshdActive Internet connections (only servers)
[root@galeratest-2 ~]# systemctl start mariadb //slave서버에서 진행
[root@galeratest-2 ~]# netstat -nltp //동일하게 데몬 확인
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 50338/sshd
tcp 0 0 0.0.0.0:4567 0.0.0.0:* LISTEN 127571/mysqld
tcp 0 0 0.0.0.0:3306 0.0.0.0:* LISTEN 127571/mysqld
tcp6 0 0 :::22 :::* LISTEN 50338/sshd
mysql 접속 하여 확인
[root@galeratest1 ~]# mysql -uroot -p
Enter password:
Welcome to the MariaDB monitor. Commands end with ; or \g.
Your MariaDB connection id is 10
Server version: 10.3.35-MariaDB MariaDB Server
Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
MariaDB [(none)]> show status like 'wsrep_cluster_size'; //연결된 노드 확인
+--------------------+-------+
| Variable_name | Value |
+--------------------+-------+
| wsrep_cluster_size | 2 |
+--------------------+-------+
1 row in set (0.001 sec)
MariaDB [(none)]> show status like 'wsrep_incoming_addresses'; //연결된 서버 IP 확인
+--------------------------+----------------------------------------+
| Variable_name | Value |
+--------------------------+----------------------------------------+
| wsrep_incoming_addresses | xxx.xx.xxx.xxx:3306,xxx.xx.xxx.xx:3306 |
+--------------------------+----------------------------------------+
1 row in set (0.001 sec)
'Server > MySQL' 카테고리의 다른 글
| mysql/mariadb 복원 시 에러 ERROR 1273 (HY000) at line 24: Unknown collation: 'utf8mb4_0900_ai_ci' , ERROR 1050 (42S01) at line 925: Table 'user' already exists (0) | 2023.07.25 |
|---|---|
| mysql slow query 설정 (0) | 2022.01.22 |
| mysql 언어셋 기본값 확인 및 변경 (0) | 2022.01.19 |
| too many connections 에러 (0) | 2022.01.16 |
| mysql error 1820,1819, 패스워드 정책 확인 및 변경 (0) | 2022.01.16 |
댓글