찾다
데이터 베이스MySQL 튜토리얼MYSQL 학습 요약(6): my.cnf의 각 매개변수 구성 및 상태에 따른 최적화

#여기에서는 [mysqld] 부분만 언급됩니다
Datadir = /data/mysql //mysql 데이터 디렉터리
Skip-locking //오류 가능성 줄이기
Key_buffer = 384M //인덱스 버퍼 size, 어떻게 설정하는지는 나중에 자세히 다루겠습니다
Max_allowed_packet = 1M //네트워크 전송시 1개의 메시지 전송 최대값
Table_cache = 512 //테이블 버퍼 크기
Sort_buffer_size = 2M // 정렬 쿼리 시 버퍼 크기에 대해서는 뒤에서 자세히 설명합니다
Read_buffer_size=2M//쿼리 연산에서 사용할 수 있는 버퍼 크기
Read_rnd_buffer_size = 8M //랜덤 쿼리에서 사용할 수 있는 메모리 크기 Operations
Myisam_sort_buffer_size=64M //MyISAM 테이블 변경 시 재정렬에 필요한 버퍼링
Thread_cache_size = 8M //트레드 캐시 풀에 캐시할 수 있는 최대 연결 스레드 수를 64 이상의 값으로 설정 메모리 4G 이상
Query_cache_size = 32M //쿼리 버퍼 영역 크기
Thread_concurrency = 8 //논리 서버 수 * 2로 설정
Thread_stack = 256K //MYSQL의 각 스레드 스택 크기. 기본값은 충분히 큽니다. ERROR:1436 스레드 스택 오버런이 발생하면 증가할 수 있습니다. 이 값은
Skip-name-resolve //연결된 시스템의 DNS 해상도를 제거하기 위해 추가하는 것이 가장 좋습니다. ERROR:2013의 발생은 다음으로 인해 발생합니다.
Log-bin=mysql-bin //바이너리 로그 열기
Log-slow-queries = /usr/local/mysql/var/slowquery.log //오픈 시간이 초과된 쿼리와 인덱스가 없는 쿼리를 확인하기 위한 느린 쿼리 로그입니다. 기본 느린 쿼리 시간은 5초이며, 5초를 초과하는 쿼리는 기록됩니다. set long_query_time = 2를 사용하여 느린 쿼리 시간을 설정할 수 있으며, mysqldumpslow를 사용하여 느린 쿼리 로그를 분석할 수도 있습니다. 예를 들어 가장 많이 액세스한 20개의 명령문을 분석하려면 mysqldumpslow –s c –t 20 /usr/local/mysql을 사용합니다. /var /slowquery.log


# MYSQL 상태를 확인하여 각 매개변수의 값을 수정합니다.


#MYSQL 상태를 확인하려면 주로 show 명령어를 사용합니다. 일반적으로 시스템 상태 및 변수 확인 매개변수 값
예: 현재 시스템에 느린 쿼리 로그가 몇 개 있는지 확인
"%slow%"와 같은 전역 상태 표시 //느린 쿼리 수를 얻을 수 있습니다.
현재 느린 쿼리 설정 확인
"%slow%"와 같은 변수 표시; //slow_launch_time을 얻을 수 있습니다.
#max_connections 값을 설정하고 확인
"max_connections"과 같은 변수 표시;
“max_used_connections”와 같은 전역 상태를 표시합니다.
max_used_connections가 max_connections 값에 가까우면 max_connections 값을 늘려야 합니다. max_connections = 256 설정(다시 시작한 후에는 유효하지 않으므로 my.cnf에 작성하는 것이 가장 좋습니다)


# key_buffer_size 값 설정
"key_read%"와 같은 전역 상태 표시 //View key_buffer_size 사용 상황

계산식: Key_reads/ Key_read_requests

#프로세스 사용량 보기
“Thread%”와 같은 전역 상태 표시;

Threads_created가 너무 크면 MYSQL 서버가 스레드를 생성하고 있다는 의미이며, 현재 조정될 수 있습니다. thread_cache_size의 값입니다.


#쿼리 캐시(qurey_cache_size) 설정 보기
“qcache%”와 같은 전역 상태 표시;

“query_cache%”와 같은 변수 표시

