mysql의 일부 고급 사용법
테이블 생성 명령문, 간단한 sql 명령문 등 Mysql의 기본 작업을 마스터하면 mysql 자체에 대한 일부 구성 작업을 수행할 수도 있고 심지어 Mysql을 최적화할 수도 있습니다. 더 고급 mysql 지식을 보려면 PHP 중국어 웹사이트 mysql tutorial 채널을 방문하세요.
1.Mysql 구성 파일.
Windows에서는 my.ini 파일입니다:
1) log-bin: 마스터-슬레이브 복제에 사용되는 마스터-슬레이브 복제의 로그 파일을 나타냅니다.
2), log-error="SO3JFYNN8EW6GMO.err": 오류 로그를 나타냅니다.
3), server-id=1: 이 머신의 일련번호가 1임을 나타냅니다.
4), datadir=D:/mysql5.7/Data: 데이터베이스 정보가 저장되는 디렉터리,
2 mysql 아키텍처는 위에서 아래로 4개의 레이어로 구분됩니다:
1), 연결 레이어: 접속처리, 인증인증, 관련 보안 솔루션을 제공합니다.
2), 서비스 계층: SQL 최적화, 분석, 캐싱 및 기타 기능을 완료합니다.
3) 엔진 레이어: 데이터 저장 및 추출을 담당합니다.
4) 저장 계층: 데이터 저장 계층은 주로 파일 시스템에 데이터를 저장하고 엔진과의 상호 작용을 완료합니다.
3.mysql 엔진
1) 사용된 엔진을 확인하세요.
show engins 또는 show
MYISAM과 INNODB의 비교
기본 및 외래 키 값 쌍을 지원하지 않습니다.
트랜잭션을 지원하지 않습니다. 지원
높은 동시성에 적합하지 않은 테이블 잠금, 높은 동시성에 적합
인덱스만 캐시하고 메모리 요구 사항이 높음
테이블 공간이 작습니다. 초점은 성능에 있으며, 더 많은 경우 핵심 문제에 초점을 맞춘 상황에 적합합니다.
4. mysql 성능 최적화 저하 원인1), 잘못 작성된 쿼리문
2), 인덱스 오류
user(name)
에 idx_user_name 색인 생성
누구 누구? who who's who who who who who who who's, idx_using, 인덱스 생성 idx_user_name_email on, user(name,email)
5, mysql 실행 순서
머신이 읽기부터 시작됩니다. 1) 내부 연결 e SELECT*From Tablea A Inner Join Tableb B on A.Key = B.Key.接2), 왼쪽 외부 연결 、 Select*from tablea a 왼쪽 작업 테이블b b on a.Key = b.KeyB가 아닌 경우 NULL을 사용하여 완료합니다.
3) 오른쪽 외부 조인 사용 null 사용 to Some 선택 *From Tablea A Left Join Tableb B on A.Key = B.Key WHERE B.Key Is Null A. of.连5), 외부에서 바로 연결, tablea에서 오른쪽 작업 테이블b b b에서 왼쪽 테이블의 일부 제거 a.Key = b.Key 여기서 a.Key는 null6), 전체 연결(둘 모두에서 사용할 수 있음) . 추가) UNION은 Select *from tablea a left tableb b on a.Key = b.Key Union (select *from tablea a right job tableb b) 7) 가운데 비어있는 부분이 나옴A.key=B.key에서 *tableA A를 왼쪽으로 조인 tableB B를 선택합니다. 여기서 B.key는 null Union
(*from tableA A를 선택하고 A.key=B.key에서 tableB B를 오른쪽으로 조인합니다. where A.key is null)
6. 인덱스란 무엇입니까? 1) 인덱스는 검색 효율성을 향상시키는 데이터 구조입니다.速 순서가 좋은 데이터 구조를 빠르게 찾아보세요. 데이터베이스는 특정 알고리즘을 만족하는 데이터 구조를 유지하므로 이러한 데이터 구조에 고급 슈퍼 검색 알고리즘을 구현할 수 있습니다. BTREE 인덱스(특별 지정 없음) 자주 삭제되는 필드는 인덱스 구축에 적합하지 않습니다. 2), 장점데이터 검색 효율성 향상, 데이터베이스의 IO 비용 절감
인덱스 컬럼을 통한 데이터 정렬, 데이터 정렬 비용 절감, CPU 소모 감소
3), 단점
인덱스도 테이블이 디스크 공간을 차지합니다.
테이블을 업데이트할 때 인덱스를 유지해야 하므로 업데이트 효율성이 떨어집니다.
인덱싱은 효율성을 높이는 요소일 뿐이고, 인덱스를 구축하려면 시간과 노력이 필요합니다.
4) 단일 값 인덱스에는 하나의 열만 포함되며 테이블에는 여러 개의 단일 값 인덱스가 있을 수 있습니다.
5) 고유 인덱스, 인덱스 열의 값은 고유해야 하며 비어 있을 수 있습니다.
6), 여러 열을 포함하는 복합 인덱스입니다.
7), 인덱스 관련 작업
사용자(이름)에 인덱스 idx_user_name 생성
사용자 변경 (이름)에 인덱스 idx_user_name 추가
사용자의 인덱스 표시
사용자의 인덱스 idx_user_name 삭제
8), 인덱스 구조
해시 인덱스
전체 텍스트 인덱스
R-트리 인덱스
BTree 인덱스:
7 어떤 상황에서 인덱스를 만들어야 할까요:
1) 메인 빌더가 자동으로 고유 인덱스를 생성합니다
2) 쿼리 조건으로 자주 사용되는 필드는 인덱싱해야 하며(
3) 쿼리의 다른 테이블과 연결된 필드는 외부 관계에 의해 인덱싱되어야 합니다.
4) 자주 업데이트되는 필드는 인덱스 생성에 적합하지 않습니다.
5) where 조건에 사용되지 않는 필드에 대해서는 인덱스를 생성합니다.
6) 단일 또는 결합 인덱스를 선택하면 높은 동시성에서 복합 인덱스를 생성하는 경향이 있습니다.
7) 쿼리에서 정렬된 필드를 인덱스에 따라 액세스하면 효율성이 향상됩니다
8) , 쿼리의 통계 또는 그룹화 필드
8. 인덱스를 생성할 필요가 없는 경우:
1) 테이블 레코드가 너무 적음
2) 자주 추가되거나 삭제되는 테이블
3) 중복된 데이터가 있고 균일하게 분포된 필드입니다.
9. 성능 분석:
mysql 쿼리 최적화 프로그램
위 내용은 제가 요약한 MySQL의 고급 지식입니다.
관련 기사:
위 내용은 mysql의 일부 고급 사용법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

