찾다
데이터 베이스MySQL 튜토리얼在mysql的replicatin环境中master/slave常用参数

author:skate time:2012/07/12 在mysql的replicatin环境中master/slave常用参数 master所有参数 1. log-bin=mysql-bin //控制master的是否开启binlog记录功能;二进制文件最好放在单独的目录下,这不但方便优化、更方便维护。重新命名二进制日志很简单,只需

author:skate
time:2012/07/12


 
在mysql的replicatin环境中master/slave常用参数
 
master所有参数


1.
log-bin=mysql-bin 
 //控制master的是否开启binlog记录功能;二进制文件最好放在单独的目录下,这不但方便优化、更方便维护。重新命名二进制日志很简单,只需要修改[mysqld]里的
log_bin选项,这里有一点需要注意,如下例子:


log_bin=/home/mysql/binlog/binlog.log

[root@localhost ~]# ll /home/mysql/binlog
total 8
-rw-rw---- 1 mysql mysql 98 Mar  7 17:24 binlog.000001
-rw-rw---- 1 mysql mysql 33 Mar  7 17:24 binlog.index
[root@localhost ~]#

 

从上面的例子可以看到,我要重新调整logbin的路径为“/home/mysql/binlog”,但我log_bin的设置却有些不同,这里需要注意两点
1.1).目录的文件夹命名不能有空格
1.2).指定目录时候一定要以*.log结尾,即不能仅仅指定到文件夹的级别,否则在重启mysql时会报错。

2.
server-id=1
//每个server服务的标识,在master/slave环境中,此变量一定要不一样

3.
expire_logs_days=15
//通过此来实现master自动删除binlog

4.
innodb_flush_log_at_trx_commit=1
//此单数表示在事务提交时,处理重做日志的方式;此变量有三个可选值0,1,2
 0:当事务提交时,并不将事务的重做日志写入日志文件,而是等待每秒刷新一次
 1:当事务提交时,将重做日志缓存的内容同步写到磁盘日志文件,为了保证数据一致性,在replication环境中使用此值。
 2:当事务提交时,将重做日志缓存的内容异步写到磁盘日志文件(写到文件系统缓存中)

建议必须设置innodb_flush_log_at_trx_commit=1
 
5.
sync_binlog=1
//此参数表示每写缓冲多少次就同步到磁盘;sync_binlog=1表示同步写缓冲和磁盘二进制日志文件,不使用文件系统缓存,在使用innodb事务引擎时,在复制环境中,为了保证最大的可用性,都设置为“1”,但会对影响io的性能。及时设置为“1”,也会有问题发生,假如当二进制日志写入磁盘,但事务还没有commit,这个时候宕机,当服务再次起来的恢复的时候,无法回滚以及记录到二进制日志的未提交的内容;这个时候就会造成master和slave数据不一致,这时就需要参数innodb_support_xa=1来保证。建议必须设置

6.
innodb_support_xa=1
//此参数与XA事务有关,它保证了二进制日志和innodb数据文件的同步,保证复制环境中数据一致性。建议必须设置

7.
binlog-do-db=skate_db
//只记录指定数据库的更新到二进制日志中

8.
binlog-do-table=skate_tab
//只记录指定表的更新到二进制日志中

9.
binlog-ignore-db=skate_db
//忽略指定数据库的更新到二进制日志中

10.
log_slave_updates=1
//此参数控制slave数据库是否把从master接受到的log并在本slave执行的内容记录到slave的二进制日志中,在级联复制环境中(包括双master环境),这个参数是必须的

11.
binlog_format=statement|row|mixed
//控制以什么格式记录二进制日志的内容,默认是mixed

12.
max_binlog_size
//master的每个二进制日志文件的大小,默认1G

13.
binlog_cache_size
//所有未提交的事务都会咱被记录到一个缓存或临时文件中,待提交时,统一同步到二进制日志中,此变量是基于session的,每个会话开启一个binlog_cache_size大小的缓存。通过变量“Binlog_cache_disk_use”和“Binlog_cache_use”来设置binlog_cache_size的大小。

说明:
Binlog_cache_disk_use:使用临时文件写二进制日志的次数
Binlog_cache_use:使用缓冲记写二进制的次数

14.
auto_increment_increment=2  //增长的步长
auto_increment_offset=1     //起始位置
//在双master环境下可以防止键值冲突

 
slave所用参数

1.
server-id=2
//和master的含义一样,如上 

2.
log-bin=mysql-bin  
//和master的含义一样,如上

3.
relay-log=relay-bin 
//中继日志文件的路径名称

4. 
relay-log-index=relay-bin  
//中继日志索引文件的路径名称

5.
log_slave_updates=1 
//和master的含义一样,如上

6.
read_only=1
//使数据库只读,此参数在slave的复制环境和具有super权限的用户不起作用,对于复制环境设置read_only=1非常有用,它可以保证slave只接受master的更新,而不接受client的更新。

mysq> set global read_only=1
 
7. 
skip_slave_start
//使slave在mysql启动时不启动复制进程,mysql起来之后使用 start slave启动,建议必须

8.
replicate-do-db
//只复制指定db

9.
replicate-do-table
//只复制指定表

10.
replicate-ingore-table
//忽略指定表

11.
replicate_wild_do_table=skatedb.%
//模糊匹配复制指定db

12.
 auto_increment_increment=2
 auto_increment_offset=1
//和master含义一样,参考如上
 
13。
log_slow_slave_statements
//在slave上开启慢查询日志,在query的时间大于long_query_time时,记录在慢查询日志里
 
14.
max_relay_log_size
//slave上的relay log的大小,默认是1G

15.
relay_log_info_file
//中继日志状态信息文件的路径名称

