mysql에서 마스터-슬레이브는 두 개의 동일한 데이터베이스를 구축하는 것을 의미하며, 그 중 하나는 기본 데이터베이스로 사용되고 다른 하나는 보조 데이터베이스로 사용되어 데이터베이스 서버 다운타임으로 인한 데이터 손실을 방지하고 장애 관리를 제공할 수 있습니다. , 읽기-쓰기 분리 및 백업 기능.
이 튜토리얼의 운영 환경: windows10 시스템, mysql8.0.22 버전, Dell G3 컴퓨터.
mysql 마스터-슬레이브란 무엇입니까
마스터-슬레이브 소개
소위 mysql 마스터-슬레이브는 두 개의 동일한 데이터베이스를 구축하는 것으로, 그 중 하나는 기본 데이터베이스이고 다른 하나는 보조 데이터베이스입니다. 기업에서는 더 중요한 데이터를 저장하는 데이터베이스 서버를 마스터-슬레이브 구성으로 구성해야 데이터베이스 서버 다운타임으로 인한 데이터 손실을 방지할 수 있고, 서버 용량 초과 시 서비스 품질(서버 응답 속도)도 보장할 수 있습니다. 비즈니스, 데이터가 너무 많거나 방문자가 너무 많을 경우 장애 조치, 읽기-쓰기 분리, 백업 등의 기능도 제공할 수 있습니다.
마스터-슬레이브 형태
마스터 1개와 슬레이브 1개
마스터-마스터 복제: 백업으로 사용됩니다. 마스터 서버에 장애가 발생하면 다른 마스터 서버가 자동으로 대신합니다.
하나의 마스터와 다중 슬레이브: 쓰기 작업이 적고 읽기 작업이 많을 때 사용되며, 슬레이브 서버는 읽기 작업에 사용됩니다. 운영.
여러 마스터와 하나의 슬레이브: 쓰기 작업이 많고 읽기 작업이 적을 때 사용되며, 슬레이브 서버는 읽기를 구현하는 데 사용됩니다. 운영.
전통적인 마스터-슬레이브
전통적인 마스터-슬레이브 복제는 주로 바이너리 로그 파일의 위치를 기반으로 하는 복제이므로 마스터는 바이너리 로깅을 시작하고 고유한 서버 ID를 설정해야 하며 복제 그룹의 각 서버는 고유한 서버 ID로 구성됩니다. server-id를 생략하거나 기본값인 0으로 명시적으로 설정하면 마스터는 슬레이브의 모든 연결을 거부합니다.
gtid master-slave
MySQL 5.6의 새로운 기능 중 하나인 GTID(Global Transaction Identifier)는 소스(마스터) 서버에서 커밋된 모든 트랜잭션과 연결되고 생성되는 고유 식별자입니다. 이 식별자는 고유할 뿐만 아니라 특정 복제 설정의 모든 서버에서도 고유합니다. 모든 트랜잭션과 모든 GTID 사이에는 일대일 매핑이 있습니다. 서버 ID와 트랜잭션 ID로 구성됩니다. 이 전역 트랜잭션 ID는 원래 서버에서 고유할 뿐만 아니라 마스터-슬레이브 관계를 갖는 모든 mysql 서버에서도 고유합니다. mysql의 마스터-슬레이브 복제가 더 간단해지고 데이터베이스 일관성이 더 안정적이 되는 것은 바로 이 기능 때문입니다. GTID는 반복 실행으로 인한 데이터 혼란이나 마스터-슬레이브 불일치를 피하기 위해 서버에서 한 번만 실행됩니다.
마스터-슬레이브 복제 원리
마스터-슬레이브 복제 작업 흐름: 마스터 라이브러리는 모든 사용자 쓰기 작업(추가, 삭제, 수정, 확인 제외)을 binlog 로그에 기록하고 로그 덤프 스레드를 생성합니다. 슬레이브 라이브러리는 I/O 및 SQL 스레드를 생성하고, 슬레이브 라이브러리의 I/O 스레드는 메인 라이브러리의 로그 덤프 스레드에 I/O 스트림 형태로 요청을 보냅니다. 슬레이브 라이브러리의 I/O 스레드로부터 요청을 받은 후 binlog 로그를 슬레이브 라이브러리로 전송합니다. 슬레이브 라이브러리의 I/O 스레드는 binlog 로그를 수신하여 릴레이 로그(relay log) 파일에 기록합니다. 그런 다음 슬레이브 라이브러리의 SQL 스레드는 릴레이 로그 파일의 로그를 SQL 스크립트로 구문 분석하고 최종적으로 이를 실행합니다. 생성된 SQL 스크립트 파일은 일관된 마스터-슬레이브 작업을 달성하고 최종 데이터 일관성을 달성하는 데 사용됩니다.
추천 학습: mysql 비디오 튜토리얼
위 내용은 mysql 마스터-슬레이브란 무엇인가?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

