51学工坊整理|MySQL 8.0 技术详解
MySQL8.0 简介MySQL 5.7 到 8.0,Oracle 官方跳跃了 Major Version 版本号,随之而来的就是在 MySQL 8.0 上做了许多重大更新,在往企业级数据库的路上大步前行,全新 Data Dictionary 设计,支持 Atomic DDL,全新的版本升级策略,安全和账号管理加强,InnoDB 功能增强等,目前小版本已经 release 到
mysql慢查询
1 概念MySQL的慢查询,全名是慢查询日志,是MySQL提供的一种日志记录,用来记录在MySQL中响应时间超过阀值的语句。具体环境中,运行时间超过long_query_time值的SQL语句,则会被记录到慢查询日志中。long_query_time的默认值为10,意思是记录运行10秒以上的语句。默认情况下,MySQL数据库并不启动慢查询日志,需要手动来设置这个参数。当然,如果不是调优需要的话,一
使用MySQL8.0 clone技术在线搭建主从复制
'donor_user'使用MySQL8.0 clone技术在线搭建主从复制MySQL从8.0.17开始新增了克隆clone技术,可以在线进行MySQL的本地克隆或远程克隆,从此搭建从库可以不再需要备份工具来实现了,下面将通过clone来实现一个远程从库的搭建:环境如下Mater: 192.168.3.133 port:3307 doner 捐赠者Slave: 192.168.3.
MySQL 8 新特性之Clone Plugin
Clone Plugin是MySQL 8.0.17引入的一个重大特性,为什么要实现这个特性呢?个人感觉,主要还是为Group Replication服务。在Group Replication中,添加一个新的节点,差异数据的补齐是通过分布式恢复(Distributed Recovery)来实现的。在MySQL 8.0.17之前,只支持一种恢复方式-Binlog。但如果新节点需要的Binlog已经被P
如何修改MySQL数据库名称
比如数据库名称old_db想改名为new_dbMySQL修改数据库名称比较麻烦,不支持直接修改,需要通过其它方式间接达到修改数据库名称的目的。在 MySQL 5.1.23 之前的旧版本中,我们可以使用 RENAME DATABASE 来重命名数据库,但此后版本,因为安全考虑,删掉了这一条命令。方法一:先导出数据,再导入数据当数据库体积比较小时,最快的方法是使用mysqldump
MySQL主从复制架构转换MGR架构
环境信息IPportroleinfo192.168.188.813316node1master192.168.188.823316node2slave1192.168.188.833316node3slave2CentOS Linux release 7.6.1810 (Core)MySQL Ver 8.0.19 for linux-glibc2.12 on x86_64 (MySQL Commu
Redis常见延迟问题排查手册!附33条优化建议
Redis作为内存数据库,拥有非常高的性能,单个实例的QPS能够达到10W左右。但我们在使用Redis时,经常时不时会出现访问延迟很大的情况,如果你不知道Redis的内部实现原理,在排查问题时就会一头雾水。很多时候,Redis出现访问延迟变大,都与我们的使用不当或运维不合理导致的。Redis变慢了?常见延迟问题定位与分析下面我们就来分析一下Redis在使用过程中,经常会遇到的延迟问题以及如何定位和
MySQL UNDO表空间独立和截断
1. MySQL 5.5时代的undo log 在MySQL5.5以及之前,大家会发现随着数据库上线时间越来越长,ibdata1文件(即InnoDB的共享表空间,或者系统表空间)会越来越大,这会造成2个比较明显的问题:(1)磁盘剩余空间越来越小,到后期往往要加磁盘;(2)物理备份时间越来越长,备份文件也越来越大。这是怎么回事呢?原因除了数据
配置pt-heartbeat监控主从复制延迟
主库创建监控用户:mysql> grant select,process,super,replication slave on *.* to 'pt_checksum'@'%' identified by 'mysql'; Query 
MySQL:互联网公司常用分库分表方案汇总!(转载)
一、数据库瓶颈不管是IO瓶颈,还是CPU瓶颈,最终都会导致数据库的活跃连接数增加,进而逼近甚至达到数据库可承载活跃连接数的阈值。在业务Service来看就是,可用数据库连接少甚至无连接可用。接下来就可以想象了吧(并发量、吞吐量、崩溃)。1、IO瓶颈第一种:磁盘读IO瓶颈,热点数据太多,数据库缓存放不下,每次查询时会产生大量的IO,降低查询速度 -> 分库和垂直分表。第二种:网络IO瓶颈,请求
MySQL 8.0.20 安装新特性以及一些废弃参数
8.0 New Feature(1)授权表现在均为InnoDB不会再发生一部分成功,一部分失败的情况,要么全成功,要么全部回滚。 Incompatible Change: The grant tables in the mysql system database are now InnoDB (transactional) tables.Previously, these were My
宜信的105条数据库军规
一、Oracle规则(对象)1.1 表、分区【规则1】规则说明:超过指定规模且没有分区的表。规则阈值:2GB(物理大小超过指定阀值)。规则描述:表的规模过大,将影响表的访问效率、增加维护成本等。常见的解决方案就是使用分区表,将大表转换为分区表。【规则2】规则说明:单表或单分区记录数量过大。规则阈值:1000000(单表或单分区记录数超过指定阀值)。规则描述:控制单个表或单个分区的数据规模,提高单一
MySQL 5.7和8.0 MHA架构下sysbench压测
转转连接 http://blog.itpub.net/22996654/viewspace-2655331/ sysbench压测环境:sysbench server:172.16.7.105压测数据库服务器:MHA架构,172.16.7.100(主节点)、172.16.7.101、172.16.7.102MySQL在172.16.7.105(安装MySQL5.7.26)部署
Percona-Toolkit 之 pt-archiver 删除历史数据
转转连接 http://blog.itpub.net/28939273/viewspace-2655334/ pt-archiver是Percona-Toolkit工具集中的一个组件,是一个主要用于对MySQL表数据进行归档和清除工具。它可以将数据归档到另一张表或者是一个文件中。pt-archiver在清除表数据的过程中并不会影响OLTP事务的查询性能。对于数据的归档,它可以归档到另一台
mysqldump (全量+增量)
在日常运维工作中,对mysql数据库的备份是万分重要的,以防在数据库表丢失或损坏情况出现,可以及时恢复数据。线上数据库备份场景:每周日执行一次全量备份,然后每天下午1点执行MySQLdump增量备份.下面对这种备份方案详细说明下:1.MySQLdump增量备份配置执行增量备份的前提条件是MySQL打开binlog日志功能,在my.cnf中加入log-bin=/opt/Data/MySQL-bin“
innobackupex备份mysql大数据(全量+增量)操作记录
在日常的linux运维工作中,大数据量备份与还原,始终是个难点。关于mysql的备份和恢复,比较传统的是用mysqldump工具,今天这里推荐另一个备份工具innobackupex。innobackupex和mysqldump都可以对mysql进行热备份的,mysqldump对mysql的innodb的备份可以使用single-transaction参数来开启一个事务,利用innodb的mvcc来
MHA实现MySQL高可用集群架构
转转连接https://www.cnblogs.com/tanxiaojun/p/10424699.htmlMHA简介MHA(Master HighAvailability)目前在MySQL高可用方面是一个相对成熟的解决方案,它由日本DeNA公司youshimaton(现就职于Facebook公司)开发,是一套优秀的作为MySQL高可用性环境下故障切换和主从提升的高可用软件。在MySQL故障切换过
MySQL Router实现MySQL的读写分离
MySQL Router实现MySQL的读写分离https://www.cnblogs.com/f-ck-need-u/p/9276639.htmlhttps://www.cnblogs.com/f-ck-need-u/p/9276639.html1.简介MySQL Router是MySQL官方提供的一个轻量级MySQL中间件,用于取代以前老版本的SQL proxy。既然MySQL Router是
Oracle 12c 使用RMAN搭建物理备库(RAC to RAC)
一.实例环境说明主库环境说明操作系统:Oracle Linux 7.1数据库版本:12.2.0.1IP:10.10.10.190/10.10.10.191主机名:cs1/cs2数据库名:csDb_unique_name:cs实例名(SID)cs1/cs2备库环境说明操作系统:Oracle Linux 7.1数据库版本:12.2.0.1IP:10.10.10.171/172主机名:jytest1/j
从很多二进制日志中恢复一张表的数据
手贱!!!把一张表drop掉了,没办法恢复吧,见之前的备份恢复过来,有二进制日志中恢复,业务量大,日志多就写了个小脚本,留着以后用,没准还会用到的。。。。。。#!/bin/bash#log=`find /data/mysql/mysql_3306/logs/ -name 'mysql-bin.*' -newermt '2016-09-13 12:16:00' ! -