여기에는 쿼리에 대한 세 가지 지표가 있습니다.
쿼리 캐시 조각화 비율 = Qcache_free_blocks/Qcache_total_blocks. 20%를 초과하는 경우 쿼리 캐시 플러시를 사용하여 캐시 조각 모음을 수행할 수 있습니다.
쿼리 캐시 사용률 = (query_cache_size-Qcache_free_memory)/query_cache_size. 25% 미만이면 query_cache_size 설정이 너무 크다는 의미입니다. 80% 이상이고 Qcache_lowmem_prunes>50이면 query_cache_size가 약간 작은 것을 의미합니다.
쿼리 캐시 적중률 = (Qcache_hits-Qcache_inserts)/Qcache_hits, 이는 참고용일 뿐입니다. 너무 작으면 읽기와 쓰기가 자주 발생한다는 의미이며 조각이 있습니다.


#열린 파일 수 보기
“open_files”와 같은 전역 상태 표시;

“open_files_limit”와 같은 변수 표시;

일반적으로 파일 열기 열려 있는 파일 수는 75% 미만이어야 합니다.


요약하면 일반적으로 주의해야 할 사항은 다음 매개변수입니다.
                                                                                                          
max_connections = 256 // 실제 상황에 따라 조정
Thread_cache_size = 64M //메모리가 4G보다 클 경우 64 이상으로 구성
Query_cache_size = 64M
Tmp_table_size = 256M //최대 메모리 임시 테이블 값
Table_cache = 614 //테이블에 할당된 메모리에 액세스하면 IO를 줄일 수 있습니다
Skip-name-resolve //액세스 시간 초과 및 기타 문제를 방지하기 위해 추가됨

위는 MYSQL 학습요약(6)입니다: 상태에 따른 my.cnf 매개변수 구성 및 최적화 관련 내용은 PHP 중국어 홈페이지(www.php.cn)를 참고해주세요!


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

MySQL 사용자를 추가하는 방법을 마스터하는 것은 데이터베이스 관리자 및 개발자가 데이터베이스의 보안 및 액세스 제어를 보장하기 때문에 데이터베이스 관리자 및 개발자에게 중요합니다. 1) CreateUser 명령을 사용하여 새 사용자를 만듭니다. 2) 보조금 명령을 통해 권한 할당, 3) FlushPrivileges를 사용하여 권한이 적용되도록하십시오.

MySQL 문자열 데이터 유형 마스터 링 : Varchar vs. Text vs. CharMySQL 문자열 데이터 유형 마스터 링 : Varchar vs. Text vs. CharMay 12, 2025 am 12:12 AM

ChooseCharfixed-lengthdata, varcharforvariable-lengthdata, andtextforlargetextfields.1) charisefficientsconsentent-lengthdatalikecodes.2) varcharsuitsvariable-lengthdatalikeNames, 밸런싱 플렉스 및 성능

MySQL : 문자열 데이터 유형 및 인덱싱 : 모범 사례MySQL : 문자열 데이터 유형 및 인덱싱 : 모범 사례May 12, 2025 am 12:11 AM

MySQL에서 문자열 데이터 유형 및 인덱스를 처리하기위한 모범 사례는 다음과 같습니다. 1) 고정 길이의 Char, 가변 길이의 Varchar 및 큰 텍스트의 텍스트와 같은 적절한 문자열 유형 선택; 2) 인덱싱에 신중하고, 과도한 인덱싱을 피하고, 공통 쿼리에 대한 인덱스를 만듭니다. 3) 접두사 인덱스 및 전체 텍스트 인덱스를 사용하여 긴 문자열 검색을 최적화합니다. 4) 인덱스를 작고 효율적으로 유지하기 위해 인덱스를 정기적으로 모니터링하고 최적화합니다. 이러한 방법을 통해 읽기 및 쓰기 성능의 균형을 맞추고 데이터베이스 효율성을 향상시킬 수 있습니다.

MySQL : 원격으로 사용자를 추가하는 방법MySQL : 원격으로 사용자를 추가하는 방법May 12, 2025 am 12:10 AM

Toaddauserremotelytomysql, 다음에 따르면 : 1) 1) ConnectTomysqlasRoot, 2) CreateEnewerwitHremoteAccess, 3) GrantNecessaryPrivileges 및 4) FlushPrivileges

MySQL 문자열 데이터 유형에 대한 최고의 안내서 : 효율적인 데이터 저장MySQL 문자열 데이터 유형에 대한 최고의 안내서 : 효율적인 데이터 저장May 12, 2025 am 12:05 AM

