主机所有写的数据都会生成二进制SQL日志执行文件,从机只需要将SQL日志执行文件获取到,然后进行数据同步即可

一、MySQL环境搭建(一主一从相同操作)

  MySQL-master:192.168.33.135

  MySQL-slave:192.168.33.136

1、 连接到虚拟机,在/usr/local下新建一个文件夹为mysql,将tar包上传到此目录当中

  

2、切换到/usr/local/mysql目录,进行拆包   tar -xvf MySQL-5.5.44-1.linux2.6.x86_64.rpm-bundle.tar

  

3、 安装mysql客户端

  rpm -ivh MySQL-client-5.5.44-1.linux2.6.x86_64.rpm   此命令会报错

  

  rpm -ivh MySQL-client-5.5.44-1.linux2.6.x86_64.rpm --nodeps

  

4、 安装服务端    rpm -ivh MySQL-server-5.5.44-1.linux2.6.x86_64.rpm --nodeps

  

  安装服务端,如果当前虚拟机有mysql报错,出现版本冲突  yum remove mysql-libs  然后重新安装服务端

  

5、 检测是否安装客户端和服务器    rpm -qa|grep -i mysql

  

6、 启动mysql服务   service mysql start

  停止服务:service mysql stop

  重启服务:service mysql restart

  

7、 mysql默认安装完毕后是没有密码的 更改密码mysqladmin -uroot -p password '新密码'

  

8、 登陆mysql服务器    mysql -uroot -p

  

9、 SQLyog去连接虚拟机mysql

  连接报1130错误,没有权限进行远程连接,更改权限为%

  

  ①登陆mysql服务器   

    

  ②切换到mysql数据库下   use mysql;

    

  ③查询当前用户表中用户名和host信息,select user,host from user;  

  发现host为127.0.0.1代表只能本机使用root ,外界用不了

    

  ④更改权限,将host改为%       update user set host='%' where user='root';

  如果报ERROR 1062 (23000): Duplicate entry '%-root' for key 'PRIMARY’ 不用理会  

    

  ⑤再次查看 权限已更改   select user,host from user;   

    

  ⑥刷新权限 flush privileges;  

    

  ⑦退出客户端,重启mysql   service mysql restart

    

  ⑧使用SQLyog去连接

    

二、搭建主从复制

1、 配置节点信息

  找到my.cnf配置文件,rpm方式安装在/etc下没有该文件,mysql默认启动的时候会加载/usr/share/mysql/my-medium.cnf,只需要将这个文件复制到/etc下改名为my.cnf即可

2、配置主节点

  ①执行 cp /usr/share/mysql/my-medium.cnf /etc/my.cnf

    

  ②编辑 vi /etc/my.cnf文件

  server-id = 保证唯一,建议配置成ip地址第四位
  log-bin=mysql-bin 为了让主机生成二进制SQL日志执行文件

    

  ③重启mysql服务器      service mysql restart

    

  ④查看当前server-id是否生效,使用sqlyog工具查看,如果返回值为0或者1代表是默认的   SHOW VARIABLES LIKE 'server_id'

    

  ⑤查看当前主服务器状态,如果看到的不是null代表成功~   SHOW MASTER STATUS

    

3、配置从节点

  ①执行 cp /usr/share/mysql/my-medium.cnf /etc/my.cnf

    

  ②编辑 vi /etc/my.cnf文件

  server-id = 22
  log-bin=mysql-bin
  binlog_do_db=test

    

  ③重启mysql服务器   service mysql restart

    

  ④查看当前server-id是否生效,使用sqlyog工具查看,如果返回值为0或者1代表是默认的       SHOW VARIABLES LIKE 'server_id'

    

3、设置服务器读取权限

  主服务器创建一个账号,将账号分配从服务器,从服务器拿到该账号然后才可以执行同步数据操作
  GRANT REPLICATION SLAVE ON *.* TO 'zheng'@'%' IDENTIFIED BY 'zheng';

  

4、 从服务器执行同步

  从服务器执行同步操作,使用主服务器生成的权限账号,将二进制文件同步

   ①设置同步

  根据主服务器ip地址,生成的权限账号的用户名和密码以及二进制文件名称还有文件大小进行同步
  CHANGE MASTER TO MASTER_HOST='192.168.33.135',MASTER_USER='zheng',MASTER_PASSWORD='zheng',MASTER_LOG_FILE='mysql-bin.000001',MASTER_LOG_POS=241;

    

  ②开启同步  START SLAVE

    

5、 mysql环境卸载

  rpm -qa|grep -i mysql   查看安装情况

  

  卸载命令:  

    rpm -e MySQL-server-版本号
    rpm -e MySQL-client-版本号

  查找mysql目录:find / -name mysql

    

  删除 rm -rf xxx/mysql

