• 欢迎访问搞代码网站,推荐使用最新版火狐浏览器和Chrome浏览器访问本网站!
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏搞代码吧

UNIX设置MySql数据同步 实现复制功能_MySQL

mysql 搞代码 4年前 (2022-01-09) 18次浏览 已收录 0个评论

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<!$z
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 本文来源[email protected]搞@^&代*@码2网
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!
<b&I JV7
用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条数据。


搞代码网(gaodaima.com)提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发送到邮箱[email protected],我们会在看到邮件的第一时间内为您处理,或直接联系QQ:872152909。本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:UNIX设置MySql数据同步 实现复制功能_MySQL
喜欢 (0)
[搞代码]
分享 (0)
发表我的评论
取消评论

表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址