菜单 学习猿地 - LMONKEY

VIP

开通学习猿地VIP

尊享10项VIP特权 持续新增

知识通关挑战

打卡带练!告别无效练习

接私单赚外块

VIP优先接,累计金额超百万

学习猿地私房课免费学

大厂实战课仅对VIP开放

你的一对一导师

每月可免费咨询大牛30次

领取更多软件工程师实用特权

入驻
1387
0

配置\清除 MySQL 主从 读写分离

原创
05/13 14:22
阅读数 2628

配置Mysql主从

配置master数据库文件

  1. 数据库配置文件

    vim /etc/my.cnf #编辑数据库配置文件
    server-id=1 #设置主服务器id,必须唯一
    #一定要确保主mysql的server-id 小于从mysql的server-id
    binlog-ignore-db=mysql,test#其他忽略的数据库名
    binlog-do-db=lmonkey#需要备份的数据库名,比如lmonkey
    log-bin=master-bin #指定一个日志路径,用于主从
    log-bin-index=master-bin.index #指定mysql-bin.index文件的路径,用于主从
    ###重启Mysql###
    
  2. 添加从数据库连接账户并配置权限

    #为了以后可扩展性,可以配置用户名为类似slaver_1,2,3...
    #IP内网互通,配置内网
    mysql -uroot -p
    mysql> CREATE USER 'slaver_1'@'192.168.1.2' IDENTIFIED BY 'password'; #IP内网互通,配置内网IP
    mysql> GRANT REPLICATION SLAVE ON lmonkey.* TO 'slaver_1'@'192.168.1.2'; #从账户分配权限
    mysql> flush privileges; #刷新权限
    
  3. 查看主数据库状态,!!!记录MYSQL-BIN POSITION

    mysql> SHOW MASTER STATUS;
    +-------------------+----------+--------------+------------------+-------------------+
    | File              | Position | Binlog_Do_DB | Binlog_Ignore_DB | Executed_Gtid_Set |
    +-------------------+----------+--------------+------------------+-------------------+
    | master-bin.000001 |      154 | lmonkey  | mysql,test       |                   |
    +-------------------+----------+--------------+------------------+-------------------+
    1 row in set (0.00 sec)
    

配置从数据库配置文件

  1. 配置从服务器id,保证唯一

    vim /etc/my.cnf 
    [mysqld] server-id=2 #设置从服务器id,必须唯一, 一定要大于主mysql的server-id
    relay-log-index=slave-relay-bin.index #定义relay-log-index的文件名
    relay-log=slave-relay-bin#定义relay-log的文件名(默认保存在数据目录下)
    ###重启Mysql###
    
  2. 配置从数据库映射信息

    mysql> CHANGE MASTER TO  MASTER_HOST='192.168.1.1', MASTER_USER='slaver_1',MASTER_PASSWORD=password', MASTER_LOG_FILE='mysql-bin.000001 ',  MASTER_LOG_POS=154; 
    #MASTER_HOST 主服务器IP,MASTER_USER 从服务器USER,MASTER_PASSWORD 刚才配置的密码,
    # MASTER_LOG_FILE、 MASTER_LOG_POS,查看主数据库状态时让记录的信息
    
  3. 开启同步

    mysql> start slave;
    
  4. 查看从数据库状态

    mysql>show slave status\G
    #不带分号
    

主服务器创建数据库查看是否实现主从复制

  1. 创建数据库test

    mysql> create database test default charset utf8 collate utf8_general_ci;
    
  2. 查看从数据库状态,是否实现主从复制

    mysql> show databases;
    

备注

如果没有配置成功

  1. 关闭从服务(stop slave;)
  2. 重复配置从数据库的第二步,但是记得此时还要查看主服务器的信息
  3. 重新开启主从

发表评论

0/200
1387 点赞
0 评论
收藏
为你推荐 换一批