살구월드

잠깐, 리눅스, C 언어, Java, Python 등
각종 예제 검색하기

 

목차

  1. 리눅스 MariaDB 이중화 virt-manager를 통한 Slave DB 서버 생성 예제 이전 포스팅 링크 및 설명
  2. 리눅스 MariaDB Slave 서버 이중화 설정 및 Master 서버와 Replication 복제 설정 예제 이전 포스팅 링크 및 설명
  3. 리눅스 우분투 20.04 MariaDB 클라이언트 설치 및 DB 접속 예제 이전 포스팅 링크 및 설명
  4. 리눅스 MaxScale DB 이중화 MaxScale 패키지 다운로드 및 설치 예제
  5. 리눅스 MaxScale DB 이중화 MaxScale 이중화 환경 설정 예제

 

 

 

 

 

 

 

 

 

리눅스 MariaDB 이중화 virt-manager를 통한 Slave DB 서버 생성 예제 이전 포스팅 링크 및 설명

이전 포스팅에서는 리눅스 MariaDB 이중화 설정을 위해 virt-manager를 사용하여 Slave DB 서버를 생성하는 예제를 다뤘습니다. 해당 포스팅에서는 virt-manager를 활용하여 가상 머신을 생성하고, MariaDB를 설치하고 구성하는 과정을 자세히 설명했습니다. 이전 포스팅의 링크와 함께 해당 예제를 참고하시면 Slave DB 서버 생성에 대한 자세한 내용을 확인하실 수 있습니다. 한대의 컴퓨터에서 MaxScale을 수행하기위해서는 가상의 환경이 필요합니다.

 

2024.02.23 - [Linux] - [Linux/Ubuntu] 리눅스 MariaDB MaxScale 이중화 설정 예제 - 2(DB Slave 가상 서버 및 패키지 설치)

 

[Linux/DB] 리눅스 MariaDB MaxScale 이중화 설정 예제 - 2(DB Slave 가상 서버 및 패키지 설치)

목차 리눅스 MariaDB MaxScale 이중화 설정 예제 - 1(DB Master 가상 서버 및 패키지 설치) 예제 이전 포스팅 링크 및 설명 리눅스 우분투 pip3 명령어로 기존 설치된 패키지 삭제하는 예제 이전 포스팅 링

salguworld.tistory.com

 

 

 

 

 

 

 

리눅스 MariaDB Slave 서버 이중화 설정 및 Master 서버와 Replication 복제 설정 예제 이전 포스팅 링크 및 설명

이전 포스팅에서는 리눅스 MariaDB Slave 서버의 이중화 설정과 Master 서버와의 Replication 복제 설정 예제를 다뤘습니다. Slave 서버를 이중화하여 안정적인 데이터 복제를 구현하는 방법과 Replication 설정에 대해 자세히 설명했습니다. 이전 포스팅의 링크를 확인하시면 Slave 서버 이중화 설정과 Replication 복제 설정에 대한 자세한 내용을 참고하실 수 있습니다. 최초 데이터베이스 복제본으로 복원을 수행한 후 Replication 설정을하면 한 쪽에 생성된 데이터가 다른쪽 DB에도 생성됩니다.

 

2024.02.25 - [Linux] - [Linux/Ubuntu] 리눅스 MariaDB MaxScale 이중화 설정 예제 - 4(Slave 서버 외부접속 허용 및 DB 복제 설정)

 

[Linux/DB] 리눅스 MariaDB MaxScale 이중화 설정 예제 - 4(Slave 서버 외부접속 허용 및 DB 복제 설정)

