SQL/MYSQL

[MySQL] DROP RESOURCE GROUP 문: 불필요한 리소스 그룹 안전하게 삭제하기

Ant_U 2025. 6. 15. 01:00
728x90
반응형

 

리소스 정리는 성능 관리의 시작

MySQL 8.0에서 도입된 리소스 그룹 기능은 CPU 자원을 세분화해 쿼리 실행을 조절하는 데 유용합니다. 그러나 사용하지 않는 리소스 그룹은 혼란을 초래하고 시스템 자원 관리에도 부담이 될 수 있습니다. 이때 필요한 것이 DROP RESOURCE GROUP 문입니다. 이 글에서는 리소스 그룹을 안전하게 제거하는 방법을 소개합니다.


1. DROP RESOURCE GROUP이란?

DROP RESOURCE GROUP 문은 기존에 생성된 리소스 그룹을 삭제하는 명령어입니다. 이 명령은 해당 그룹이 더 이상 사용되지 않을 때 리소스를 정리하고 관리 효율을 높이기 위해 사용됩니다.

기본 구문:

DROP RESOURCE GROUP rg_background;

2. 사용 전 확인사항

  • 리소스 그룹이 현재 세션 또는 다른 사용자에게 사용 중이라면 삭제할 수 없습니다.
  • 삭제 전, 해당 그룹을 사용하는 세션이나 스레드가 없도록 해야 합니다.
  • 시스템 기본 그룹은 삭제할 수 없습니다 (예: USR_default).

사용 중 오류 예시:

ERROR 3572 (HY000): Resource group 'rg_background' is currently in use.

이런 경우 먼저 해당 세션을 종료하거나 리소스 그룹에서 해제한 뒤 삭제를 시도해야 합니다.


3. 권한과 제한 사항

  • RESOURCE_GROUP_ADMIN 권한이 있어야 삭제 명령을 실행할 수 있습니다.
  • 삭제는 즉시 적용되며 복구할 수 없습니다. 삭제 전 백업이나 구성을 기록해두는 것이 좋습니다.

4. 실무 예제와 시나리오

  • 테스트 용도로 만든 rg_testload 그룹을 삭제:
DROP RESOURCE GROUP rg_testload;
  • 운영 중 더 이상 사용되지 않는 그룹 제거:
SET RESOURCE GROUP USR_default;
DROP RESOURCE GROUP rg_oldops;

결론 및 실무 팁

DROP RESOURCE GROUP 문은 시스템의 리소스 그룹 구성을 정리하고 효율적으로 유지하는 데 필수적인 도구입니다. 삭제 전 사용 여부를 반드시 확인하고, 시스템 안정성을 고려한 계획된 삭제가 중요합니다.

실무 팁:

  1. 삭제 전, performance_schema.threads에서 해당 그룹이 사용 중인지 확인하세요.
  2. 프로비저닝 자동화 시스템에서는 리소스 그룹 제거도 함께 고려해 관리 스크립트에 반영하세요.
  3. 삭제가 필요한 경우에도, 동일한 설정의 재생성을 위한 SQL 템플릿을 저장해두는 것이 좋습니다.

공식 문서 링크

728x90
반응형