mysql主从备份

1.两台机器都装上mysql,并且都开启mysql的服务
修改主数据库配置文件

vim /etc/my.cnf (MySQL配置文件,ubuntu默认是/etc/mysql/my.cnf)

[mysqld]下添加

server-id = 数字 (1-254其中之一,如集群内已有的数字不可重复)

log-bin = master-bin (定义binlog日志名字=master-bin)

写完保存退出

service mysql restart

重启完后,我们可以发现在/var/lib/mysql下生成了以在配置文件中定义log_bin= master-bin为开头的文件
在这里插入图片描述
这些文件很重要,不然不能实现主从备份,通过二进制log文件来进行备份.

2.备份主库的mysql
mysqldump -u root --default-character-set=gbk -pxxxxxx emeetdb > /home/emeet/emeetdb20191104.sql
先进入到mysql
创建备份访问的用户
grant replication slave on . to ‘repl’@slave_ip identified by ‘123456’;
在这里插入图片描述
锁定一下表:
flush tables with read lock;
(为了同步前数据一致。)
show master status (查看一下position和file)
在这里插入图片描述
(退出mysql)

配置从数据库
查看my.cnf,配置server-id=134,要求和主不一样
[mysqld]下增加

service-id=134

lower_case_table_names=1 可以加入忽略大小写的设置
修改完配置文件后,启动或者重启mysqld服务

service mysql restart

进入mysql,创建备份的数据库:

mysql>create database emeetdb;

进入数据库
注意分配权限给当前操作用户

mysql> GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'passwd' WITH GRANT OPTION;
mysql>use emeetdb;
mysql>source 具体文件路径(即/home/emeet/emeetdb20191104.sql);

重新进入mysql,不用进入数据库下
(1)stop slave;
(2)change master to master_host=‘192.168.136.133’, master_user=‘repl’, master_password=‘123456’, master_log_file=‘matser-bin.000001’, master_log_pos=450;
Ip为主数据库服务器ip,注意开启允许从数据库访问,
用户和密码为主数据库上面设置的
master_log_file为主服务器上备份的二进制日志文件
master_log_pos为文件同步位置
(3)start slave;
判定主从是否配置成功
mysql>show slave status\G
在这里插入图片描述如图出现俩个yes属性,成功。
不成功的因素:
(1)防火墙 systemctl stop firewalld
(2)用户名是否正确

回到主,进到mysql解除table(表)的锁定
unlock tables;
至此完成主从配置。
主库my.cny配置
参数 意义
server-id 数据库唯一ID,一组主从中此标识号不能重复。其中1 代表主数据库(源) 2代表辅数据库(目的)
log_bin 开启bin-log,并指定文件目录和文件名前缀
binlog_do_db 需要同步的数据库名字,可以是多个,之间用分号分割
binlog_ignore_db 不需要同步的数据库名字
max_binlog_size 每个bin-log最大大小,当此大小等于500M时会自动生成一个新的日志文件。一条记录不会写在2个日志文件中,所以有时日志文件会超过此大小。
binlog_cache_size 日志缓存大小
binlog-do-db 需要同步的数据库名字,如果是多个,就以此格式在写一行即可。
binlog-ignore-db 不需要同步的数据库名字,如果是多个,就以此格式在写一行即可。
expire_logs_day 设置bin-log日志文件保存的天数,此参数mysql5.0以下版本不支持。
binlog_format bin-log日志文件格式,设置为MIXED可以防止主键重复。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值