핫 AI 도구

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

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

Undress AI Tool
무료로 이미지를 벗다

Clothoff.io
AI 옷 제거제

AI Hentai Generator
AI Hentai를 무료로 생성하십시오.

인기 기사

뜨거운 도구

메모장++7.3.1
사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전
중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기
강력한 PHP 통합 개발 환경

드림위버 CS6
시각적 웹 개발 도구

SublimeText3 Mac 버전
신 수준의 코드 편집 소프트웨어(SublimeText3)

뜨거운 주제











MySQL은 설치가 간단하고 강력하며 데이터를 쉽게 관리하기 쉽기 때문에 초보자에게 적합합니다. 1. 다양한 운영 체제에 적합한 간단한 설치 및 구성. 2. 데이터베이스 및 테이블 작성, 삽입, 쿼리, 업데이트 및 삭제와 같은 기본 작업을 지원합니다. 3. 조인 작업 및 하위 쿼리와 같은 고급 기능을 제공합니다. 4. 인덱싱, 쿼리 최적화 및 테이블 파티셔닝을 통해 성능을 향상시킬 수 있습니다. 5. 데이터 보안 및 일관성을 보장하기위한 지원 백업, 복구 및 보안 조치.

Navicat 자체는 데이터베이스 비밀번호를 저장하지 않으며 암호화 된 암호 만 검색 할 수 있습니다. 솔루션 : 1. 비밀번호 관리자를 확인하십시오. 2. Navicat의 "비밀번호 기억"기능을 확인하십시오. 3. 데이터베이스 비밀번호를 재설정합니다. 4. 데이터베이스 관리자에게 문의하십시오.

