event_scheduler mysql 이건 어디에 써 먹는 걸까

mysql 8.0을 설치하고 shell로 접속해보니 새로운 녀석이 하나 있다 | 5 | event_scheduler | localhost | NULL | Daemon | 44 | Waiting on empty queue | NULL event_scheduler ?? 라는 게 있는데 이게 뭔지 한번 알아보자!   1. event_scheduler 란 MySQL Events는 스케줄에 따라 실행되는 Task입니다. 이벤트를 생성하면 지정된 시간 간격의 경과에 대한 응답으로 … Read more

systemctl mariadb 시작 에러 해결

 Rocky linux 8에 MariaDB를 새로 설치하고 DB를 올렸는데 [root@dev mysql]# systemctl start mariadb DB는 올라오지 않고 아래와 같은 systemctl 관련 에러가 발생했다. 1. Mariadb error 확인 이게 뭔가 좀 찾아보니 시스템이 느리거나 로딩해야 할 데이터베이스가 너무 많으면 지정된 시간동안 서비스가 완전하게 실행되지 못하거나 time-out이 발생하여 systemd 에서 MariaDB 서비스를 강제로 종료시킨 것이다. 2. Mariadb error … Read more

mariadb 10.4.18 설치시 libncurses.so.5 에러문제 해결

Rocky linux 8에서 mariadb 10.4.18을 설치하다가에러가 나서 확인을 해보니 1. 에러발생 libncurses.so.5: cannot open shared object file: No such file or directory 라이브러리 파일이 없다는 메시지였다. 실제 파일이 없는지 확인을 해보니 실제 파일이 없었다. Mariadb 설치관련 에러를 jira 등에서 좀 구글링 해보니 RedHat 8(=Rocky linux 8) 이상에서는 libncurses.so.5 바이너리를 기본적으로 사용할 수 없다는 것을 알게되었다.그런데 … Read more

mysql 파티션 추가 삭제할 때 REORGANIZE 쓰시나요

대용량 테이블에 파티션을 새로 생성할 때 REORGANIZE 명령어를 사용한다면Lock 대환장 파티를 볼 수도 있다 1.파티션 테이블 용도 확인 파티션이 구성된 테이블의 현재 OLTP 인지 OLAP 로 쓰는 테이블인지테이블 성격을 일단 확인해야 한다 그리고 OLTP라면 REORGANIZE 명령어는 원만하면 쓰지 말자 2. 파티션 추가시 LOCK 발생 실제 사례 테이블의 data size :3.3GB 정도 되는 대용량 테이블이었다. #여기서 … Read more

[Warning] Plugin ‘FEDERATED’ is of maturity level gamma while the server is stable

MariaDB 10.6.15 로 업그레이드 하다가 에러로그를 보니 전에는 보지 못했던 federated 관련 [Warning] 로그가 떠서 maturity level gamma 가 어떤 걸 말하는지 궁금해졌고 관련 로그에 대해 확인해보았다. 1. Warning 확인방법 MariaDB shell에서 확인 2. PLUGIN_MATURITY 란? 플러그인의 성숙도 Unknown < Experimental < Alpha < Beta < Gamma < Stable 중 하나입니다. 3. 명령줄 옵션 (MariaDB … Read more

mariadb-secure-installation 무엇인가?

mariadb 를 초기 설치를 하게 되면 DB를 실행 후추가적으로 mysql_secure_installation을 실행하게 되는데 그런데 이번에 DB 업그레이드 검토를 mysql_secure_installation가 스크립트 네이밍이 변경된 것을 알게 되었다.하이픈(-)이 가운데로 올라간 정도(?) 인지 아니면 다른 게 더 있는지mariadb-secure-installation 스크립트에 대해 자세히 알아본다. 1. mariadb-secure-installation 란? mariadb-secure-installation은 (MariaDB 10.4.6 or MariaDB 10.5.2) 이후부터 제공되는mysql_secure_installation에 대한 심볼릭링크로 MariaDB 설치의 보안을 향상시키기 위한 … Read more

mysql last_day 사용법

1. last_day 함수란? MySQL의 LAST_DAY함수는 주어진 날짜 또는 날짜/시간의 월 마지막 날을 파악하는 데 사용할 수 있다.LAST_DAY()함수는 날짜 값을 인수로 받아 해당 날짜의 월 마지막 날을 반환합니다. 2. last_day 사용할 때 주의점 last_day 함수의 input vaule와 retunn type 을 제대로 알고 쓰지 않으면 잘못된 값(NULL)을 반환할 수 있다. 3. last_day 사용 예제 last_day(값) 함수의 input … Read more

mysql 데드락 확인방법 show engine innodb status

1.데드락 확인 명령어 mysql에서 Lock 관련 튜닝 포인트를 확인할 때 를 실행하면 가장 최근 데드락이 발생한 트랜젝션을 알 수 있다. ex) show engine innodb log 2.데드락 설정 파라미터 값은? #자동 데드락감지mysqldb는 데드락을 자동감지해서 my.cnf에 설정된 시간이 지나면 자동 롤백을 진행하고설정 파라미터는 아래와 같다. default는 120초로 되어있는데 보통 서비스DB는 60초 내외로 설정한다. 3.데드락 확인 로그가 너무 … Read more

CentOS 버전별 mysql binary 설치 파일 정리

1. binary 설치를 선호하는 이유 mysql 을 yum 업데이트나 apt-get 으로 설치하면 다량의 서버를 일괄 업데이트나 관리하기 편하긴 하지만폴더 경로 등을 마음대로 수정하기 어렵다. 예를 들어 SAS 디스크를 사용하는 DB의 성능 향상을 위해디스크를 SSD나 nvme 로 업그레이드를 검토했을 때yum이나 apt-get으로 설치했다면 OS를 재설치해서 파티션를 새롭게 잡아야 한다. 하지만 binary로 설치하면 디스크 파티션을 새로 추가하고DB는 데이터 … Read more