티스토리 뷰

반응형

*참고사이트

http://mysqldba.tistory.com/71

http://phpbugs.wordpress.com/2012/06/04/the-total-number-of-locks-exceeds-the-lock-table-size  http://stackoverflow.com/questions/6901108/the-total-number-of-locks-exceeds-the-lock-table-size

 

위 사이트들을 살펴보고 공통적으로 알아낸 것은 'innodb_buffer_pool_size'라는 mysql 변수의 값을 초과해서 발생한 에러라는 점이다. 배치를 돌릴 때 자주 발생한다는데 정말로 스케쥴러에서 이 에러가 발생했다 ㅠㅠ

 

해결책은  mysql의 설정파일인 my.cnf에서 innodb_buffer_pool_size 값을 늘려주는 것이다. 

innodb_buffer_pool_size의 기본값이 8,388,608이라는데 이것은 byte 값이다. 

innodb_buffer_pool_size=64MB 이런식으로 변경해 주면 된다고 한다. 

 

그리고 설정파일을 변경했기 때문에 mysql 서버를 재시작해 주어야 적용이 된다. 

 

*mysql 서버 재시작은 두 가지 방법이 있다고 한다.

  1. 서비스 mysqld 재시작하거나
  2. /etc/init.d/mysqld 재시작하거나

*설정을 변경하고 변수에 대한 상태를 점검하고 싶을 때 참고할만한 곳 : https://pat.im/1033

 

 

반응형
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/05   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
글 보관함