mysql主从配置

Linux Centos7中Mysql双主双从服务器部署

核能气质少年 提交于 2019-11-28 07:28:24
作用: 由于架构的扩展,业务量的越来越大,I/O访问频率过高此时需要作多库的存储,提高单个及其的I/O性能。而当一个主服务器出现故障后,此时另一个服务器仍可以继续工作 一.环境 准备4台干净的mysql服务器 192.168.122.196 master1 192.168.122.197 master2 192.168.122.198 slave1 192.168.122.199 slave2 如果是克隆的虚拟机要修改每台服务器UUID //vim /var/lib/mysql/auto.cnf 在每台服务器中配置所有服务器的域名 //vim /etc/hosts 二:配置 1,两台主服务器之间各配置为主从 M——M master1: vim /etc/my.cnf validate_password=off log-bin = my1log server-id = 1 gtid_mode=ON //开启gtid enforce_gtid_consistency=1 systemctl restart mysqld //重启mysql服务,使配置文件生效 创建授权账户: grant all on . to 'slave'@'%' identified by '123'; master2: vim /etc/my.cnf validate_password=off log-bin =

mysql主从加MHA+keepalived部署(二) —— mysql主从部署

拜拜、爱过 提交于 2019-11-28 07:14:51
mysql安装: https://blog.csdn.net/royzhang7/article/details/100031390 --环境 虚机A: 192.168.3.3 redhat7 --主 虚机B: 192.168.3.4 redhat7 --从 --安装mysql版本 5.7.26 --修改主库(master)参数文件,添加bin-log相关参数和gtid相关参数 vi /etc/my.cnf #binlog server-id=1 binlog-format=MIXED log-bin=/data/mysql/log/mysql-bin.log max_binlog_size=200M binlog_cache_size=4M max_binlog_cache_size=300M expire_logs_days=30 gtid_mode=ON enforce_gtid_consistency=ON log-slave-updates=1 --重启主库 systemctl restart mysqld --主库添加同步用户 mysql> grant replication slave on *.* to 'repl'@'192.168.3.4' identified by 'repl'; mysql> show grants for 'repl'@'192.168

MySQL延迟问题和数据刷盘策略

