이제 Debian 11(Bulls Eye)을 실행하는 Moodle 서버는 코스 관리자가 특정(대규모) 코스를 수동으로 백업하려고 할 때 웹 브라우저에 "데이터베이스에 쓰기 오류" 메시지를 생성하는 것으로 나타납니다.
오류 메시지는 다음 링크로 연결됩니다.오류 /moodle/dmlwriteExceptionmax_allowed_packet
이는 데이터베이스 서버의 설정을 늘려야 할 수도 있음을 의미합니다 .
해당 페이지에서는 MySQL을 참조하고 있는데 MariaDB(v10.5.15)를 실행하고 있는데 문제가 비슷할 것으로 예상했습니다(?).
실제로 MariaDB 구성은 아직 거기에 있는 것 같지만 수정된 설정으로 어떤 구성 파일을 변경해야 할지 /etc/mysql/
잘 모르겠습니다 (또는 다음 중 하나에 추가 "로컬" "재정의" 파일을 추가할 수 있는지 여부). *conf.d
폴더).
아니요
-rw-r--r-- 1 root root 1126 Feb 18 2022 mariadb.cnf
lrwxrwxrwx 1 root root 24 Jun 22 2020 my.cnf -> /etc/alternatives/my.cnf
-rw-r--r-- 1 root root 839 Aug 3 2016 my.cnf.fallback
기본값을 포함합니다 max_allowed_packet
.
이러한 파일은 모두 "include" !includedir /etc/mysql/conf.d/
이고 둘 다 "include" my.cnf
입니다 .mariadb.conf
!includedir /etc/mysql/mariadb.conf.d/
*conf.d
폴더 에서 max_allowed_packet
참조는 다음과 같습니다.
conf.d/mysqldump.cnf:max_allowed_packet = 16M
mariadb.conf.d/50-server.cnf:#max_allowed_packet = 1G
MariaDB 자체에서는 쿼리할 때 (= 16M)을 show variables like 'max_allowed_packet';
반환하는데 16777216
, 이는 더 큰 파일(100MB+)에서 발생하는 문제에 해당하는 것으로 보입니다.
거기에 있는 값이 mariadb.conf.d/50-server.cnf
주석 처리되어 있는 것을 확인했습니다. 해당 폴더에 더 큰 값(주석 해제/활성화)으로 추가 conf 파일을 추가하려는 경우(가능한 경우 OS에 설치된 구성 파일을 직접 편집하고 싶지 않음) 이것이 올바른 위치/방법을 추가할 것입니다. 이걸 설정해?
답변1
다음과 같이 새 구성 파일을 추가하면 됩니다.
cat > /etc/mysql/mariadb.conf.d/50-custom_config.cnf <<EOF
[mysqld]
max_allowed_packet=256M
EOF
업데이트된 구성을 적용하려면 MariaDB를 다시 시작하는 것을 잊지 마세요.
systemctl restart mariadb
그런 다음 작동하는지 다시 확인하세요.
mysql -e "SHOW VARIABLES LIKE 'max_allowed_packet';"
당신은 이것을보아야합니다 :
+--------------------+-----------+
| Variable_name | Value |
+--------------------+-----------+
| max_allowed_packet | 268435456 |
+--------------------+-----------+
:)