inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

따라하며 배우는 MySQL on Docker

Proxy Layer 구성 > ProxySQL 구성 및 Failover 테스트 > app_test_conn.sh 오류 문의

718

hansung cho

작성한 질문수 1

0

좋은 강의 제공해주셔서 많이 배우고 갑니다. 실습 과정중 오류가 발생하여 문의 드립니다.

환경 : 맥북 + Docker 환경

진행사항 : proxysql 이전 과정까지는 정상 완료 (replication, Orchestrator)

사전 작업

centos7 docker 생성 후 app_test_conn.sh 수행 예정

centos docker run -it --name centos7 -h centos7 \

--net mybridge --net-alias=proxysql \

--privileged centos:7 init

오류 현상 01 :  app_test_conn.sh 수행시 오류

centos7 에서 app_test_conn.sh 수행시 16033 포트로 연결이 되지 않음

tcping proxysql 16033 수행시 포트가 close 되어있는 부분 확인, proxysql 데비안 리눅스 환경 확인 후 포트를 열어볼려고 했지만 진행하지 못함.

그래서 poxysql docker의 포트를 6032, 6033으로 다이렉트로 연결해서 생성 후 수행

docker run -it --name proxysql -h proxysql -p 6032:6032 -p 6033:6033 \ --net mybridge --net-alias=proxysql \ -v /Users/hansung/docker/db/proxysql/data:/var/lib/proxysql \ -v /Users/hansung/docker/db/proxysql/conf/proxysql.cnf:/etc/proxysql.cnf \ -d proxysql/proxysql

오류 현상 02 :  app_test_conn.sh 수행시 오류

수행시 아래와 같은 오류 발생 (mysql -uappuser -papppass -hproxysql -P6033)

[root@centos7 ~]# sh app_test_conn.sh

ERROR 1045 (28000): ProxySQL Error: Access denied for user 'appuser'@'172.19.0.7' (using password: YES)

ERROR 1045 (28000): ProxySQL Error: Access denied for user 'appuser'@'172.19.0.7' (using password: YES)

ERROR 1045 (28000): ProxySQL Error: Access denied for user 'appuser'@'172.19.0.7' (using password: YES)

 

트러블 슈팅을 위해서 db01 mysql에 다이렉트로 연결하는 부분으로 설정후 연결 시도. (centos7 > db01)

아래와 같이 정상적으로 연결 확인. (mysql -uappuser -papppass -hdb01 -P3306)

[root@centos7 ~]# sh app_db01_conn.sh

db01    2020-12-09 13:40:24

db01    2020-12-09 13:40:25

참고. 강의 자료의 app_test_conn.sh의 ip 정보는 알수 없는 ip로 proxysql ip로 지정해서 연결 시도 했음.

docker inspect --format '{{.NetworkSettings.Networks.mybridge.IPAddress}}' proxysql

어제 밤부터 삽질 중입니다. 도와주세요.

mysql docker

답변 4

1

김영헌

아이쿠...고생하셨겠네요..

원인 찾기가 쉽지 않았겠어요. ㅠㅠ

그래도 찾아내서 다행입니다.  지금 수강하시는 분들 중에 가장 진도가 빠르세요. ^^

부족한 강의를 잘 들어 주셔서 감사합니다.

1

hansung cho

해결 했습니다. proxysql 문법이 익숙하지 않아서 발생한 부분입니다.

아래 구문 입력 후 "LOAD MYSQL USERS TO RUNTIME;", "SAVE MYSQL USERS TO DISK;"를 입력해야하는데요.

"LOAD MYSQL SERVERS TO RUNTIME;"를 입력해서 발생한 부분입니다. (복붙하다보니 ㅡㅜ)

insert into mysql_users(username, password, default_hostgroup, transaction_persistent) values ('appuser', 'apppass', 10, 0);

LOAD MYSQL USERS TO RUNTIME;

SAVE MYSQL USERS TO DISK;

이어서 실습 계속 하도록 하겠습니다. 고맙습니다.

0

멍순이

저도 이와 같은 실수로 엄청난 삽질을 했는데 진작 이 글을 찾아볼걸 그랬네요 정말 감사합니다!!!!!! 저도 같은 방법으로 해결했습니다!

0

hansung cho

네, 빠른 답변 감사합니다.

맥북 환경에서 재 수행해보았는데요. 오류가 발생하네요.

제가 조금더 살펴보도록 하겠습니다.

base ❯ cat app_test_conn.sh                                                                                                                                                                                    ...

  mysql -uappuser -papppass -h222.99.149.73 -P16033 -N -e "select @@hostname,now()" 2>&1| grep -v "Warning"                                                                                                         │

...

                                                                                                                                                                                                    │

base ❯ sh app_test_conn.sh                                                                                                                                                                                     

ERROR 1045 (28000): ProxySQL Error: Access denied for user 'appuser'@'172.19.0.1' (using password: YES)                 

ERROR 1045 (28000): ProxySQL Error: Access denied for user 'appuser'@'172.19.0.1' (using password: YES)                 

^Z

[6]  + 11950 suspended  sh app_test_conn.sh                                                                                                                                                 

0

김영헌

외부에서 proxysql로 접속할때 사용된 host의 ip는 docker가 설치된 host의 IP 입니다.

mysql -uappuser -papppass -hproxysql -P6033

위 명령어 부분에서 -hproxysql 이 부분을 -h [docker-host-ip]로 변경해서 한번 시도해 보시겠어요?

pdf 압축파일 제공

0

45

1

auto failover 에서 db001 재실행시 db001 read_only 설정하기전 db001, db002 양쪽으로 저장되는 현상

0

189

1

그라파나에서 에러가 발생합니다

0

412

1

CentOS EOS에 따라 기존의 레포지토리 내 패키지들이 삭제되어에러 발생!

0

366

1

프로덕션 환경에서 데이터 베이스 구성에 대하여.

0

247

1

Proxy SQL에 대한 질문입니다.

0

255

1

docker-compose 후 shell 정상작동 후 mysql dashboard 정상작동안함 ㅁ누의

0

178

1

docker-compose build시 db002~db003 not working daemon 현상

0

258

1

testdb.insert_test 테이블 존재 하지 않음에 관한 문의

0

281

2

물리 서버 2대로 Master/Slave 구조가 가능한가요?

0

309

1

failover 진행중 둘다 slave로 설정

0

290

1

app_test_conn.sh

0

300

3

docker orchestrator 설치후 웹접속

0

255

1

docker에서 percona 컨테이너 생성시

0

295

2

app_test_insert.sh 쉘 스크립트 실행 오류

0

238

1

프로메테우스 사용 이유

0

375

1

Slave 서버에서 Master 서버와 연결하는 명령어 입력하면 에러 발생 질문

0

620

2

강의 따라하다가 컴퓨터 재부팅했더니

0

500

1

docker run ... -h -h옵션이 무엇인가요

0

432

1

gluster 설치관련 질문입니다

0

741

2

도와주세요!!!

0

880

2

[Dockerfile] RUN yum install

0

2085

4

HA Fail-over 질문드립니다.

0

907

1

CRUD와 Replication 질문 드립니다.

0

824

1