核能气质少年 提交于 2019-11-28 05:37:33
  一、MySQL复制流程   官方文档流程图如下:      1、绝对的延时,相对的同步   2、纯写操作,线上标准配置下,从库压力大于主库,最起码从库有relaylog的写入。   二、MySQL延迟问题分析   1、主库DML请求频繁   原因:主库并发写入数据,而从库为单线程应用日志,很容易造成relaylog堆积,产生延迟。   解决思路:做sharding,打散写请求。考虑升级到MySQL 5.7+,开启基于逻辑时钟的并行复制。   2、主库执行大事务   原因:类似主库花费很长时间更新了一张大表,在主从库配置相近的情况下,从库也需要花几乎同样的时间更新这张大表,此时从库延迟开始堆积,后续的events无法更新。   解决思路:拆分大事务,及时提交。   3、主库对大表执行DDL语句   原因:DDL未开始执行,被阻塞,检查到位点不变;DDL正在执行,单线程应用导致延迟增加,位点不变。   解决思路:找到被阻塞DDL或是写操作的查询,干掉该查询,让DDL正常在从库上执行;业务低峰期执行,尽量使用支持Online DDL的高版本MySQL。   4、主从实例配置不一致   原因:硬件上:主库实例服务器使用SSD,而从库实例服务器使用普通SAS盘、cpu主频不一致等;配置上:如RAID卡写策略不一致,OS内核参数设置不一致,MySQL落盘策略(innodb_flush

Linux中mysql5.7主从配置

戏子无情 提交于 2019-11-28 03:51:26
MySQL主从配置(两台Linux之间) 简介 Linux下MySQL数据库的主从同步用来实现读写分离。主数据库进行数据的插入,删除与更新;从数据库专门用来查询操作,缓解数据库的压力。让运行海量数据的时候无论是从速度还是效率上都大大提高,Mysql的主从复制至少是需要两个Mysql的服务,当然Mysql的服务是可以分布在不同的服务器上,也可以在一台服务器上启动多个服务。 主从同步原理 一个异步复制过程,从master复制到slave,由三个线程来完成,其中sql线程和IO线程在slave端,另一个IO线程在master端,要实现MySQL的replication首先需要打开master端的二进制log功能 (1) master 将操作记录到二进制日志(binary log)中; (2)master有一个I/O线程将二进制日志发送到slave; (3) slave IO 线程 将master的binary log events读写到它的中继日志(relay log); (4) slave SQL进程读取中继日志,将重做记录数据到数据库中。 结构图 环境准备 Linux版本:CentOS Linux release 7.6.1810 (Core) MySQL安装包:mysql-5.7.27-1.el7.x86_64.rpm-bundle.tar 主数据库:106.53.73.200

源码安装MySQL

烈酒焚心 提交于 2019-11-28 03:46:26
目录 一、安装单实例 1、升级openssl 2、替换软件源 3、root 用户ssh远程登录 4、mysql需要安装的包 5、navicate 连接虚拟机mysql 6、安装mysql utilities 二、安装双实例 1、目录结构 2、脚本语句 3、修改环境变量 4、编译 5、初始化 6、启动 7、进入 8、配置数据库密码安全性 三、安装5.6 升级OpenSSL 1、复制脚本并修改端口号3308 2、创建目录 3、修改配置文件my3308.cnf 4、编译 5、初始化 6、启动 四、尝试 1、密码修改 2、validate_password 3、mysqld_multi 4、查看my.cnf配置文件查找顺序 一、安装单实例 1、升级openssl #查看版本 openssl version #openssl 安装包 openssl-1.1.0j.tar.gz #下载地址https://www.openssl.org/source/ cd /usr/local/openssl-1.1.1 ./config make make install #受影响的文件夹 #/usr/local/bin #/usr/local/include #/usr/local/lib #先查找 当前openssl的生效目录 which openssl #设置软连接 路径:/usr/bin

【3】mysql复制的日常管理维护,mysql复制常见问题处理

会有一股神秘感。 提交于 2019-11-28 03:24:53
【1】复制的日常管理 #复制的日常管理与维护   (1.1)show slave status\G :在从库查看从库线程状态   (1.2)flush tables with read lock;  :主从不一致后锁表。     然后 show master status\G     然后 show slave status\G 来查看从库同步状态 或者重新 change master to....     然后 select master_pos_wait('mysql-bin.00002','389'); (即刚刚show master status找到的文件及位置),如果为1 标识超时退出 ,如果为1 则标识主从同步。     最后再主库 unlock tables; 解锁   (1.3)跳过错误 跳过错误有两种方式: 1.跳过指定数量的事务:(建议如果已经出现了错误,使用这种办法) mysql>slave stop; mysql>SET GLOBAL SQL_SLAVE_SKIP_COUNTER = 1 #跳过一个事务 mysql>slave start 2.修改mysql的配置文件,通过slave_skip_errors参数来跳所有错误或指定类型的错误(建议配置时使用这种办法) vi /etc/my.cnf [mysqld] #slave-skip-errors=1062

mysql01

眉间皱痕 提交于 2019-11-28 03:14:05
mysql的安装与配置 安装centos6.9 网卡设置 1 cd /etc/sysconfig/network-scripts 2 vim ifcfg-eth0 3 onboot yes 4 DNS1=8.8.8.8 service network restart mysql的安装 1.http://dev.mysql.com/downloads/repo/yum/2.yum localinstall mysql57-community-release-el6-11.noarch.rpm 3.yum -y install mysql-community-server 重启mysql服务 service mysqld start 第一次登陆从log日志中取得随机密码 1 more /var/log/mysqld.log 修改密码的复杂度 1 修改密码的复杂度 2 set global validate_password_policy=0; 3 修改密码的长度 4 set global validate_password_length=1; 5 6 alter user 'root'@'localhost' identified by 'root'; 其他操作 1 创建用户 2 create user 'test'@'%' identified by 'test'; 3 4

MYSQL的主从复制

。_饼干妹妹 提交于 2019-11-28 01:33:30
一、复制的基本原理 slave会从master读取binlog进行数据同步。 1、master将改变记录到二进制日志(binlog),这些记录过程叫做二进制日志事件(binary log events) 2、slave将master的binary log events)拷贝到它的中继日志。 3、slave重做中继日志中的事件,将改变应用到自己的数据库中,MySQL复制是异步且串行化。 二、复制的基本原则: 每个slave只有一个master 每个slave只能有一个唯一的服务器ID 每个master可以有多个slave 三、复制的最大问题:延时 四、一主一从常见配置 要求:主机、从机在同一网段,且数据库版本相同 1、主机配置: [mysqld] server-id = 1 log-bin= mysql-bin 建立账户并授权slave: CREATE USER 'replication'@'192.168.1.103' IDENTIFIED BY '123456'; GRANT REPLICATION SLAVE ON *.* TO 'replication'@'192.168.1.103';    2、从机配置:  [mysqld] server-id = 2   3、重启数据库,主从机关闭防火墙。 4、主从机通信配置 查看master的状态