16.
relay_log_purge
//当relay log不被需要时就删除,默认是on, SET GLOBAL relay_log_purge=1

17.
replicate-rewrite-db=from_name->to_name
//数据库的重定向,可以把分库汇总到主库便于统计分析
 

 

 

 

------end----

성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
MySQL에서 느린 쿼리를 식별하고 최적화하는 방법은 무엇입니까? (느린 쿼리 로그, Performance_schema)MySQL에서 느린 쿼리를 식별하고 최적화하는 방법은 무엇입니까? (느린 쿼리 로그, Performance_schema)Apr 10, 2025 am 09:36 AM

MySQL 느린 쿼리를 최적화하려면 SlowQueryLog 및 Performance_Schema를 사용해야합니다. 1. SlowQueryLog 및 Set Stresholds를 사용하여 느린 쿼리를 기록합니다. 2. Performance_schema를 사용하여 쿼리 실행 세부 정보를 분석하고 성능 병목 현상을 찾고 최적화하십시오.

MySQL 및 SQL : 개발자를위한 필수 기술MySQL 및 SQL : 개발자를위한 필수 기술Apr 10, 2025 am 09:30 AM

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

MySQL 비동기 마스터 슬레이브 복제 프로세스를 설명하십시오.MySQL 비동기 마스터 슬레이브 복제 프로세스를 설명하십시오.Apr 10, 2025 am 09:30 AM

MySQL 비동기 마스터 슬레이브 복제는 Binlog를 통한 데이터 동기화를 가능하게하여 읽기 성능 및 고 가용성을 향상시킵니다. 1) 마스터 서버 레코드는 Binlog로 변경됩니다. 2) 슬레이브 서버는 I/O 스레드를 통해 Binlog를 읽습니다. 3) 서버 SQL 스레드는 데이터를 동기화하기 위해 Binlog를 적용합니다.

MySQL : 쉽게 학습하기위한 간단한 개념MySQL : 쉽게 학습하기위한 간단한 개념Apr 10, 2025 am 09:29 AM

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

MySQL : 데이터베이스에 대한 사용자 친화적 인 소개MySQL : 데이터베이스에 대한 사용자 친화적 인 소개Apr 10, 2025 am 09:27 AM

MySQL의 설치 및 기본 작업에는 다음이 포함됩니다. 1. MySQL 다운로드 및 설치, 루트 사용자 비밀번호를 설정하십시오. 2. SQL 명령을 사용하여 CreateAbase 및 CreateTable과 같은 데이터베이스 및 테이블을 만듭니다. 3. CRUD 작업을 실행하고 삽입, 선택, 업데이트, 명령을 삭제합니다. 4. 성능을 최적화하고 복잡한 논리를 구현하기 위해 인덱스 및 저장 절차를 생성합니다. 이 단계를 사용하면 MySQL 데이터베이스를 처음부터 구축하고 관리 할 수 ​​있습니다.

InnoDB 버퍼 풀은 어떻게 작동하며 성능에 중요한 이유는 무엇입니까?InnoDB 버퍼 풀은 어떻게 작동하며 성능에 중요한 이유는 무엇입니까?Apr 09, 2025 am 12:12 AM

innodbbufferpool은 데이터와 색인 페이지를 메모리에로드하여 MySQL 데이터베이스의 성능을 향상시킵니다. 1) 데이터 페이지가 버퍼 풀에로드되어 디스크 I/O를 줄입니다. 2) 더러운 페이지는 정기적으로 디스크로 표시되고 새로 고침됩니다. 3) LRU 알고리즘 관리 데이터 페이지 제거. 4) 읽기 메커니즘은 가능한 데이터 페이지를 미리로드합니다.

MySQL : 초보자를위한 데이터 관리의 용이성MySQL : 초보자를위한 데이터 관리의 용이성Apr 09, 2025 am 12:07 AM

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

MySQL에서 인덱스를 사용하는 것보다 전체 테이블 스캔이 더 빠를 수 있습니까?MySQL에서 인덱스를 사용하는 것보다 전체 테이블 스캔이 더 빠를 수 있습니까?Apr 09, 2025 am 12:05 AM

전체 테이블 스캔은 MySQL에서 인덱스를 사용하는 것보다 빠를 수 있습니다. 특정 사례는 다음과 같습니다. 1) 데이터 볼륨은 작습니다. 2) 쿼리가 많은 양의 데이터를 반환 할 때; 3) 인덱스 열이 매우 선택적이지 않은 경우; 4) 복잡한 쿼리시. 쿼리 계획을 분석하고 인덱스 최적화, 과도한 인덱스를 피하고 정기적으로 테이블을 유지 관리하면 실제 응용 프로그램에서 최상의 선택을 할 수 있습니다.

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 옷 제거제

AI Hentai Generator

AI Hentai Generator

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

인기 기사

R.E.P.O. 에너지 결정과 그들이하는 일 (노란색 크리스탈)
3 몇 주 전By尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. 최고의 그래픽 설정
3 몇 주 전By尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. 아무도들을 수없는 경우 오디오를 수정하는 방법
3 몇 주 전By尊渡假赌尊渡假赌尊渡假赌
WWE 2K25 : Myrise에서 모든 것을 잠금 해제하는 방법
3 몇 주 전By尊渡假赌尊渡假赌尊渡假赌

뜨거운 도구

SecList

SecList

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

메모장++7.3.1

메모장++7.3.1

사용하기 쉬운 무료 코드 편집기

드림위버 CS6

드림위버 CS6

시각적 웹 개발 도구

Atom Editor Mac 버전 다운로드

Atom Editor Mac 버전 다운로드

가장 인기 있는 오픈 소스 편집기

SublimeText3 중국어 버전

SublimeText3 중국어 버전

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