잠시만 기다려 주세요

     '대한민국이 더이상 발전하지 못하는 것은 부패한 언론들의 쓰레기짓 때문이다.'
전체검색 :  
이번주 로또 및 연금번호 발생!!   |  HOME   |  여기는?   |  바다물때표   |  알림 (27)  |  여러가지 팁 (1126)  |  추천 및 재미 (166)  |  자료실 (25)  |  
시사, 이슈, 칼럼, 평론, 비평 (1054)  |  끄적거림 (160)  |  문예 창작 (736)  |  바람 따라 (75)  |  시나리오 (760)  |  드라마 대본 (248)  |  
살인!


    여러가지 팁

리눅스 서버 - mariadb + proxysql 3.0.x 설정.... mariadb 접속 안정화 proxysql pooler 사용하기...
이 름 : 바다아이   |   조회수 : 1664         짧은 주소 : https://www.bada-ie.com/su/?yycUc0R5_0RS
proxysql 3.0.x 버전 기준입니다. 2.x 버전대는 다를 수 있습니다.

먼저 사양이 좋지 않은 단일 서버 환경이라면 proxysql 이 오히려 자원을 잡아먹는 범인이 될 수 있습니다. ^^;
접속자가 많고 로드벨런싱이나 read, write 분리를 원할 때 사용하는 겁니다. 참고하세요...
그러나 개인적 공부용으로 적용해 보시는 것은 나쁘지 않습니다.

원래 proxysql 을 쓰는 이유는 접속의 원활함도 있겠지만 기능을 분리하고 병렬 로드벨런싱 기능이 더 강합니다.
mariadb 같은 경우 이미 pooler 가 내부에 장착되어 있기 때문에 저사양 작은 작업에서는
차라리 proxysql 을 안 쓰는 것이 더 좋을 수 있습니다. 참고하세요...

mariadb 와 proxysql 설치는 되었다는 가정입니다.
이 부분을 알 정도면 mariadb 설치법 정도는 다 알고 있다는 가정을 하겠습니다.
proxysql 은 그냥 패키지 받아다 설치만 하시면 끝입니다. 간단하죠...