tostorestringsefficiallyInmysql, choOseTherightDatAtypeBasedOnyOURNEDS : 1) USECHARFIXED-lengthstringsLikeCountryCodes.2) UseVarCharForVariable-lengthstringsLikenames.3) USETEXTFORLONG-FORMTEXTCONTENT.4) USETEXTFORLONG-FORMTEXTCONTENT.4) USETLOBFORBINARYIMAGES

MySQL Blob 대 텍스트 : 큰 개체에 대한 올바른 데이터 유형 선택MySQL Blob 대 텍스트 : 큰 개체에 대한 올바른 데이터 유형 선택May 11, 2025 am 12:13 AM

MySQL의 블로브 및 텍스트 데이터 유형을 선택할 때 Blob은 이진 데이터를 저장하는 데 적합하며 텍스트는 텍스트 데이터를 저장하는 데 적합합니다. 1) Blob은 그림 및 오디오와 같은 이진 데이터에 적합합니다. 2) 텍스트는 기사 및 주석과 같은 텍스트 데이터에 적합합니다. 선택할 때는 데이터 속성 및 성능 최적화를 고려해야합니다.

MySQL : 내 제품에 루트 사용자를 사용해야합니까?MySQL : 내 제품에 루트 사용자를 사용해야합니까?May 11, 2025 am 12:11 AM

아니요, youshouthusTherootUserInmysqlforyOUrProduct.instead, createScificuserswithlimitedPrivilegestoEnhancesecurity 및 forcuments : 1) grantOnlySerypermissionStothisUser, 3) 정기적으로 재구성 한 사람들이 관리자입니다

MySQL 문자열 데이터 유형 설명 : 데이터에 대한 올바른 유형 선택MySQL 문자열 데이터 유형 설명 : 데이터에 대한 올바른 유형 선택May 11, 2025 am 12:10 AM

mysqlstringdatatatypess는 Bechosenbeasedondatacharacteristicsandusecases : 1) Usecharfixed-lengthstringslikecountryCodes.2) UseVarCharforVariable-lengthstringslikenames.3) UseBaryBarBarBaryBinaryDatalikeCryPyps.4) Usebortextforlargeuns

See all articles

핫 AI 도구

Undresser.AI Undress

Undresser.AI Undress

사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover

AI Clothes Remover

사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool

Undress AI Tool

무료로 이미지를 벗다

Clothoff.io

Clothoff.io

AI 옷 제거제

Video Face Swap

Video Face Swap

완전히 무료인 AI 얼굴 교환 도구를 사용하여 모든 비디오의 얼굴을 쉽게 바꾸세요!

뜨거운 도구

SecList

SecList

SecLists는 최고의 보안 테스터의 동반자입니다. 보안 평가 시 자주 사용되는 다양한 유형의 목록을 한 곳에 모아 놓은 것입니다. SecLists는 보안 테스터에게 필요할 수 있는 모든 목록을 편리하게 제공하여 보안 테스트를 더욱 효율적이고 생산적으로 만드는 데 도움이 됩니다. 목록 유형에는 사용자 이름, 비밀번호, URL, 퍼징 페이로드, 민감한 데이터 패턴, 웹 셸 등이 포함됩니다. 테스터는 이 저장소를 새로운 테스트 시스템으로 간단히 가져올 수 있으며 필요한 모든 유형의 목록에 액세스할 수 있습니다.

Dreamweaver Mac版

Dreamweaver Mac版

시각적 웹 개발 도구

MinGW - Windows용 미니멀리스트 GNU

MinGW - Windows용 미니멀리스트 GNU

이 프로젝트는 osdn.net/projects/mingw로 마이그레이션되는 중입니다. 계속해서 그곳에서 우리를 팔로우할 수 있습니다. MinGW: GCC(GNU Compiler Collection)의 기본 Windows 포트로, 기본 Windows 애플리케이션을 구축하기 위한 무료 배포 가능 가져오기 라이브러리 및 헤더 파일로 C99 기능을 지원하는 MSVC 런타임에 대한 확장이 포함되어 있습니다. 모든 MinGW 소프트웨어는 64비트 Windows 플랫폼에서 실행될 수 있습니다.

SublimeText3 영어 버전

SublimeText3 영어 버전

권장 사항: Win 버전, 코드 프롬프트 지원!

WebStorm Mac 버전

WebStorm Mac 버전

유용한 JavaScript 개발 도구