링크 ux 진급 의 mariadb (2) 색인, 로그
색인: 색인 이 만 든 표 필드 의 데 이 터 를 추출 하여 독특한 데이터 구 조 를 구축 합 니 다.
색인 역할: 검색 가속 화;부작용: 쓰기 작업 성능 저하;
: ;
:WHERE
색인 종류: B + TREE, HASH
B+ TREE: , ; , ;
B+ TREE : 、 ;
: ;
WHERE COLUMN = 'value';
: ;
WEHRE COLUMN LIKE 'PREFIX%';
:
, ;
: ;
index(Name)
SELECT Name FROM students WHERE Name LIKE 'L%';
B+ TREE :
, ;
index(age,Fname), WHERE Fname='Jerry'; , WHERE age>30 AND Fname='Smith';
;
index(name,age,gender)
WHERE name='black' and age > 30;
WHERE name='black' AND gender='F';
, ;
WHERE age>30 AND Fname='Smith';
Hash 색인: 해시 표를 기반 으로 이 루어 집 니 다. 특히 값 의 정확 한 일치 조회 에 적 용 됩 니 다.
:
, =, IN(), <=>
:
;MySQL memory hash ;
색인 장점:
, IO ;
, ;
IO IO;
고성능 색인 정책:
(1) WHERE , ;
WHERE age+2 > 32 ;
(2) : ,
: ;
(3) :
AND , ;
(4) : ;
EXPLAIN 은 색인 의 유효성 을 분석 합 니 다.
EXPLAIN [explain_type] SELECT select_options
explain_type:
EXTENDED
| PARTITIONS
MariaDB [mysql]> EXPLAIN SELECT user from user;
+------+-------------+-------+-------+---------------+---------+---------+------+------+-------------+
| id | select_type | table | type | possible_keys | key | key_len | ref | rows | Extra |
+------+-------------+-------+-------+---------------+---------+---------+------+------+-------------+
| 1 | SIMPLE | user | index | NULL | PRIMARY | 228 | NULL | 3 | Using index |
+------+-------------+-------+-------+---------------+---------+---------+------+------+-------------+
id: 현재 검색 어 에서 첫 번 째 SELECT 문장의 번호;
- :
-
- FROM
-
- : ;
select_type: 검색 종류:
- :SIMPLE
- :
- :SUBQUERY
- FROM :DERIVED
- :PRIMARY
- :UNION
- :UNION RESULT
table: 대상 표를 조회 합 니 다.type: 관련 형식 또는 접근 형식, 즉 MySQL 이 표 의 줄 을 조회 하 는 방법
- ALL: ;
- index: ; Extra "Using index” ;
- range: ; , ;
- ref: ( );
- eq_ref: , , , ;
- const,system: , ;
possiable_keys: 검색 에 사용 할 수 있 는 색인;key: 검색 에 사용 할 색인;key_len: 검색 에 사용 할 색인 길이;ref: key 필드 에 표 시 된 색인 을 이용 하여 조회 작업 을 완료 할 때 참조 하 는 열 이나 상수 값;rows: MySQL 은 모든 대상 항목 을 찾기 위해 읽 어야 할 줄 수 를 추정 합 니 다.추가: 추가 정보
- Using index: ;
- Using where: ;
- Using temporary: ;
- Using filesort: ;
로그
조회 로그: generallog
, :
:file
:table (mysql.general_log)
general_log={ON|OFF} (general_log_file)
general_log_file=HOSTNAME.log
log_output={FILE|TABLE|NONE}
슬 로 우 조회 로그: logslow_queries
: ;
long_query_time
:
:FILE
:TABLE,mysql.slog_log
log_slow_queries={ON|OFF}
slow_query_log={ON|OFF}
slow_query_log_file=
log_output={FILE|TABLE|NONE}
log_slow_filter=admin,filesort,filesort_on_disk,full_join,full_scan,query_cache,query_cache_miss,tmp_table,tmp_table_on_disk
log_slow_rate_limit
log_slow_verbosity
오류 로그: logerror, log_warnings
:
(1) mysqld ;
(2) mysqld ;
(3) event scheduler ;
(4) , ;
log_error=/var/log/mariadb/mariadb.log|OFF
log_warnings={ON|OFF}
바 이 너 리 로그: binlog
데이터 변 화 를 일 으 키 거나 데이터 변 화 를 일 으 킬 잠재 적 가능성 이 있 는 문구 (STATEMENT) 나 변 경 된 결과 (ROW) 를 기록 하 는 데 사용 되 며, 양자 혼합 일 수도 있다.기능: "리 셋" binlogformat = {STATEMENT | ROW | MIXED} STATEMENT: 구문;ROW: 그래.MIXED: 혼합;바 이 너 리 로그 파일 목록 보기: SHOW MASTER | BINARY LOGS;현재 사용 중인 바 이 너 리 로그 파일 보기: SHOW MASTER STATUS;바 이 너 리 로그 파일 의 이벤트 보기: SHOW BINLOG EVENTS [IN 'log name'] [FROM pos] [LIMIT [offset,] row count] 서버 변수: logbin=/PATH/TO/BIN_LOG_FILE 변수 만 읽 기;session.sql_log_빈 = {ON | OFF} 세 션 의 '쓰기' 동작 문 구 를 로그 파일 에 기록 할 지 여부;max_binlog_size=1073741824 sync_binlog={1|0} mysqlbinlog: YYYY-MM-DD hh:mm:ss --start-datetime= --stop-datetime= -j, --start-position=# --stop-position=# --user, --host, --password
자주 사용 하 는 바 이 너 리 로그 옵션:
log_bin = {ON|OFF},
log_bin_trust_function_creators
sql_log_bin = {ON|OFF}
sql_log_off
sync_binlog ,0 ,
binlog_format={statement|row|mixed}
max_binlog_cache_size MariaDB ,
max_binlog_stmt_cache_size ,
max_binlog_size ,
:
sql_log_bin
바 이 너 리 로그 이벤트 형식:
[root@test1 mysql]# mysqlbinlog maste-log.000003 > /test.log
[root@test1 mysql]# cat /test.log
# at 480
#170916 16:24:14 server id 1 end_log_pos 563 Query thread_id=2 exec_time=0 error_code=0
SET TIMESTAMP=1505549921/*!*/;
이벤트 의 시작 위치: \ # at 480 이벤트 발생 날짜 시간: \ # 170916 16: 24: 14 이벤트 발생 서버 id: server id 1 이벤트 의 끝 위치: endlog_pos 563 이벤트 의 종류: Query 이벤트 가 발생 했 을 때 서버 에서 이 이벤트 의 스 레 드 를 실행 하 는 ID: threadid = 2 문장의 시간 스탬프 와 바 이 너 리 로그 파일 에 기록 하 는 시간 차이: exectime = 0 오류 코드: errorcode = 0 이벤트 발생 시 시간 스탬프 설정: SET TIMESTAMP = 1505549921 /! /;이벤트 내용: (여 기 는 실행 동작 이 다 를 수 있 습 니 다)
중계 로그:
;
relay_log_purge = {ON|OFF}
relay_log_space_limit
트 랜 잭 션 로그:
innodb :
redo log
undo log
로그 지우 기:
PURGE { BINARY | MASTER } LOGS { TO 'log_name' | BEFORE datetime_expr( ) }
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
다양한 언어의 JSONJSON은 Javascript 표기법을 사용하여 데이터 구조를 레이아웃하는 데이터 형식입니다. 그러나 Javascript가 코드에서 이러한 구조를 나타낼 수 있는 유일한 언어는 아닙니다. 저는 일반적으로 '객체'{}...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.