>  기사  >  데이터 베이스  >  MySQL 캐시를 지우는 몇 가지 방법에 대해 이야기해 보겠습니다.

MySQL 캐시를 지우는 몇 가지 방법에 대해 이야기해 보겠습니다.

PHPz
PHPz원래의
2023-04-19 14:15:493120검색

MySQL 캐시 지우기: MySQL의 메모리 리소스를 해제하는 방법

MySQL은 현재 매우 널리 사용되는 데이터베이스입니다. 데이터 양이 계속 증가하고 액세스 양이 계속 증가함에 따라 캐시가 너무 많은 공간을 차지하고 서버의 성능에 영향을 미칠 수 있습니다. 성능. 따라서 이 경우 MySQL 캐시를 지우면 서버에서 실행되는 MySQL의 효율성이 크게 향상될 수 있습니다. 이 기사에서는 참조용으로 MySQL 캐시를 지우는 여러 가지 방법을 소개합니다.

  1. Clear key_buffer 캐시

Key_buffer는 MyISAM 스토리지 엔진의 캐시로 주로 MyISAM에서 일반적으로 사용되는 인덱스 파일을 캐시하는 데 사용되며 쿼리 효율성을 크게 향상시킬 수 있습니다. 애플리케이션에 쓰기 작업이 많거나 인덱스 파일이 너무 크면 key_buffer 캐시 사용량이 높을 수 있습니다. 다음 명령을 통해 key_buffer 캐시를 지울 수 있습니다.

FLUSH TABLES WITH READ LOCK;
FLUSH QUERY CACHE;
RESET QUERY CACHE;
RESET MASTER;
  1. Clear query_cache 캐시

MySQL에는 key_buffer 캐시 외에도 SELECT 쿼리 문을 캐시하고 그 결과를 캐시에 저장할 수 있는 또 다른 캐싱 방법인 query_cache가 있습니다. 사용자가 다시 쿼리하면 캐시에서 데이터를 얻을 수 있어 쿼리 효율성이 크게 향상됩니다. 그러나 이 캐시는 대규모 쓰기 작업에는 적합하지 않습니다. 다음 명령을 사용하여 query_cache 캐시를 지울 수 있습니다.

FLUSH QUERY CACHE;
  1. Clear innodb_buffer_pool 캐시

InnoDB 스토리지 엔진은 종종 innodb_buffer_pool 캐시를 사용하여 최근에 사용된 데이터와 인덱스를 캐시하므로 후속 쿼리 요청을 더 빠르게 처리할 수 있습니다. 그러나 데이터 볼륨이 너무 크고 캐시를 많이 점유하는 경우 MySQL의 운영 효율성에 영향을 미칠 수 있습니다. 다음 명령을 통해 innodb_buffer_pool 캐시를 지울 수 있습니다.

SET GLOBAL innodb_buffer_pool_size=0;
SET GLOBAL innodb_buffer_pool_size=<<memory-size>>;

그 중 < >가 필요한 것입니다. innodb_buffer_pool 캐시 크기를 설정합니다(예: 256M).

  1. MySQL 서비스 다시 시작

위 방법으로 캐시를 지운 후에도 MySQL이 여전히 많은 메모리 리소스를 차지한다면 MySQL 서비스를 다시 시작해 보세요. MySQL을 다시 시작하면 MySQL이 먼저 메모리의 모든 점유를 지워 캐시가 더 적은 공간을 차지하도록 할 수 있습니다. 다음 명령을 사용하여 MySQL 서비스를 다시 시작할 수 있습니다.

service mysql restart

Summary

MySQL 데이터베이스를 사용할 때 캐시를 지우면 MySQL의 메모리 리소스가 해제되고 MySQL이 정상적으로 작동할 수 있습니다. key_buffer 캐시 지우기, query_cache 캐시 지우기, innodb_buffer_pool 캐시 지우기, MySQL 서비스 재시작 등 서버에서 MySQL이 정상적으로 작동하고 오류가 없는지 확인하려면 실제 상황에 따라 선택해야 합니다. 관련 작업의 실행.

위 내용은 MySQL 캐시를 지우는 몇 가지 방법에 대해 이야기해 보겠습니다.의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.