MySQL优化---主从复制
主机所有写的数据都会生成二进制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优化---主从复制的更多相关文章
- 专题《一》mysql优化 ---------主从复制,读写
主从复制是mysql自带的功能,读写分离用第三方插件 主从复制作用:读写分离(mycat),数据备份,高可用,集群 原理:二进制sql执行文件-----insert,update,delete,cre ...
- MySQL优化聊两句
原文地址:http://www.cnblogs.com/verrion/p/mysql_optimised.html MySQL优化聊两句 MySQL不多介绍,今天聊两句该如何优化以及从哪些方面入手, ...
- 单表60亿记录等大数据场景的MySQL优化和运维之道
此文是根据杨尚刚在[QCON高可用架构群]中,针对MySQL在单表海量记录等场景下,业界广泛关注的MySQL问题的经验分享整理而成,转发请注明出处. 杨尚刚,美图公司数据库高级DBA,负责美图后端数据 ...
- 【转】单表60亿记录等大数据场景的MySQL优化和运维之道 | 高可用架构
此文是根据杨尚刚在[QCON高可用架构群]中,针对MySQL在单表海量记录等场景下,业界广泛关注的MySQL问题的经验分享整理而成,转发请注明出处. 杨尚刚,美图公司数据库高级DBA,负责美图后端数据 ...
- [转载] 单表60亿记录等大数据场景的MySQL优化和运维之道 | 高可用架构
原文: http://mp.weixin.qq.com/s?__biz=MzAwMDU1MTE1OQ==&mid=209406532&idx=1&sn=2e9b0cc02bdd ...
- 「mysql优化专题」高可用性、负载均衡的mysql集群解决方案(12)
一.为什么需要mysql集群? 一个庞大的分布式系统的性能瓶颈中,最脆弱的就是连接.连接有两个,一个是客户端与后端的连接,另一个是后端与数据库的连接.简单如图下两个蓝色框框(其实,这张图是我在悟空问答 ...
- MySQL优化面试
原则:尽量使用整型表示字符串 存储IP INET_ATON(str),address to number INET_NTOA(number),number to address MySQL内部的枚举类 ...
- MySQL优化十大技巧
转自:https://m.2cto.com/database/201701/557910.html MYSQL优化主要分为以下四大方面: 设计:存储引擎,字段类型,范式与逆范式 功能:索引,缓存,分区 ...
- mysql (主从复制)(proxy , Amoeba)
原址如下: http://heylinux.com/archives/1004.html Mysql作为目前世界上使用最广泛的免费数据库,相信所有从事系统运维的工程师都一定接触过.但在实际的生产环境中 ...
随机推荐
- 从零开始入门 K8s | GPU 管理和 Device Plugin 工作机制
作者 | 车漾 阿里巴巴高级技术专家 本文整理自<CNCF x Alibaba 云原生技术公开课>第 20 讲. 关注"阿里巴巴云原生"公众号,回复关键词" ...
- TensorFlow——卷积神经网络的相关函数
在TensorFlow中,使用tr.nn.conv2d来实现卷积操作,使用tf.nn.max_pool进行最大池化操作.通过闯传入不同的参数,来实现各种不同类型的卷积与池化操作. 卷积函数tf.nn. ...
- 艾编程coding老师:深入JVM底层原理与性能调优
1. Java内存模型JMM,内存泄漏及解决方法:2. JVM内存划分:New.Tenured.Perm:3. 垃圾回收算法:Serial算法.并行算法.并发算法:4. JVM性能调优,CPU负载不足 ...
- spring boot+spring security 使用随笔
本人最近接受的新任务是从零搭一个管理系统的权限管理模块,从零开始学习了spring security,已完成绝大部分设计和开发,和大家分享一些学习和开发心得. 首先是数据库的设计,这里是 按照产品的需 ...
- MyBatis.多条件排序
<if test="orderBy != null"> order by <choose> <when test='orderBy=="ag ...
- Flask路由+视图补充
一.路由设置的两种方法 1.装饰器 @app.route('/index/') def index(): return 'Hello World!' 2.源码 route->decorator- ...
- spring boot 整合 swagger2
swagger2为了更好的管理api文档接口 swagger构建的api文档如下,清晰,避免了手写api诸多痛点 一,添加依赖 <!--swagger2的官方依赖--> <depen ...
- Egret学习-TiledMap使用
环境说明: 引擎版本:5.2.4 Egret Wing 4.1.6 1.下载依赖,下载地址https://github.com/egret-labs/egret-game-library/tree/m ...
- 【WPF学习】第十三章 理解路由事件
每个.NET开发人员都熟悉“事件”的思想——当有意义的事情发生时,由对象(如WPF元素)发送的用于通知代码的消息.WPF通过事件路由(event routing)的概念增强了.NET事件模型.事件路由 ...
- JSON Web Token 是什么?
免费获得官方JWT手册并深入学习JWT吧! 简介 JSON Web Token(缩写JWT),是一套开放的标准(RFC 7519),它定义了一种紧凑且自URL安全的方式,以JSON对象的方式在各方之间 ...