목차 리눅스 MariaDB 이중화를 위한 Master 서버 virt-manager로 구성 예제 리눅스 MariaDB MaxScale 이중화에 사용되는 virt-manager Slave 서버 구성 예제 리눅스 MariaDB MaxScale 이중화 설정 예제 - 3(Master 서버 외

salguworld.tistory.com

 

 

 

 

 

 

 

리눅스 우분투 20.04 MariaDB 클라이언트 설치 및 DB 접속 예제 이전 포스팅 링크 및 설명

마지막으로 리눅스 우분투 20.04에서 MariaDB 클라이언트를 설치하고 DB에 접속하는 예제를 이전 포스팅에서 다뤘습니다. 해당 포스팅에서는 우분투 20.04에서 MariaDB 클라이언트를 설치하는 방법과 DB에 접속하는 방법에 대해 자세히 설명했습니다. 이전 포스팅의 링크를 확인하시면 MariaDB 클라이언트 설치 및 DB 접속에 대한 자세한 내용을 참고하실 수 있습니다. 만약 MariaDB 데이터베이스에 연결하는 방법을 모르시거나 쿼리를 실행하고싶으신 분은 아래 포스팅을 참고해주세요.

 

2023.10.12 - [Linux] - [Linux/Ubuntu] 리눅스 우분투 20.04 MariaDB 클라이언트 설치 및 DB 접속 예제

 

[Linux/Ubuntu] 리눅스 우분투 20.04 MariaDB 클라이언트 설치 및 DB 접속 예제

목차 리눅스 우분투 MariaDB 서버 설치 및 데이터베이스 생성 예제 이전 포스팅 참고 학습 리눅스 우분투 MariaDB 로그 활성화 예제 이전 포스팅 참고 학습 리눅스 우분투 MariaDB mysqld_safe 활용 루트

salguworld.tistory.com

 

 

 

 

 

 

 

리눅스 MaxScale DB 이중화 MaxScale 패키지 다운로드 및 설치 예제

아래는 리눅스에서 MaxScale DB 이중화를 구현하기 위해 MaxScale 패키지를 다운로드하고 설치하는 예제입니다. 본 예제에서는 MaxScale 패키지를 다운로드하고 설치하는 과정을 자세히 설명하고 있습니다. 아래 명령을 따라하여 설치해주세요. MaxScale 서버는 MariaDB Master, Slave 서버 이외에 설치해도 됩니다. 다만, 본 포스팅은 Master, Slave 둘중 하나라도 서버가 죽으면 반대 서버가 Master를 가져갈 수 있도록 Master 서버와 Slave 서버에 모두 MaxScale을 설치하겠습니다.

 

우선 Master MariaDB 서버에서 아래와 같이 패키지를 설치합니다.

$ cd ~/
$ wget "https://storage.googleapis.com/downloads-cdn.mariadb.com/mariadbmaxscale/6.4/6.4.14/packages/ubuntu/focal/x86_64/maxscale-6.4.14-1.ubuntu.focal.x86_64.deb?GoogleAccessId=downloads-sync%40downloads-234321.iam.gserviceaccount.com&Expires=1707978086&Signature=JHaUHisUhMM8T0KSHudANiiJS9b92Gysl3lpE8Qy9I4y9S1x3RQaef5wIDnGo4wikb5gVkF%2FWmMgkfMMKnl1pt3471uk3n1kQGVHe%2FiWGh%2F7YtPIVZ5nvG5eGFdka5ypL%2FKHiRlb%2Fs05Ol856EcPQOxlHeNAfIznKuiCarUjea1upbuxa1MfclvUFwCJuvFiaISZ98RCTngvoZaMm2YdHbsqyyFdaj5Y29iAx8qIy%2BwYl%2BJG%2F4sl%2FeMHzOZKJtgxF1NFS77CypK8Uzko6Mk%2F6FTi2i%2FXr5iaBECeNIBEOl4fERseSwB93z%2BV3HwSrwkidZYcQRBqUe8FmLQlVihq2Q%3D%3D"
$ mv maxscale-6.4.14-1.ubuntu.focal.x86_64.deb\?GoogleAccessId\=downloads-sync@downloads-234321.iam.gserviceaccount.com\&Expires\=1707978086\&Signature\=JHaUHisUhMM8T0KSHudANiiJS9b92Gysl3lpE8Qy9I4y9S1x3RQaef5wIDnGo4wikb5gVkF%2FWmMgkfMMKnl1pt3471uk maxscale-6.4.14-1.ubuntu.focal.x86_64.deb
$ ls maxscale-6.4.14-1.ubuntu.focal.x86_64.deb
$ sudo dpkg -i maxscale-6.4.14-1.ubuntu.focal.x86_64.deb
$ sudo service maxscale status

 

MariaDB Master 서버에 MaxScale 패키지를 설치한 모습

 

 

 

그리고 아래와 같이 Slave MariaDB 서버에서도 아래와 같이 패키지를 설치합니다.

$ cd ~/
$ wget "https://storage.googleapis.com/downloads-cdn.mariadb.com/mariadbmaxscale/6.4/6.4.14/packages/ubuntu/focal/x86_64/maxscale-6.4.14-1.ubuntu.focal.x86_64.deb?GoogleAccessId=downloads-sync%40downloads-234321.iam.gserviceaccount.com&Expires=1707978086&Signature=JHaUHisUhMM8T0KSHudANiiJS9b92Gysl3lpE8Qy9I4y9S1x3RQaef5wIDnGo4wikb5gVkF%2FWmMgkfMMKnl1pt3471uk3n1kQGVHe%2FiWGh%2F7YtPIVZ5nvG5eGFdka5ypL%2FKHiRlb%2Fs05Ol856EcPQOxlHeNAfIznKuiCarUjea1upbuxa1MfclvUFwCJuvFiaISZ98RCTngvoZaMm2YdHbsqyyFdaj5Y29iAx8qIy%2BwYl%2BJG%2F4sl%2FeMHzOZKJtgxF1NFS77CypK8Uzko6Mk%2F6FTi2i%2FXr5iaBECeNIBEOl4fERseSwB93z%2BV3HwSrwkidZYcQRBqUe8FmLQlVihq2Q%3D%3D"
$ mv maxscale-6.4.14-1.ubuntu.focal.x86_64.deb\?GoogleAccessId\=downloads-sync@downloads-234321.iam.gserviceaccount.com\&Expires\=1707978086\&Signature\=JHaUHisUhMM8T0KSHudANiiJS9b92Gysl3lpE8Qy9I4y9S1x3RQaef5wIDnGo4wikb5gVkF%2FWmMgkfMMKnl1pt3471uk maxscale-6.4.14-1.ubuntu.focal.x86_64.deb
$ ls maxscale-6.4.14-1.ubuntu.focal.x86_64.deb
$ sudo dpkg -i maxscale-6.4.14-1.ubuntu.focal.x86_64.deb
$ sudo service maxscale status

 

Slave 서버에도 똑같이 MaxScale 패키지를 다운로드 받아 설치한 모습

 

 

 

 

 

 

리눅스 MaxScale DB 이중화 MaxScale 이중화 환경 설정 예제

아래는 리눅스에서 MaxScale DB 이중화를 위한 MaxScale 이중화 환경 설정 예제입니다. 앞서 Master, Slave에서 server1, server2로 지정했던 것과 같이 설정합니다. 또한, readwritesplit 옵션을 설정하여 Master MariaDB 서버만 DB에 쓸 수 있도록 권한을 부여합니다. 직접 따라하면서 환경설정을 진행해보세요.

 

우선 MaxScale이 데이터베이스에 접근할 때 사용하는 사용자 계정을 신규 생성합니다. 이미 Master 서버와 Slave 서버는 Replication 되고 있기때문에 Master서버에서 사용자를 생성합니다.

$ sudo mariadb
> CREATE USER 'maxscale'@'%' IDENTIFIED BY 'test1234';
> GRANT ALL ON *.* TO 'maxscale'@'%';
> FLUSH PRIVILEGES;
> exit

 

 

 

우선 Master 서버에서 기존 내용을 모두 삭제하고 아래와 같이 설정합니다. [maxscale] 항목에 local_address를 Master 서버 아이피 주소로 설정합니다.

$ sudo vim /etc/maxscale.cnf

[maxscale]
threads=auto
local_address=172.16.3.36

[server1]
type=server
address=172.16.3.36
port=3306
protocol=MariaDBBackend

[server2]
type=server
address=172.16.3.37
port=3306
protocol=MariaDBBackend

[repl-monitor]
type=monitor
module=mariadbmon
servers=server1,server2
user=maxscale
password=test1234
auto_failover=ON
auto_rejoin=ON

[split-router]
type=service
router=readwritesplit
servers=server1,server2
user=maxscale
password=test1234
master_reconnection=false
master_accept_reads=true

[split-router-listener]
type=listener
service=split-router
protocol=MariaDBClient
port=4009



$ sudo systemctl restart maxscale

Master MariaDB 서버에서 설정한 MaxScale 환경설정 모습 local_address가 Master 서버 IP 주소이다.

 

 

 

 

그리고 Slave MariaDB 서버에서도 아래와 같이 MaxScale 환경설정을 진행합니다.

$ sudo vim /etc/maxscale.cnf

[maxscale]
threads=auto
local_address=172.16.3.37

[server1]
type=server
address=172.16.3.36
port=3306
protocol=MariaDBBackend

[server2]
type=server
address=172.16.3.37
port=3306
protocol=MariaDBBackend

[repl-monitor]
type=monitor
module=mariadbmon
servers=server1,server2
user=maxscale
password=test1234
auto_failover=ON
auto_rejoin=ON

[split-router]
type=service
router=readwritesplit
servers=server1,server2
user=maxscale
password=test1234
master_reconnection=false
master_accept_reads=true

[split-router-listener]
type=listener
service=split-router
protocol=MariaDBClient
port=4009



$ sudo systemctl restart maxscale

Slave MariaDB 서버에 설정된 MaxScale 환경설정. local_address가 Slave 서버 IP 주소이다.

잠깐, 리눅스, C 언어, Java, Python 등
각종 예제 검색하기

공유하기

facebook twitter kakaoTalk kakaostory naver band