데비안 저장소 추가 (만약 다른 배포판이면 https://www.proxysql.com/ 가서 확인하세요.)
apt-get install -y --no-install-recommends lsb-release wget apt-transport-https ca-certificates gnupg
wget -O - 'https://repo.proxysql.com/ProxySQL/proxysql-3.0.x/repo_pub_key' | apt-key add - 
echo deb https://repo.proxysql.com/ProxySQL/proxysql-3.0.x/$(lsb_release -sc)/ ./ | tee /etc/apt/sources.list.d/proxysql.list
wget -nv -O /etc/apt/trusted.gpg.d/proxysql-3.0.x-keyring.gpg 'https://repo.proxysql.com/ProxySQL/proxysql-3.0.x/repo_pub_key.gpg'
apt-get update
apt-get install proxysql

직접 파일 받아서 아래처럼 설치 해도 됩니다.

apt install ./받은파일


systemctl enable proxysql
systemctl start proxysql



https://proxysql.com/

파일은 위에 사이트 가셔서 받아 설치하시면 됩니다....

그냥 받아서 단순 설치하시고 localhost 상에서 접속하시면 따로 설정 파일 건들지 않으셔도 됩니다.
설정 파일은 /etc/proxysql.cnf 에 있습니다.
설정파일은 어렵지 않아서 보시면 바로 아실 수 있습니다.


일단 proxysql 관리콘솔에 접속하기

mysql -u admin -p -h 127.0.0.1 -P6032
# 기본 비밀번호: admin

관리자 콘솔에 접속하시면 일반 mariadb 콘솔과 똑같습니다.

먼저 관리자 비밀번호를 변경을 합니다. 아무나 접속하면 안되니까요..

UPDATE global_variables
SET variable_value='admin:관리자비밀번호'
WHERE variable_name='admin-admin_credentials';

LOAD ADMIN VARIABLES TO RUNTIME;
SAVE ADMIN VARIABLES TO DISK;



mariadb 서버와 유저를 등록해야 합니다.

-- 기존 값 확인
SELECT * FROM mysql_servers;

-- 기존 예시 삭제 (필요시)
DELETE FROM mysql_servers;

-- 새 서버 등록
INSERT INTO mysql_servers (hostgroup_id, hostname, port, max_connections) 
VALUES (1, '127.0.0.1', 3306, 100);

LOAD MYSQL SERVERS TO RUNTIME;
SAVE MYSQL SERVERS TO DISK;


참고 !! -- hostgroup_id --

1: primary group (기본 그룹)
2 이상: replica group 또는 다른 목적


mariadb 사용자를 proxysql 에 등록하도록 하겠습니다.

-- 사용자 확인
SELECT * FROM mysql_users;

-- 새 사용자 추가
INSERT INTO mysql_users (username, password, default_hostgroup, transaction_persistent)
VALUES ('appuser', 'app1234', 1, 1);

-- 적용
LOAD MYSQL USERS TO RUNTIME;
SAVE MYSQL USERS TO DISK;



사용자 등록시에 mariadb 의 실제 유저를 써 주시면 됩니다.. 관리자 mysql_users 에는 패스워드가 암호화는 되지 않습니다..
참고하세요... 암호화 하면 복잡해 집니다.. ^^; 


이제 ProxySQL이 백엔드 서버 상태를 자동으로 모니터링하도록 계정 생성을 하고 역시 등록하겠습니다.

MariaDB 쪽: (실제 mariadb 서버에 접속을 하세요..)

CREATE USER 'monitor'@'127.0.0.1' IDENTIFIED BY 'monitor123';
GRANT USAGE ON *.* TO 'monitor'@'127.0.0.1';


ProxySQL 쪽: (proxysql 관리자 콘솔로 다시 접속하세요...)

SET mysql-monitor_username='monitor';
SET mysql-monitor_password='monitor123';

LOAD MYSQL VARIABLES TO RUNTIME;
SAVE MYSQL VARIABLES TO DISK;



자 이제 제대로 작동하는지 확인해 봅시다..

SELECT * FROM stats_mysql_connection_pool;

아래처럼 나오면 잘 작동되는 것입니다. 숫자는 설정에 따라 다를 수 있습니다.

hostgroup_id | srv_host     | status | ConnUsed | ConnFree | ConnOK
1             | 127.0.0.1    | ONLINE | 0        | 10       | 1



이제 끝났습니다.. proxysql 을 재시작 합시다.

systemctl restart proxysql

기존 접속 소스에서 포트만 6033 으로 변경해서 접속을 하시면 제대로 접속이 되실 겁니다
그냥 중간에 proxysql 을 거쳐서 mariadb 로 가는 것입니다.
프로그램에서는 mariadb 접속 부분 포트만 변경하면 끝!!!

proxysql 을 통해 mariadb 로 잘 접속되는지 테스트

mysql -u appuser -p -h 127.0.0.1 -P6033

접속 잘 되면 된 겁니다. 어려울 것이 없습니다.
끝!!

간단한 쿼리 테스트

SELECT NOW();
SHOW DATABASES;


!! 참고 : proxysql 

관리 포트    6032
클라이언트 포트    6033


 
| |





      1 page / 38 page
번 호 카테고리 제 목 이름 조회수
1126 리눅스 데스크탑 데비안 리눅스에서 dd 명령어 1초만에 끝나고 usb 에 복사 안 될때... 바다아이 335
1125 음식관련 계란 상했는지 확인하는 법... 먹기 전에 물에 담가보세요.. 바다아이 1374
1124 의학관련 힘줄 인대 관절... ??? 바다아이 1225
1123 음식관련 통풍에 권장되는 식단.... 바다아이 1429
1122 리눅스 서버 리눅스 프로세스 "자원 양보" 설정 (nice), 리눅스 프로세스 "자원 양보" 설정 (nice) 바다아이 1353
1121 리눅스 데스크탑 아치리눅스 디스크 잡아먹는 돼지 폴더 찾아내기.., 쓸데 없는 필요 없는 파일 찾기... 바다아이 1358
1120 리눅스 데스크탑 아치리눅스 캐시 삭제하기.... paccache 바다아이 1465
1119 리눅스 서버 데비안 13 monitorix 서버 모니터링 설치합니다. 실시간 모니터링 btop 설치... 바다아이 1379
1118 리눅스 서버 debian 13 haproxy 설치하기... mariadb + haproxy 바다아이 1403
1117 리눅스 서버 debian 13 fail2ban 설치하기... ssh 공격을 방어해 봅시다. 바다아이 1406
1116 리눅스 데스크탑 유튜브용 브라우저 광고 없는 brave 브라우저 최고!! 바다아이 1516
1115 음식관련 달걀, 계란 크기별 단백질 양, 계란 크기별 단백질 및 칼로리 (평균치) 바다아이 1348
1114 리눅스 서버 debian 13 webalizer 설치하기.. sid webalizer 설치하기. 바다아이 1419
1113 golang golang postgresql 접속시 콘솔과 실제 golang 프로그램에서 postgresql 접속 시간이 안 맞을 때..timezone 문제.. 바다아이 1438
1112 리눅스 데스크탑 usb 부팅 hdmi 모니터 아치리눅스 설치시 화면 안 나오는 문제.... 바다아이 1575
1111 컴퓨터/핸드폰 freet 알뜰폰과 중국 핸드폰.. 중국폰... 가성비 중국 핸드폰.. 바다아이 1741
1110 리눅스 데스크탑 debian stable + backports 자동 업그레이드 스크립트.... 바다아이 1515
1109 리눅스 데스크탑 리눅스 user@1000, xdg-document-portal 데몬 때문에 컴퓨터 꺼질 때 느려지는 현상... 끌때 안 꺼지는 현상.... 바다아이 1592
1108 컴퓨터/핸드폰 토렌트 다운로드 속도가 안 나올 때...  바다아이 1384
1107 리눅스 데스크탑 데비안 리눅스 xfce4 스크린 세이버 락 걸리는 현상... 스크린 세이버 설정이 안 먹힐 때... screensaver 바다아이 1481
1106 리눅스 서버 데비안 리눅스 메모리 테스트 하기... 메모리 오류 테스트. 램 테스트. 다른 배포판도 똑같습니다. 바다아이 1482
1105 리눅스 데스크탑 yay, pacman 에러가 날 때...  lock 에러 날 때.... 링크 에러 날 때... 바다아이 1474
1104 리눅스 서버 proxysql 3.0.x 관리자 비밀번호 잘못 변경 했을 때....  관리자 비밀번호 까먹었을 때.... 바다아이 1567
현재글 리눅스 서버 mariadb + proxysql 3.0.x 설정.... mariadb 접속 안정화 proxysql pooler 사용하기... 바다아이 1665
1102 golang golang mariadb, mysql 접속 pooler proxysql 에 관한 설명..!!! mariadb 접속 개선, 연결 속도 증가 설정.. 바다아이 1601
1101 golang golnag 받아온 의존 패키지 및 등등...  Go 언어에서 패키지를 업데이트... go get 업데이트... 바다아이 1518
1100 golang golang 에서 postgresql + pgx + pgbouncer 사용하기... 기존 설정 그대로 유지하면서 성능 향상 됩니다. pgbouncer 사용, 설명... 바다아이 1631
1099 리눅스 데스크탑 아치리눅스에서 surfshark 에러나는 문제..  archlinux surfshark error.... 바다아이 1707
1098 음식관련 쌀, 곡물 곰팡이 조심... 1급 발암물질입니다. 절대 드시면 안됩니다.. 간암 걸려요... -.-; 바다아이 1950
1097 리눅스 데스크탑 리눅스 폰트 추가하기.... 바다아이 1880
| |









Copyright ⓒ 2001.12. bada-ie.com. All rights reserved.
이 사이트는 리눅스에서 chrome 기준으로 작성되었습니다. 기타 브라우저에서는 다르게 보일 수 있습니다.
[ Debian + GoLang + PostgreSQL + Mariadb + PgBouncer + ProxySQL]
서버위치 : San Jose Datacenter  실행시간 : 0.05911 초
to webmaster... gogo sea. gogo sea.