반응형
운영서버 운영 도중 Could not get JDBC Connection; nested exception is java.sql.SQLException
와 같은 연결 에러가 발생하였다.
해당 DB서버의 mysql 서비스가 종료되었는지 확인해봤지만 서비스는 정상적으로 기동중인것을 볼 수 있었다.
별 수 없이 재기동을 하기 위해 종료 명령어를 실행하였다.
service mysql stop
몇 분을 기다려도 mysql 서비스가 무기한으로 종료 요청만 진행될뿐 종료가 되지 않았다.
이상하다고 판단되어 서버의 용량을 확인해보니 남은 용량이 없었다.
df -h
서버 내 용량을 800메가 이상 사용중인곳을 확인하기 위해 아래 명령어를 실행하였다.
find ./* -size +800000k
명령을 입력하니 mysql/mysql-bin.000001과 같은 로그파일들이 잔득 쌓여있는 모습을 확인하였다.
해당 디렉토리로 이동하여 용량들을 확인해보니 약 30기가정도를 사용 중는데, 해당 로그들은 데이터를 지금 또는 나중에 업데이트하는 모든 명령문이 기록되어 있다.
각 명령문에 대한 데이터를 업데이트하는 시간 정보도 가지고 있는데, 사실 로그라 이미 한참 지난 불필요한 로그는 삭제처리하여도 문제가 없어서 삭제 조치를 하였다.
해당 로그 데이터가 5일 이상 지나면 삭제 될 수 있도록 설정파일에 옵션을 추가하였다.
/etc/my.cnf
[mysqld]
expire_logs_days = 5
5일 이상이 지난 로그파일들이 삭제되는 옵션이다.
삭제 후 용량을 확인시 32g가 확보되었고 정상적으로 mysql 서비스는 올라왔다.
이후 톰캣 재시작을 하니 정상적으로 운영이 가능해졌다.
반응형
'Databases > Mysql' 카테고리의 다른 글
Mysql - Insert하는 데이터의 PK값이 있으면 update 처리하기 ON DUPLICATE KEY UPDATE (0) | 2020.01.21 |
---|---|
Mysql - 접근중인 세션, 접속자 확인하기 (0) | 2020.01.15 |
Mysql - 테이블 명세서 쿼리를 통해 호출하기 (0) | 2019.12.06 |
Mysql - Case When 치환문자 한글이 '?????' 처리(한글 깨짐) (0) | 2019.12.05 |
Mysql - could not connect to mysql can't connect to mysql server on 'localhost' (10061) (code 2003) (0) | 2019.12.04 |