设为首页 收藏本站
查看: 612|回复: 0

[经验分享] mysql如何主从同步?

[复制链接]

尚未签到

发表于 2018-9-29 07:04:51 | 显示全部楼层 |阅读模式
  一、使用完全备份文件恢复单个表----innobackupex
  --apply-log    --export  导出表信息     .exp  .cfg
  discard  tablespace  删除表空间          .ibd
  import  tablespace 导入表空间
  /gamedb
  drop table  t1;
  1 按照源表结构创建表t1  create  table  t1(id int);
  2 从备份文件里导出表信息
  #innobackup  --user  root  --password abc123  --databases="库名列表"
  --apply-log    --export  /gamedbbak
  3 删除表空间

  mysql>>  4 把导出的表信息 拷贝的对应的数据库目录下
  #cd  /gamedbbak/gamedb
  #cp  t1.{exp,ibd,cfg}  /var/lib/mysql/gamedb/
  #ls /var/lib/mysql/gamedb/t1.
  #chown  mysql:myql   /var/lib/mysql/gamedb/t1.

  5 导入表空间 >  6  select   from  t1;
  +++++++++++++++++++++++++++++++++++++++
  二、主从同步
  2.1 什么是主从同步: 让其他的数据库服务器自动同步正在提供服务的数据库服务器上 的数据。
  2.2 配置mysql主从同步结构
  主数据库服务器的配置:

  1 添加授权用户   grant  replication   slave  on  .*  to slaveuser@"192.168.4.12" >  2 启用binlog日志
  3 重启数据库服务
  4 查看日志信息 mysql> show  master status;
  从数据库服务器的配置:
  1 验证主库提供的授权用户
  2 修改配置文件指定server_id  并重启数据库服务
  3 使用本机的数据库管理员登录,指定主库信息。
  mysql> show  slave status;
  mysql> change master  to  master_host="192.168.4.11",
  master_user="slaveuser",
  master_password="123456",
  master_log_file="master11.000001",
  master_log_pos=154;
  mysql>start  slave;
  mysql>show  slave status\G;
  slave_IO_Running: Yes
  slave_SQL_Running: Yes
  测试主从同步配置:
  1 在主库服务器上添加访问数据的用户
  2 在客户端使用授权用户连接主库,产生的数据在从库本机也能够查看的到。
  +++++++++++++++++++++++++++++++++
  从数据库目录下多出文件
  master.info
  主机名-relay-bin.000000  中继日志文件
  主机名-relay-bin.index
  relay-log.info
  ++++++++++++++++++++++++++
  主从同步工作原理
  mysql> stop  slave ;
  mysql> change  master  to  选项=“值”;
  mysql> start slave;
  ++++++++++++++++++++++++++++++++++++
  主从同步结构模式
  一主一从  
  一主多从
  主从从
  主主结构(互为主从)
  +++++++++++++++++++++++++++++++++++
  主从同步常用配置参数:
  #vim /etc/my.cnf
  [mysqld]
  选项=值
  :wq
  #systemctl restart
  主库配置文件里(对应所有的从都有效)
  只允许同步的库 binlog_do_db=库名1,库名2,库名n
  不允许同步的库 binlog_ignore_db=库名1,库名2,库名n
  从库配置文件里(只对本机有效)
  只同步的库  replicate_do_db=库名1,库名2,库名n
  只不同步的库 replicate_ignore_db=库名1,库名2,库名n
  级联复制  log_slave_updates
  +++++++++++++++++++++++++++++++++++
  三、数据读写分离   maxscale软件 +  一主一从
  3.1 什么读写分离:把客户端访问数据时的查询请求select 和写insert 给不同的数据库服务器处理。
  

         client 254 mysql  -h192.168.4.15  -uyaya99  -p123456  |
  15
  代理主机---> systemctl stop mysqld
  |
  

  

      |                          |  

  192.168.4.11        192.168.4.12
  写                          读
  主                          从
  1 配置一主一从结构
  2 配置代理主机
  2.1
  a 装包
  b 、修改配置文件:
  指定数据库服务器  、指定监控的数据库服务器 ,指定读写在那些主机之间执行、
  定义管理服务 、读写分离服务使用的端口、管理服务使用的端口
  4006                             4009
  c、根据配置文件设置,在数据库服务器上添加对应的授权用户

  grant  replication slave ,replication client  on  .  to   scalemon@"%" >
  grant  select  on   mysql.*    to   maxscale@"%" >  d、在代理主机上测试授权用户
  #which  mysql
  #yum  -y install mariadb
  #mysql  -h192.168.4.11  -uscalemon  -p123456
  #mysql  -h192.168.4.11  -umaxscale  -p123456
  #mysql  -h192.168.4.12  -uscalemon  -p123456
  #mysql  -h192.168.4.12  -umaxscale  -p123456
  e、启动服务
  #maxscale  -f  /etc/maxscale.cnf  ( 停止服务 pkill  -9 maxscale)
  #netstat  -utnalp  | grep maxscale
  2.2 测试配置
  A\ 在代理服务器本机访问管理服务
  15#maxadmin  -uadmin  -pmariadb  -P4009
  maxscale> list  servers
  B 在客户端254主机 访问代理服务器存储数据或查询数据
  #which mysql
  #yum  -y  install mariadb
  #mysql -h192.168.4.15  -P4006  -uyaya99  -p123456
  ++++++++++++++++++++++++++++++++++++
  四、mysql服务的优化
  五mysql高可以集群 (mysql-mmm  + 主从同步)  11-14   15
  #yum  -y  install  perl-*



运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-603464-1-1.html 上篇帖子: 2、实现tomcat+mysql实现jps的连接 下篇帖子: MySQL专题1之MySQL概述
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表