binlog-do-db와 replicate-do-db의 차이점은 무엇입니까?
MySQL Master-Slave 초보입니다.
그리고 나는 두 개의 튜토리얼을 읽었다.
첫 번째 튜토리얼에서는.그래서...
[mysqld] Master section
log-bin
server_id=1
replicate-do-db=employees
bind-address=192.168.0.18
[mysqld] SLAVE Section
server_id=2
replicate-do-db=employees
하지만 두 번째 튜토리얼에서는
[mysqld] Master
server_id=1
log-basename=master
log-bin
binlog-format=row
binlog-do-db=unixmen
[mysqld] Slave
server-id = 2
replicate-do-db=unixmen
그리고 왜 테이블과 mysqldump sql을 잠그고 Import해야 합니까?
FLUSH TABLES WITH READ LOCK;
면책사항: 여기서는 혼란스럽지 않게 쉽게 하기 위해 1개의 마스터 - 1개의 슬레이브 셋업에 대해 설명하겠습니다.쇠사슬도, 마스터 마스터도, 뭐 그런 것도...
첫 번째 튜토리얼이 잘못되어 있습니다.binlog-do-db로 표시됩니다.
레플리케이션은 다음과 같이 동작합니다.
마스터는 모든 트랜잭션을 바이너리 로그에 기록합니다.
슬레이브는 마스터 바이너리 로그에서 트랜잭션을 읽어 릴레이 로그에 씁니다.
그 후에만 슬레이브는 릴레이 로그에서 스테이트먼트를 실행합니다.
binlog-do-db
는 지정된 DB에 대한 문만 마스터가 바이너리 로그에 쓰도록 합니다.
replicate-do-db
는 슬레이브가 릴레이 로그에서 지정된 DB용 스테이트먼트를 읽기만 하도록 합니다.
replicate-do-db
읽을 릴레이 로그가 없기 때문에 마스터에 영향을 주지 않습니다.
그LOCK TABLES
데이터가 일관되도록 부품이 있습니다.따라서 데이터를 백업하는 동안 마스터의 데이터가 수정되지 않습니다.
슬레이브를 설정할 때 항상 새로 시작하는 것은 아니기 때문에 슬레이브의 이 백업에서 데이터베이스를 복원합니다.따라서 두 서버에서 동일한 데이터 기반만 제공하면 마스터의 트랜잭션 좌표와 voila를 슬레이브에 알리면 복제를 시작할 수 있습니다.데이터를 덤프한 후 마스터 잠금을 해제할 수도 있습니다.로그 회전에 의해 바이너리 로그의 스테이트먼트가 없어지기 전에 슬레이브를 제시간에 기동할 수 있도록 해 주세요.
언급URL : https://stackoverflow.com/questions/44431961/what-is-the-difference-between-binlog-do-db-and-replicate-do-db
'source' 카테고리의 다른 글
PHP 메서드 체인 또는 유창한 인터페이스 (0) | 2022.09.06 |
---|---|
PECL과 PEAR의 차이점은 무엇입니까? (0) | 2022.09.06 |
mysql: SOURCE 오류 2? (0) | 2022.09.06 |
TypeError: 'module' 개체를 호출할 수 없습니다. (0) | 2022.09.06 |
Chrome에서 JavaScript 함수 정의 찾기 (0) | 2022.09.05 |