MySQL优化---主从复制的更多相关文章

  1. 专题《一》mysql优化 ---------主从复制,读写

    主从复制是mysql自带的功能,读写分离用第三方插件 主从复制作用:读写分离(mycat),数据备份,高可用,集群 原理:二进制sql执行文件-----insert,update,delete,cre ...

  2. MySQL优化聊两句

    原文地址:http://www.cnblogs.com/verrion/p/mysql_optimised.html MySQL优化聊两句 MySQL不多介绍,今天聊两句该如何优化以及从哪些方面入手, ...

  3. 单表60亿记录等大数据场景的MySQL优化和运维之道

    此文是根据杨尚刚在[QCON高可用架构群]中,针对MySQL在单表海量记录等场景下,业界广泛关注的MySQL问题的经验分享整理而成,转发请注明出处. 杨尚刚,美图公司数据库高级DBA,负责美图后端数据 ...

  4. 【转】单表60亿记录等大数据场景的MySQL优化和运维之道 | 高可用架构

    此文是根据杨尚刚在[QCON高可用架构群]中,针对MySQL在单表海量记录等场景下,业界广泛关注的MySQL问题的经验分享整理而成,转发请注明出处. 杨尚刚,美图公司数据库高级DBA,负责美图后端数据 ...

  5. [转载] 单表60亿记录等大数据场景的MySQL优化和运维之道 | 高可用架构

    原文: http://mp.weixin.qq.com/s?__biz=MzAwMDU1MTE1OQ==&mid=209406532&idx=1&sn=2e9b0cc02bdd ...

  6. 「mysql优化专题」高可用性、负载均衡的mysql集群解决方案(12)

    一.为什么需要mysql集群? 一个庞大的分布式系统的性能瓶颈中,最脆弱的就是连接.连接有两个,一个是客户端与后端的连接,另一个是后端与数据库的连接.简单如图下两个蓝色框框(其实,这张图是我在悟空问答 ...

  7. MySQL优化面试

    原则:尽量使用整型表示字符串 存储IP INET_ATON(str),address to number INET_NTOA(number),number to address MySQL内部的枚举类 ...

  8. MySQL优化十大技巧

    转自:https://m.2cto.com/database/201701/557910.html MYSQL优化主要分为以下四大方面: 设计:存储引擎,字段类型,范式与逆范式 功能:索引,缓存,分区 ...

  9. mysql (主从复制)(proxy , Amoeba)

    原址如下: http://heylinux.com/archives/1004.html Mysql作为目前世界上使用最广泛的免费数据库,相信所有从事系统运维的工程师都一定接触过.但在实际的生产环境中 ...

随机推荐

  1. 【转】推荐!国外程序员整理的Java资源大全

    构建 这里搜集了用来构建应用程序的工具. Apache Maven:Maven使用声明进行构建并进行依赖管理,偏向于使用约定而不是配置进行构建.Maven优于Apache Ant.后者采用了一种过程化 ...

  2. canal 基于Mysql数据库增量日志解析

    canal 基于Mysql数据库增量日志解析  1.前言  最近太多事情 工作的事情,以及终身大事等等 耽误更新,由于最近做项目需要同步监听 未来电视 mysql的变更了解到公司会用canal做增量监 ...

  3. 2次方的期望dp

    某一天WJMZBMR在打osu~~~但是他太弱逼了,有些地方完全靠运气:(    我们来简化一下这个游戏的规则    有n次点击要做,成功了就是o,失败了就是x,分数是按comb计算的,连续a个com ...

  4. html转成pdf 下载,支持后台保存

    最近有个需求,需要将html转换成pdf并支持下载 1.需要两个js库 下载 提取码: vab7 <script type="text/javascript" src=&qu ...

  5. Governing sand 贪心

    题目链接:https://ac.nowcoder.com/acm/contest/887/C 题目描述 The Wow village is often hit by wind and sand,th ...

  6. 力扣337——打家劫舍 III

    这一篇也是基于"打家劫舍"的扩展,需要针对特殊情况特殊考虑,当然其本质还是动态规划,优化时需要考虑数据结构. 原题 在上次打劫完一条街道之后和一圈房屋后,小偷又发现了一个新的可行窃 ...

  7. golang 服务大量 CLOSE_WAIT 故障排查

    事故经过 排查 总结 事故经过 [2019-12-27 18:00 周五] 业务方突然找来说调用我们程序大量提示"触发限流",但是我们没有收到任何监控报警.紧急查看了下 Servi ...

  8. [bzoj1045] [洛谷P2512] [HAOI2008] 糖果传递

    Description 有n个小朋友坐成一圈,每人有ai个糖果.每人只能给左右两人传递糖果.每人每次传递一个糖果代价为1. Input 第一行一个正整数nn<=1'000'000,表示小朋友的个 ...

  9. 关于C++读入数字按位取出与进制转换问题

    这一片博客我就不写具体的一个题了,只是总结一种典型问题——读入数字按位取出. 就拿数字12345举例吧. 是首先,我们要取出个位.这样取出: 12345/1=12345 12345%10=5.    ...

  10. CQBZOJ 【重庆市NOIP模拟赛】避难向导

    题目描述 "特大新闻,特大新闻!全国爆发了一种极其可怕的病毒,已经开始在各个城市 中传播开来!全国陷入了巨大的危机!大量居民陷入恐慌,想要逃到其它城市以 避难!经调查显示,该病毒来自于C 市 ...