programing

MySQL에서 "오버헤드"는 무엇을 의미하며, 무엇이 문제이며, 어떻게 수정해야 합니까?

bestcode 2023. 1. 31. 20:49
반응형

MySQL에서 "오버헤드"는 무엇을 의미하며, 무엇이 문제이며, 어떻게 수정해야 합니까?

간단한 질문입니다만, 지금까지도 계속 신경이 쓰이고 있었습니다만…

MySQL에서 "오버헤드"란 무엇입니까? 걱정해야 합니까?

"테이블"을 클릭하면 실제로 수정됩니까?

오버헤드는 데이터베이스가 일부 쿼리를 실행하는 데 사용한 임시 디스크 공간인 것으로 보이므로 이 값이 너무 높은 경우에만 걱정해야 합니다.

'테이블 최적화'를 하드 드라이브의 조각 모음과 비교할 수 있습니다.

견적:

모든 데이터베이스는 최적의 성능 수준을 유지하기 위해 시간이 지남에 따라 어떤 형태의 유지보수가 필요합니다.삭제된 행 삭제, 시퀀스 변경, 압축, 인덱스 경로 관리, 조각 모음 등을 mysql 및 기타 데이터베이스에서는 Optimization이라고 합니다.예를 들어 IBM DB2/400은 이를 REPORYZE PHICAL FILE MEMBER라고 부릅니다.

차 안의 오일을 교환하거나 튜닝하는 것과 비슷합니다.정말 그럴 필요가 없다고 생각할지도 모르지만, 그렇게 함으로써 당신의 차는 훨씬 더 잘 달리고, 연비도 더 좋아집니다.주행거리가 많은 차는 튜닝이 더 자주 필요하다.사용량이 많은 데이터베이스도 같은 것을 필요로 합니다.UPDATE 및/또는 DELETE 작업을 많이 수행하는 경우, 특히 테이블에 가변 길이 열(VARCHAR, TEXT 등)이 있는 경우 를 항상 조정해야 합니다.

만약 당신이 그 일을 말한다면phpMyAdminoverhead테이블 데이터 파일의 실제 크기는 동일한 데이터 파일의 이상적인 크기와 비교됩니다(백업에서 방금 복원된 경우와 같음).

퍼포먼스상의 이유로MySQL는 행을 삭제 또는 갱신한 후 데이터 파일을 압축하지 않습니다.

이것.overhead테이블 스캔에 좋지 않습니다. 즉, 쿼리가 모든 테이블 값에 대해 실행되어야 하는 경우 빈 공간을 더 많이 확인해야 합니다.

를 삭제할 수 있습니다.overhead달려서OPTIMIZE TABLE테이블과 인덱스를 압축합니다.

오버헤드는 Data_free 테이블, 즉 할당되었지만 사용되지 않은 바이트 수입니다.SQL 명령 SHOW TABLE STATUS로 확인할 수 있습니다.이것은 테이블에 할당된 크기의 빈 공간입니다.

테이블 최적화는 매우 문제가 될 수 있습니다.예를 들어, 테이블이 사이트에서 많이 사용되는 경우.

http://dev.mysql.com/doc/refman/5.1/en/optimize-table.html

MyISAM 또는 ARCHIVE 테이블의 대부분을 삭제한 후 또는 가변 길이 행이 있는 MyISAM 또는 ARCHIVE 테이블(VARCHAR, VARBINAL, BLOB 또는 TEXT 열이 있는 테이블)을 많이 변경한 후.삭제된 행은 링크된 목록으로 유지되며 이후 INSERT 작업은 이전 행 위치를 재사용합니다.< >

내가 이 행동을 확인했다고 생각해.그리고 그것은 확실히 매우 유용할 것이다.

언급URL : https://stackoverflow.com/questions/565997/in-mysql-what-does-overhead-mean-what-is-bad-about-it-and-how-to-fix-it

반응형