视频1 视频21 视频41 视频61 视频文章1 视频文章21 视频文章41 视频文章61 推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37 推荐39 推荐41 推荐43 推荐45 推荐47 推荐49 关键词1 关键词101 关键词201 关键词301 关键词401 关键词501 关键词601 关键词701 关键词801 关键词901 关键词1001 关键词1101 关键词1201 关键词1301 关键词1401 关键词1501 关键词1601 关键词1701 关键词1801 关键词1901 视频扩展1 视频扩展6 视频扩展11 视频扩展16 文章1 文章201 文章401 文章601 文章801 文章1001 资讯1 资讯501 资讯1001 资讯1501 标签1 标签501 标签1001 关键词1 关键词501 关键词1001 关键词1501 专题2001
UNIX设置MySql数据同步实现复制功能_MySQL
2020-11-09 17:21:41 责编:小采
文档


mysql从3.23.15版本以后提供数据库复制功能。利用该功能可以实现两个数据库同步,主从模式,互相备份模式的功能。 $wM8>bt
H% Q{sd
数据库同步复制功能的设置都在mysql的设置文件中体现。mysql的配置文件(一般是my.cnf) &kKbqz
-, [ FjE&h
在unix环境下在/etc/mysql/my.cnf 或者在mysql用户的home目录下面的my.cnf。 I=3Cp
*E&b.T
window环境中,如果c:根目录下有my.cnf文件则取该配置文件。当运行mysql的winmysqladmin.exe工具时候,该工具会把 c:根目录下的my.cnf 命名为mycnf.bak。并在winnt目录下创建my.ini。mysql服务器启动时候会读该配置文件。所以可以把my.cnf中的内容拷贝到 my.ini文件中,用my.ini文件作为mysql服务器的配置文件。 [)" S
Hvb K}P_\P
设置方法: [,HKoL?
t,>g?)H(
设置范例环境: _g0pl*iR
Uu 7zb|
操作系统:window2000 professional e'B$k;D
wh V*O6"
mysql:4.0.4-beta-max-nt-log e4 mDL&
DBz@8lS
A ip:10.10.10.22 F&|J2@Ap
B ip:10.10.10.53 sZ$al 
mK~7'CvF
A:设置 [TEUq[JK2
6Ct2V[Q$Q
1.增加一个用户最为同步的用户帐号: - 0(I|L4
q]AMcZ
GRANT FILE ON *.* TO backup@'10.10.10.53' IDENTIFIED BY ‘1234’ q0m0B= \Q
_QH0%h
2.增加一个数据库作为同步数据库:  Y?e/ 
k8I.~j\VF)
create database backup e[UJ\}[y
rFMwl8Q* 
B:设置 DP10fG
rRc6fr
1.增加一个用户最为同步的用户帐号: #Iy}(Zr
HO 3'1Z_
GRANT FILE ON *.* TO backup@'10.10.10.22' IDENTIFIED BY ‘1234’ k[#[%B
1c^J}/ l
2.增加一个数据库作为同步数据库: :eEiJ#e7-p
gUD94M
create database backup #_*N5,WS6
eE%R<_{m
主从模式:A->B N}R_bA]q+
1 |HAAlh
A为master u]m_p86^pB
$tb_`[
修改A mysql的my.ini文件。在mysqld配置项中加入下面配置: ;0/#:^?
>M+K |
server-id=1 p{|x:zi
log-bin *pGpg5wB
tR/)M
#设置需要记录log 可以设置log-bin=c:mysqlbakmysqllog 设置日志文件的目录, s&7Xm @le
5Y[x?r
#其中mysqllog是日志文件的名称,mysql将建立不同扩展名,文件名为mysqllog的几个日志文件。 (axI Fp
&B-o,,4N
binlog-do-db=backup #指定需要日志的数据库 C{/+5HTf
w0X! "(U!
重起数据库服务。 I7+(t$4E!

用show master status 命令看日志情况。 U mO$
AKSmo
B为slave f7^=n F~
9n Xr p@EZ
修改B mysql的my.ini文件。在mysqld配置项中加入下面配置: o$t*Jg=z
!Le1 O?p
server-id=2 3G7J'
master-host=10.10.10.22 srGGomj984
master-user=backup #同步用户帐号 `dR[}!r)
master-password=1234 0zwgQ4??P2
master-port=3306 V+hO_iYf
master-connect-retry=60 预设重试间隔60秒 A+LoWU%_}
replicate-do-db=backup 告诉slave只做backup数据库的更新 c I^off
4p?!a f.
重起数据库 Mm?Gs }
oE~sr'
用show slave status看同步配置情况。 ?qFQu
s71E p
注意:由于设置了slave的配置信息,mysql在数据库目录下生成master.info E_)),2k
xNp7hrwP1
所以如有要修改相关slave的配置要先删除该文件。否则修改的配置不能生效。 >McJz'
S~Ft#h<
双机互备模式。 @,zDg/W:
}_xSGLk 
如果在A加入slave设置,在B加入master设置,则可以做B->A的同步。 -KXKEeAh
w=o@ zdAh
在A的配置文件中 mysqld 配置项加入以下设置: R/c/}kj+
6d UF#=4(
master-host=10.10.10.53 gk OLU
master-user=backup hTItT4:hb
master-password=1234 uKaEKmcKt
replicate-do-db=backup a}Oj6
master-connect-retry=10 :@, vm&
A,"^AEu
在B的配置文件中 mysqld 配置项加入以下设置: Xy((T
c]K!=k
log-bin=c:mysqllogmysqllog 2U|6Y^
binlog-do-db=backup R~ ZA!q
^[?]x5mWU
注意:当有错误产生时*.err日志文件。同步的线程退出,当纠正错误后要让同步机制进行工作,运行slave start +sO?1xku
wJ59&(
重起AB机器,则可以实现双向的热备。 W&4C 
lx[;~0y0=
测试: pYmmUjz
16rkj!`i
向B批量插入大数据量表AA(1872000)条 [uFc(E
Q*dJ =
A数据库每秒钟可以更新2500条数据。

下载本文
显示全文
专题