'open_files_limit'에 해당되는 글 2건

MariaDB open_files_limit 값 변경하기



CentOS 7.x 버전에서 아래처럼 명령어로도 open_files_limit 변경이 안되는 문제가 있습니다.


set global open_files_limit = 10000

#1238 Variable 'open_files_limit' is a read only variable



먼저 /etc/security/limits.conf 에 아래 내용을 추가합니다.


*                -       nofile          65536

또는

*                hard    nofile          65536

*                soft    nofile          65536


저장 후에 재부팅 또는 재접속을 합니다.

아니면 임시로 # ulimit -n 65536 명령어를 실행합니다.


# ulimit -Hn -Sn

open files                      (-n) 65536

open files                      (-n) 65536


위 처럼 값이 변경되었는지 확인 후 다음으로 넘어갑니다.


/etc/systemd/system/multi-user.target.wants/mariadb.service 파일에 아래 내용을 추가합니다.


[Service]

LimitNOFILE=10000


LimitNOFILE=infinity 로 설정하면 ulimit 의 값을 따라갑니다.


systemd 를 reload 후 mariadb 를 재시작 하면 됩니다.


# systemctl daemon-reload

# systemctl restart mariadb


이제 open_files_limit 값을 확인해보세요~



블로그 이미지

영은파더♥

가상서버호스팅 VPS 리눅스 서버관리 윈도우 IT

,

MySQL Too many open files 에러 처리 방법



테스트 환경 : CentOS 7.2 / MariaDB 5.5.47


mysql 에러 로그에 "[ERROR] Error in accept: Too many open files" 이부분이 있다면 open_files_limit 수치를 올리면 된다.


그리고 ulimit -n 으로 시스템의 open files 수치 확인

1024로 나온다면 4096으로 바꿔보자.


일시적인 방법

# ulimit -n 4096

이 방법은 재접속 또는 재부팅하면 다시 이전으로 값이 돌아간다.


영구적인 방법

# vi /etc/security/limits.conf

*    -    nofile    4096

* - nofile 4096 내용 추가후 reboot (재접속 또는 재부팅)


MySQL 에서 open files limit 확인하기


show variables like 'open_files_limit';


Variable_name Value

open_files_limit 1024


1024 로 나온다면 이 수치를 4096으로 올려보자.


vi /etc/my.cnf


[mysqld]

datadir=/var/lib/mysql

socket=/var/lib/mysql/mysql.sock

# Disabling symbolic-links is recommended to prevent assorted security risks

symbolic-links=0

# Settings user and group are ignored when systemd is used.

# If you need to run mysqld under a different user or group,

# customize your systemd unit file for mariadb according to the

# instructions in http://fedoraproject.org/wiki/Systemd


open_files_limit=4096


[mysqld_safe]

log-error=/var/log/mariadb/mariadb.log

pid-file=/var/run/mariadb/mariadb.pid


#

# include all files from the config directory

#

!includedir /etc/my.cnf.d



open_files_limit=4096 을 추가하고 저장


mysql 재시작


# systemctl restart mariadb.service


open files limit 재 확인


show variables like 'open_files_limit';


Variable_name Value

open_files_limit 4096



위 방법으로 안될때는 https://ivps.tistory.com/298 여기를 참고하세요.


블로그 이미지

영은파더♥

가상서버호스팅 VPS 리눅스 서버관리 윈도우 IT

,