mysql主从数据库配置(主服务器某库,从服务器某些表)

一、主库配置
1.修改my.cnf文件 vi /ect/my.cnf (一般linux下在这里)
在my.cnf 文件中加入
log_bin=/usr/local/mysql/binlog/mysql-bin #后面接的是日志存放路径(目录必须存在,不存在手动创建 权限777)
#过滤库
binlog_ignore_db=mysql
binlog_ignore_db=infomation_schema
binlog_ignore_db=performance_schema
(三句的意思:备份时忽略 mysql…那3个默认的库)
#指定同步的库
binlog-do-db=mydata
重启mysql(service mysqld restart)

2.在msqyl下执行(mysql -uroot -p)
添加复制用户:
GRANT REPLICATION SLAVE ON *.* to ‘user’@ ‘%’ identified by ‘password’;
flush privileges; 更新操作

二、从库配置
1.修改my.cnf文件 vi /ect/my.cnf (一般linux下在这里)
在my.cnf 文件中加入
server_id=2
#指定更新表
replicate-wild-do-table=mydata.db_user
重启mysql(service mysqld restart)

2.在msqyl下执行(mysql -uroot -p)
从库与主库连接 change master to
master_host=’192.168.1.199’,master_user=’root’,master_password=’root’,master_log_file=’mysql-bin.000001’,master_log_pos=154;
#启动主从服务
start slave;
#查看从服务器是否启动成功
show slave status;
如:
Slave_IO_Running:Yes
Slave_SQL_Running:Yes
均为Yes表示成功

reset slave ; 重置slave状态.
stop slave; 暂停slave状态;

三、额外篇
1.进入mysql执行(查看和重置日志)
show master logs; 这个查看你的binlog文件当前到了那个点
如果不是从0001开始的,重置一下日志 语句: reset master;

2.linux下执行(导出日志文件成sql格式)
cd进入mysql-bin.000002日志的文件夹
mysqlbinlog mysql-bin.000002 > /tmp/back.sql 可以通过这个语句将日志导出sql文件 (mysqlbinlog执行失败的话可能是路径问题 如:/usr/local/mysql/bin/mysqlbinlog)
导出mysql文件报错:(mysqlbinlog mysql-bin.000063 > back.sql)
/usr/local/mysql/bin/mysqlbinlog: unknown variable ‘default-character-set=utf8’
解决:
mysqlbinlog –no-defaults mysql-bin.000063 > back.sql

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值