MySQL은 오픈 소스 관계형 데이터베이스 관리 시스템입니다. 1) 데이터베이스 및 테이블 작성 : CreateAbase 및 CreateTable 명령을 사용하십시오. 2) 기본 작업 : 삽입, 업데이트, 삭제 및 선택. 3) 고급 운영 : 가입, 하위 쿼리 및 거래 처리. 4) 디버깅 기술 : 확인, 데이터 유형 및 권한을 확인하십시오. 5) 최적화 제안 : 인덱스 사용, 선택을 피하고 거래를 사용하십시오.

Navicat Premium을 사용하여 데이터베이스 생성 : 데이터베이스 서버에 연결하고 연결 매개 변수를 입력하십시오. 서버를 마우스 오른쪽 버튼으로 클릭하고 데이터베이스 생성을 선택하십시오. 새 데이터베이스의 이름과 지정된 문자 세트 및 Collation의 이름을 입력하십시오. 새 데이터베이스에 연결하고 객체 브라우저에서 테이블을 만듭니다. 테이블을 마우스 오른쪽 버튼으로 클릭하고 데이터 삽입을 선택하여 데이터를 삽입하십시오.

MariaDB 용 Navicat은 암호가 암호화 된 양식으로 저장되므로 데이터베이스 비밀번호를 직접 볼 수 없습니다. 데이터베이스 보안을 보장하려면 비밀번호를 재설정하는 세 가지 방법이 있습니다. Navicat을 통해 비밀번호를 재설정하고 복잡한 비밀번호를 설정하십시오. 구성 파일을 봅니다 (권장되지 않음, 위험이 높음). 시스템 명령 줄 도구를 사용하십시오 (권장되지 않으면 명령 줄 도구에 능숙해야 함).

MySQL 및 SQL은 개발자에게 필수적인 기술입니다. 1.MySQL은 오픈 소스 관계형 데이터베이스 관리 시스템이며 SQL은 데이터베이스를 관리하고 작동하는 데 사용되는 표준 언어입니다. 2.MYSQL은 효율적인 데이터 저장 및 검색 기능을 통해 여러 스토리지 엔진을 지원하며 SQL은 간단한 문을 통해 복잡한 데이터 작업을 완료합니다. 3. 사용의 예에는 기본 쿼리 및 조건 별 필터링 및 정렬과 같은 고급 쿼리가 포함됩니다. 4. 일반적인 오류에는 구문 오류 및 성능 문제가 포함되며 SQL 문을 확인하고 설명 명령을 사용하여 최적화 할 수 있습니다. 5. 성능 최적화 기술에는 인덱스 사용, 전체 테이블 스캔 피하기, 조인 작업 최적화 및 코드 가독성 향상이 포함됩니다.

응용 프로그램을 열고 새로운 연결 (Ctrl n)을 선택하여 Navicat에서 새로운 MySQL 연결을 만들 수 있습니다. "MySQL"을 연결 유형으로 선택하십시오. 호스트 이름/IP 주소, 포트, 사용자 이름 및 비밀번호를 입력하십시오. (선택 사항) 고급 옵션을 구성합니다. 연결을 저장하고 연결 이름을 입력하십시오.

Navicat에서 SQL을 수행하는 단계 : 데이터베이스에 연결하십시오. SQL 편집기 창을 만듭니다. SQL 쿼리 또는 스크립트를 작성하십시오. 실행 버튼을 클릭하여 쿼리 또는 스크립트를 실행하십시오. 결과를 봅니다 (쿼리가 실행 된 경우).
