下载安卓APP箭头
箭头给我发消息

客服QQ:3315713922

如何进行数据库mysql主从复制配置?

作者:课课家教育     来源: http://www.kokojia.com点击数:880发布时间: 2016-03-15 10:00:01

标签: mysql主从配置数据库备份mysql服务器

  什么是MySQL的主从配置呢?怎样进行mysql主从复制的配置呢?今天让我们一起进一步了解mysql,走进mysql的主从复制配置。

如何进行数据库mysql主从复制配置?_数据库备份_mysql服务器_课课家

  Mysql的主从复制至少是需要两个Mysql的服务,当然Mysql的服务是可以分布在不同的服务器上,也可以在一台服务器上启动多个服务。

  (1)首先确保主从服务器上的Mysql版本相同

  (2)在主服务器上,设置一个从数据库的账户,使用REPLICATIONSLAVE赋予权限,如:

  mysql>GRANTREPLICATIONSLAVEON*.*TO'slave001'@'192.168.0.99'IDENTIFIEDBY

  '123456';

  QueryOK,0rowsaffected(0.13sec)

  (3)修改主数据库的配置文件my.cnf,开启BINLOG,并设置server-id的值,修改之后必须重启Mysql服务

  [mysqld]

  log-bin=/home/mysql/log/mysql-bin.log

  server-id=1

  (4)之后可以得到主服务器当前二进制日志名和偏移量,这个操作的目的是为了在从数据库启动后,从这个点开始进行数据的恢复

  mysql>showmasterstatus\\G;

  ***************************1.row***************************

  File:mysql-bin.000003

  Position:243

  Binlog_Do_DB:

  Binlog_Ignore_DB:

  1rowinset(0.00sec)

  (5)好了,现在可以停止主数据的的更新操作,并生成主数据库的备份,我们可以通过mysqldump到处数据到从数据库,当然了,你也可以直接用cp命令将数据文件复制到从数据库去

  注意在导出数据之前先对主数据库进行READLOCK,以保证数据的一致性

  mysql>flushtableswithreadlock;

  QueryOK,0rowsaffected(0.19sec)

  之后是mysqldump

  mysqldump-h127.0.0.1-p3306-uroot-ptest>/home/chenyz/test.sql

  最好在主数据库备份完毕,恢复写操作

  mysql>unlocktables;

  QueryOK,0rowsaffected(0.28sec)

  (6)将刚才主数据备份的test.sql复制到从数据库,进行导入

  (7)接着修改从数据库的my.cnf,增加server-id参数,指定复制使用的用户,主数据库服务器的ip,端口以及开始执行复制日志的文件和位置

  [mysqld]

  server-id=2

  log_bin=/var/log/mysql/mysql-bin.log

  master-host=192.168.1.100

  master-user=test

  master-pass=123456

  master-port=3306

  master-connect-retry=60

  replicate-do-db=test

  (8)在从服务器上,启动slave进程

  mysql>startslave;

  (9)在从服务器进行showsalvestatus验证

  mysql>SHOWSLAVESTATUS\\G

  ***************************1.row***************************

  Slave_IO_State:Waitingformastertosendevent

  Master_Host:localhost

  Master_User:root

  Master_Port:3306

  Connect_Retry:3

  Master_Log_File:mysql-bin.003

  Read_Master_Log_Pos:79

  Relay_Log_File:gbichot-relay-bin.003

  Relay_Log_Pos:548

  Relay_Master_Log_File:mysql-bin.003

  Slave_IO_Running:Yes

  Slave_SQL_Running:Yes

  (10)好了,现在可以在我们的主服务器做一些更新的操作,然后在从服务器查看是否已经更新

  ----------------------------------------

赞(25)
踩(0)
分享到:
华为认证网络工程师 HCIE直播课视频教程