mysql主从

我与影子孤独终老i 提交于 2019-11-28 01:15:29
mysql主从 1. 主从简介 1.1主从作用 实时灾备,用于故障切换 读写分离,提供查询服务 备份,避免影响业务 1.2主从形式 一主一从 主主复制—设置互斥 一主多从—扩展系统读取性能,因为读是从库读取的 多主一从—5.7开始支持 联级复制 如下图所示: 2. 主从复制原理 主从复制步骤: 主库将所有的写操作记录到binlog日志中并生成一个log dump线程,将binlog日志传给从库的I/O线程 从库生成两个线程,一个I/O线程,一个SQL线程 I/O线程去请求主库的binlog,并将得到的binlog日志写到relay log(中继日志)文件中 SQL线程,会读取relay log文件中的日志,并解析成具体操作,来实现主从的操作一致,达到最终数据一致的目的 3. 主从复制配置 主从复制配置步骤: 确保从数据库和主数据库的数据一样 在主数据库里创建一个同步账号授权给数据库使用 配置主数据库(修改配置文件) 配置从数据库(修改配置文件) 需求: 搭建两台MySQL服务器,一台作为主服务器,一台作为从服务器,主服务器进行写操作,从服务器进行读操作 环境说明: 数据库角色 IP 应用与系统版本 有无数据 主数据库 192.168.176.111 centos7/redhat7 mysql-5.7 有数据 从数据库 192.168.176.112 centos7/redhat7

数据库中间件MyCat

我的梦境 提交于 2019-11-28 00:54:03
什么是MyCat? 查看官网的介绍是这样说的 一个彻底开源的,面向企业应用开发的大数据库集群 支持事务、ACID、可以替代MySQL的加强版数据库 一个可以视为MySQL集群的企业级数据库,用来替代昂贵的Oracle集群 一个融合内存缓存技术、NoSQL技术、HDFS大数据的新型SQL Server 结合传统数据库和新型分布式数据仓库的新一代企业级数据库产品 一个新颖的数据库中间件产品 主要特性 : 支持SQL92标准 支持MySQL、Oracle、DB2、SQL Server、PostgreSQL等DB的常见SQL语法 遵守Mysql原生协议,跨语言,跨平台,跨数据库的通用中间件代理。 基于心跳的自动故障切换,支持读写分离,支持MySQL主从,以及galera cluster集群。 支持Galera for MySQL集群,Percona Cluster或者MariaDB cluster 基于Nio实现,有效管理线程,解决高并发问题。 支持数据的多片自动路由与聚合,支持sum,count,max等常用的聚合函数,支持跨库分页。 支持单库内部任意join,支持跨库2表join,甚至基于caltlet的多表join。 支持通过全局表,ER关系的分片策略,实现了高效的多表join查询。 支持多租户方案。 支持分布式事务(弱xa)。 支持XA分布式事务(1.6.5)。 支持全局序列号