mysqlviewshavelimitations : 1) 그들은 upportallsqloperations, datamanipulation throughviewswithjoinsorbqueries를 제한하지 않습니다

적절한 usermanagementInmysqliscrucialforenhancingsecurityandensuringfefficientDatabaseOperation.1) USECREATEUSERTOWDDUSERS,@'localHost'or@'%'.

mysqldoes notimposeahardlimitontriggers, butpracticalfactorsdeteirefectiveuse : 1) ServerConfigurationimpactStriggerManagement; 2) 복잡한 트리거 스케일 스케일 사이드로드; 3) argertableSlowtriggerTriggerPerformance; 4) High ConconcercencyCancaUspriggerContention; 5) m

예, It 'safetostoreBlobdatainmysql, butconsidertheStefactors : 1) StoragesPace : BlobScanconSumeSignificantspace, 잠재적으로 증가하는 CostsandSlownperformance

PHP 웹 인터페이스를 통해 MySQL 사용자를 추가하면 MySQLI 확장 기능을 사용할 수 있습니다. 단계는 다음과 같습니다. 1. MySQL 데이터베이스에 연결하고 MySQLI 확장자를 사용하십시오. 2. 사용자를 생성하고 CreateUser 문을 사용하고 Password () 함수를 사용하여 암호를 암호화하십시오. 3. SQL 주입 방지 및 MySQLI_REAL_ESCAPE_STRING () 함수를 사용하여 사용자 입력을 처리하십시오. 4. 새 사용자에게 권한을 할당하고 보조금 명세서를 사용하십시오.

mysql'sblobissuilableforstoringbinarydatawithinareldatabase, whilenosqloptionslikemongodb, redis, and cassandraofferflexible, scalablesolutionsforunstuctureddata.blobissimplerbutcanslowwownperformance를 사용하는 것들보업 betterscal randaysand

TOADDAUSERINMYSQL, 사용 : CreateUser'UserName '@'host'IdentifiedBy'Password '; 여기서'showTodoitseciRely : 1) ChoosetheHostCareLyTocon trolaccess.2) setResourcelimitswithOptionslikemax_queries_per_hour.3) Usestrong, iriquepasswords.4) enforcessl/tlsconnectionswith

toavoidcommonmistakeswithstringdatatypesinmysql, stroundStringTypenuances, chooseTherightType, andManageEncodingAndCollationSettingSefectively.1) usecharforfixed-lengthstrings, varcharvariable-length, andtext/blobforlargerdata.2) setcarcatter


핫 AI 도구

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

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

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

Clothoff.io
AI 옷 제거제

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

인기 기사

뜨거운 도구

Eclipse용 SAP NetWeaver 서버 어댑터
Eclipse를 SAP NetWeaver 애플리케이션 서버와 통합합니다.

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

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

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

안전한 시험 브라우저
안전한 시험 브라우저는 온라인 시험을 안전하게 치르기 위한 보안 브라우저 환경입니다. 이 소프트웨어는 모든 컴퓨터를 안전한 워크스테이션으로 바꿔줍니다. 이는 모든 유틸리티에 대한 액세스를 제어하고 학생들이 승인되지 않은 리소스를 사용하는 것을 방지합니다.