programing

mariadb 통신 패킷을 읽는 중 오류 발생

testmans 2023. 8. 23. 21:39
반응형

mariadb 통신 패킷을 읽는 중 오류 발생

문제가 있어요.주 서버에서 다른 서버로 MariaDB를 분할할 때(데이터베이스 서버에서 최신 태그에서 MariaDB 도커를 실행 중) 다음 오류가 발생했습니다.

통신 패킷을 쓰는 동안 오류가 발생했습니다.

나는 2개의 서버를 가지고 있고, 하나는 웹 서버(nodb)이고, 다른 하나는 4기가그램과 4코어(코어당 2g)의 우분투 20.04입니다.

포트가 열려 있고 PING이 1ms 미만입니다.

기본적인 WP 사이트 DB로 시도해보니 연결은 정상이고, 문제는 없었지만, 제 데이터베이스는 약 1GB이고 이것이 문제를 일으킨 것 같습니다.

개인 네트워크를 통해서도 연결을 시도합니다.192.168.100.25) 대신 공개 IP를 사용하지만 문제는 동일합니다.

여기 내 MariaDB 로그가 있습니다.

db: 'wpdb' 사용자: 'root' 호스트: 'myip'에 대한 연결 3이 중단되었습니다(통신 패킷을 읽는 동안 오류가 발생했습니다).

db: 'wpdb' 사용자: 'root' 호스트: 'myip'(통신 패킷을 쓰는 동안 오류가 발생했습니다)

MariaDB 구성도 편집했습니다.

  • max_allowed_packet이 1GB로 증가했습니다.
  • net_filename_length가 1000000으로 증가했습니다.

하지만 아무것도 변하지 않아요!

여기 mariadb 변수가 있습니다: https://pastebin.ubuntu.com/p/yHFRh7CnVC/

글로벌 상태 표시: https://pastebin.pl/view/b3db2b91

프로세스 목록 표시:

8,root,31.56.66.249:60612, 쿼리,0,시작,전체 프로세스 목록 표시, 0

서버 루트에 대한 ulimit:

ubuntu@rangoabzar:~$ ulimit -a 
ulimit -a 
core file size          (blocks, -c) 0
data seg size           (kbytes, -d) unlimited
scheduling priority             (-e) 0
file size               (blocks, -f) unlimited
pending signals                 (-i) 15608
max locked memory       (kbytes, -l) 65536
max memory size         (kbytes, -m) unlimited
open files                      (-n) 1024
pipe size            (512 bytes, -p) 8
POSIX message queues     (bytes, -q) 819200
real-time priority              (-r) 0
stack size              (kbytes, -s) 8192
cpu time               (seconds, -t) unlimited
max user processes              (-u) 15608
virtual memory          (kbytes, -v) unlimited
file locks                      (-x) unlimited

도커 컨테이너의 ulimit:

root@63aa95764534:/#  ulimit -a
core file size          (blocks, -c) unlimited
data seg size           (kbytes, -d) unlimited
scheduling priority             (-e) 0
file size               (blocks, -f) unlimited
pending signals                 (-i) 15608
max locked memory       (kbytes, -l) 64
max memory size         (kbytes, -m) unlimited
open files                      (-n) 1048576
pipe size            (512 bytes, -p) 8
POSIX message queues     (bytes, -q) 819200
real-time priority              (-r) 0
stack size              (kbytes, -s) 8192
cpu time               (seconds, -t) unlimited
max user processes              (-u) unlimited
virtual memory          (kbytes, -v) unlimited
file locks                      (-x) unlimited

iostat

htop

여러 행을 반환하는 쿼리를 수행한 다음 행을 사용하여 해당 행을 처리함으로써 동일한 오류가 발생했습니다.다음()(골랑에서), 행을 호출하지 않고 관련 없는 오류로 인해 일찍 종료됩니다.닫기().혼란스러운 부분은 처음 몇 번 작동했지만 결국 실패했다는 점입니다. 이는 일부 리소스(연결)가 사용되고 있음을 나타냅니다.

나는 골랑의 연기 진술을 이용할 수 있었고, 그냥.

줄을 늦추다닫기()

행을 호출하기 전에.다음()이지만 행을 호출합니다.행에서 조기 종료할 때마다 닫기().Next() 루프도 작동합니다.

언급URL : https://stackoverflow.com/questions/65553488/mariadb-error-reading-communication-packets

반응형