반응형
250x250
Notice
Recent Posts
Recent Comments
Link
«   2024/04   »
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
Archives
Today
Total
관리 메뉴

가끔 보자, 하늘.

MySql(MariaDB) binary logs 관리 본문

개발 이야기/DB, 데이터분석, AI

MySql(MariaDB) binary logs 관리

가온아 2021. 12. 2. 10:50

새로 DB 구축할 때 가끔 까먹는 설정 중 하나가 binary logs 유효기간을 설정하는 것입니다.

용량 부족해서 터져봐야... "아.. !! XxXxxXxX  ... " 

각설하고 바로 정리하겠습니다. 

> mysql -uroot -p

MariaDB [(none)]> show variables like '%expore%';
+----------------------------+-------+
| Variable_name              | Value |
+----------------------------+-------+
| expire_logs_days           | 0     |     >> 0으로 설정되어 있습니다. 영구적으로 남깁니다.
| innodb_log_arch_expire_sec | 0     |
+----------------------------+-------+
2 rows in set (0.01 sec)

MariaDB [(none)]> set global expire_logs_days=7;  >> 7일 정도면 충분하리라 생각됩니다.
Query OK, 0 rows affected (0.00 sec)

MariaDB [(none)]> show variables like '%expire%';  >> 다시 설정값을 확인해보면..
+----------------------------+-------+
| Variable_name              | Value |
+----------------------------+-------+
| expire_logs_days           | 7     |   >> 잘 설정되어 있네요.
| innodb_log_arch_expire_sec | 0     |
+----------------------------+-------+
2 rows in set (0.00 sec)

그런데 disk 용량이 아예 부족해지면 mysql console로 접속도 못하게 됩니다. 

그럴때는 mysql 폴더로 가서 바이너리 로그를 직접 삭제해야 합니다. 

cd /var/lib/mysql   >> mysql 바이너리 파일이 있는 폴더로 접근합니다.

vi mysql-bin.index  >> 로 들어가서 마지막 binaray 파일만 남겨두고 모두 삭제하세요. 

rm -rf mysql-bin.0000xx >> mysql-bin.index 에 남겨둔 파일명을 제외한 나머지 바이너리 파일을 삭제하면 됩니다.

혹시 다른 큰 파일의 용량으로 문제가 발생한다면 du -sh * 로 문제된 파일이 어디있는지 확인해서 해결하시면 됩니다.

개발에 관리에 ... 어려운 시기에.. 작은 회사에서 일해가는게 쉽지 않지만... 즐거운 마음으로 또 하루 이어갑니다. :)

 

 

반응형