헤놀 도커 nextcloud ,mariadb ,phpmyadmin 사용중입니다.
mariadb 환경변수를 수정하려하는데 읽기전용으로 되있다고 메시지창이 뜹니다.
아래 3가지를 수정해주면 성능향상이 있다고 구글이 그러네요.
innodb_buffer_pool_chunk_size 기본값 128M 4G할당하려고합니다.
innodb_buffer_pool_size 기본값 128M 4G할당하려고 합니다.
innodb buffer pool instances 기본값 1 2로 변경하려합니다.
innodb_buffer_pool_size 이것은 수정 가능한데 리부팅 하면 원래값 으로 돌아오네요...
root, 사용자계정 = grant 권한 또는 모든권한이 설정되있습니다. root로도 접속해봐도 똑같네요..
ssh나 phpmyadmin 이나 모두 읽기전용이라고 수정불가입니다.
탐색기에서 모든권한을 줘도 안됩니다.
root 권한자도 이것은 못건드리게 막아 놓은것인지, 방법이 있다면 어디를 만져야될까요
read_only 가 off 상태인데 왜 수정이 안되는지 모르겠네요
MariaDB [mysql]> show variables like'%read_only';
+------------------+-------+
| Variable_name | Value |
+------------------+-------+
| innodb_read_only | OFF |
| read_only | OFF |
| tx_read_only | OFF |
+------------------+-------+
3 rows in set (0.001 sec)
docker run 명령어로 컨테이너 실행 시,
docker run [OPTIONS] IMAGE[:TAG|@DIGEST] [COMMAND] [ARG...] //docker run 명령어 레퍼런스 입니다.
별도의 COMMAND를 지정하여 실행을 하실 수 있습니다.
docker run -d \
(...) \
mariadb mysqld --innodb-buffer-pool-size=4G
이런식으로 원하시는 옵션들을 인자로 넣어주시면 가능합니다
위 명령어는 poos_size 만 가능하고 그외는 불가 하더군여.
다른 두개를 my.cnf에 명령어를 넣을경우 컨테이는 뻑갑니다. Pool_size 에 만족하기로 햇습니다.
docker run -d --name m-test \
-e MYSQL_RANDOM_ROOT_PASSWORD=y \
-e MYSQL_USER=test \
-e MYSQL_PASSWORD=test \
mariadb \
mysqld --innodb-buffer-pool-size=4000000000 --innodb-buffer-pool-instances=2 --innodb-buffer-pool-chunk-size=4000000000
컨테이너가 뻑간다 하셔서, 방금 테스트삼아 이렇게 컨테이너를 실행해보았습니다.
컨테이너가 죽지 않고 잘 살아있어서, 나중에 여유되실 때 한번 시도해보시면 좋을 것 같습니다
--innodb-buffer-pool-instances=1 로 적용되네요...