테이블이 많을때 비정상적으로 출력이 되어
mysql 오류를 보면...;
Can't find file: './CrediMail/tb_webhard554_hits.frm' (errno: 24)
.....
라고 출력되고, 에러를 토함.
해결방법
my.cnf 파일에
open_files_limit = 4096
추가후
mysql을 재기동하여 확인한다.
mysql> show variables like 'open_files%';
끝.
-------------------------------------------------------------------
근데 이렇게 쉽게 변경되어있지 않고 1024로 박혀있는 경우가있다.
그럴경우 다시 mysql 에러로그를 보면
[Warning] Could not increase number of max_open_files to more than 1024 (request: 4096)
라는 에러가 나온다.
이러면 시스템상에서 제한을 풀어주어야 한다.
# ulimit -a |grep open 을 해보면
open files (-n) 1024 로 되어있음.
root계정으로 들어간후
# vi /etc/security/limits.conf
을 열어서
....
web(계정명) soft nofile 4096
web(계정명) hard nofile 4096
....
추가하고 리눅스 재기동!
mysql 에 접속하여 다시 확인해보면 제대로 되어있음.
그래도 에러가난다면 리밋을 더 올림.
끝.
'업무 > DB' 카테고리의 다른 글
[mysql] 커맨드에서 쿼리날리기 (0) | 2012.11.19 |
---|---|
[db] 중복된 값 찾기 (0) | 2012.09.21 |
[mysql] 개발DB만들기 (0) | 2012.08.21 |
[mysql] sql덤프받기(특정조건, 문자셋지정해서) (0) | 2012.08.20 |
[oracle] 테이블 복사하기 (0) | 2012.05.31 |