关闭

如何用mysql搭配主从数据库

标签: mysql主从数据库数据库
67人阅读 评论(0) 收藏 举报
分类:
最近给一个小项目做了个简单的mysql主从数据库,中间遇到些坑,现记录一下。

假设:
mysql数据库版本:5.6.21-log,主数据库服务器IP:192.168.0.2,从数据库服务器IP:192.168.0.155。
1 给主服务分配一个用户给从服务器使用,
在mysql命令行工具,输入以下命令:
GRANT ALL PRIVILEGES ON . TO ‘repl’@’192.168.0.155’ IDENTIFIED BY ‘repl’;
意思是给155这个IP分配一个帐号为repl的用户密码是repl。然后155这个IP就只能用这个帐号及密码访问主服务器数据库了。
2 配置主服务器
mysql的数据库配置文件,要在服务里找到mysql的服务,然后点击右健查看属性,在可执行文件的路径里有个后缀为ini的文件,这个ini文件就是配置文件了。
在配置文件里找到[mysqld]这一行,然后在下一行添加以下内容:
server-id = 1#标记该服务器id为1
log-bin = mysql-bin#启动二进制记录
binlog-do-db = test#要同步的数据库
relay-log = relay-bin
relay-log-index = relay-bin-index
配置好后,重启mysql服务,在命令行中查看主服务器的的服务器id,看是否为1,命令行为:show variables like ‘server_id’。
在命令行中输入:show master status;看记录是否为空,如果为空,则表示二进制记录没有启动成功。请重新配置。
3 配置从服务器
在配置文件[mysqld]这一行后添加以下内容:
server-id = 2##标记该服务器id为2
replicate-do-db = test#要同步的数据库
重启服务器,需要确认服务器id是否为2。如果不是2,请检查配置文件,是否在其它地方设置了服务器id。
4 在从服务器命令行输入以下命令
stop slave;
change master to master_host=’192.168.0.2’,master_port=’3306’,master_user=’repl’,master_password=’test’, master_log_file=’mysql-bin.000001’,master_log_pos=107;
start slave;
其它master_log_file及master_log_pos,在主服务器里命令show master status;显示的内容会有
5 做完以上操作后,可以在主服务器里test表里一个操作,看重服务器是否有同步。

注意:
1 在开始配置前,先在主服务器上进行备份,然后不再操作主服务器数据库,然后把备份在从服务器上恢复,保证此时两服务器的数据是一样的。
2 在配置的过程当中,主服务器的数据库不能有写操作,如有可能会导致主从数据库数据不一致情况。

0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:2341次
    • 积分:71
    • 等级:
    • 排名:千里之外
    • 原创:5篇
    • 转载:0篇
    • 译文:0篇
    • 评论:1条
    文章分类
    最新评论