13 wzy0623

尚未进行身份认证

20多年的数据库、数据仓库、大数据相关工作。《Hadoop构建数据仓库实践》、《HAWQ数据仓库与数据挖掘实战》、《SQL机器学习库——MADlib技术解析》作者。

等级
TA的排名 859

批量取redis key/value和批量删除key

需求:取出所有前缀为g.at.ga.的string类型的key及其value实现:1. 取出keyredis-cli -p 26379 -a 123456 -n 0 keys g.at.ga.* > a.txt2. 拼出取value的命令sed 's/^/get &/g' a.txt > b.txt3. 取valuecat b.txt | redis-cli -p...

2020-01-23 07:38:55

为什么 redis 单线程却能支撑高并发

redis 和 memcached 有什么区别?redis 的线程模型是什么?为什么 redis 单线程却能支撑高并发?这个是问 redis 的时候,最基本的问题吧,redis 最基本的一个内部原理和特点,就是 redis 实际上是个单线程工作模型,你要是这个都不知道,那后面玩儿 redis 的时候,出了问题岂不是什么都不知道?还有可能面试官会问问你 redis 和 memcache...

2020-01-16 09:18:50

MySQL高可用之DRBD

目录一、DRBD简介1. 工作原理2. DRBD 支持的底层设备3. DRBD资源4. DRBD 配置工具5. DRBD与RAID1区别6. DRBD与共享存储二、DRBD安装配置1. 实验环境2. 配置前准备3. 下载安装DRBD4. 配置DRBD四、测试MySQL数据同步五、heartbeat+DRBD+mysql高可用方案1....

2019-11-14 16:58:57

一键式完全删除CDH 6.3.1

CDH集群的安装部署虽然步骤比较多,但只要严格按照文档操作,一般不会有太大问题。然而,如果安装过程中出错,或因为其它原因需要重新安装CDH,在不重装操作系统的前提下,是比较困难的。难点在于需要删除的东西太多,不删干净了非常容易造成安装失败。网上找的所谓“CDH完全卸载”其实都不够完全。经过一天的反复尝试,终于写了一个一键式删除CDH脚本,在我自己的测试环境下是可行的。删除脚本文件r...

2019-11-07 05:51:57

Galera Cluster for MySQL 详解(四)——性能测试

目录一、测试目标二、测试规划三、测试过程1. 缺省配置2. 多线程3. 流控四、测试结论参考: 本篇使用tpcc-mysql压测工具对实验环境的三节点Galera集群进行一系列性能测试。一、测试目标验证Galera的同步复制,检查是否存在复制延迟。 对比Galera与MySQL组复制的每秒事务数(TPS)。 验证多线程复制对Galera...

2019-10-31 16:22:47

Galera Cluster for MySQL 详解(三)——管理监控

目录一、管理1. 在线DDL(1)TOI(2)RSU(3)pt-online-schema-change2. 恢复主组件(1)了解主组件状态(2)修改保存的主组件状态3. 重置仲裁(1)查找最高级的节点(2)重置仲裁(3)自动引导(4)手动引导4. 管理流控(1)监控流控(2)配置流控5. 自动逐出(1)配置自动逐出(2)...

2019-10-30 15:01:14

Galera Cluster for MySQL 详解(二)——安装配置

目录一、Galera集群实验环境二、初始安装1. 安装galera-3、mysql-wsrep-5.7、Percona-XtraBackup-2.4.152. 修改配置文件3. 初始化集群4. 启动集群其它节点的mysqld服务5. 验证安装6. 问题排查三、使用SST增加节点四、使用IST增加节点1. 设置gcache.size2. IST测试...

2019-10-17 15:00:48

Galera Cluster for MySQL 详解(一)——基本原理

目录一、同步复制二、Galera复制架构1. wsrep api2. 全局事务ID(global transaction id,GTID)3. Galera复制插件4. 组通信插件三、Galera复制工作原理四、状态转移1. 状态快照传输2. 增量状态转移3. 写集缓存(gcache)五、流控1. 流控原理2. 理解节点状态3. 节点状态...

2019-10-12 15:59:47

快速安全删除MySQL大表

目录一、表删除过程1. buffer pool清除2. 删除表相关的磁盘文件二、创建硬链接三、删除表四、删除文件释放空间参考: 在一个高负载的生产数据库上删除大表需要一些技巧,倘若直接drop table,将产生大量磁盘I/O,严重的会卡库,这是高可用服务所不能接受的。要优化删除表,需要了解其内部执行过程。一、表删除过程 表删除原...

2019-10-07 18:18:50

InnoDB Cluster详解

目录一、InnoDB Cluster简介1. 整体架构2. MySQL Shell3. MySQL Router4. MySQL服务器集群二、创建InnoDB Cluster1. 检查实例配置2. 配置实例3. 创建集群4. 向集群添加实例5. 查看集群状态6. 基于已有组复制的集群创建7. 配置MySQL Router8. 客户端连接测试...

2019-09-12 18:03:08

MySQL Router 8 详解

目录一、功能介绍1.透明路由2.元数据缓存3.简单重定向4.MySQLRouter8.0的新特性二、安装与启动1.安装2.启动三、配置1.配置文件位置2.配置文件语法3.配置文件示例MySQLRouter最早是作为MySQL-Proxy的替代方案出现的。作为一个轻量级中间件,MySQLRouter可在应用...

2019-09-03 15:35:32

重叠时间段问题优化算法详解

目录一、问题提出1. 描述2. 分析二、优化重叠查询1. 自关联2. 游标+内存临时表三、改进取得活跃时段的算法1. 最小范围算法(表连接)2. 正负计数器算法(一次扫描)四、MySQL 8的单条查询解决方案一、问题提出1. 描述 这是一个实际业务需求中的问题。某一直播业务表中记录了如下格式的用户进出直播间日志数据:+----...

2019-08-26 09:59:42

将MySQL去重操作优化到极致

目录一、巧用索引与变量1. 无索引对比测试(1)使用相关子查询(2)使用表连接(3)使用变量2. 建立created_time和item_name上的联合索引对比测试(1)使用相关子查询(2)使用表连接(3)使用变量(4)使用变量,并且消除嵌套查询二、利用窗口函数三、多线程并行执行1. 数据分片(1)查询出4份数据的created_time边...

2019-07-31 15:04:11

快速生成数字辅助表

数字辅助表只有一个整数列,包含从1到N个整数序列值,N通常很大。对MySQL来讲,数字辅助表是一个强大的工具,编写SQL语句时经常用数据表与数字辅助表做笛卡尔积来创建额外的行。建议创建一个持久的数据辅助表,并根据需要填充一定数据量的值。 实际上如何填充数字辅助表无关紧要,因为只需要运行这个过程一次,不过还是可以对此过程进行优化。假设需要为如下数字辅助表生成数据:...

2019-07-31 10:08:53

MySQL 8 复制(十)——组复制性能与限制

目录一、组复制性能1. 概述2. 测试规划3. 消息压缩4. 组通信线程循环5. 写入集6. 流控7. 其它配置8. 主从、半同步、组复制性能对比测试二、组复制要求与限制1. 组复制要求2. 组复制限制一、组复制性能1. 概述 组复制的基本保证是,只有在组中的大多数节点接收到事务并且就并发事务的相对顺序达成一致之后,才会提交...

2019-07-30 15:08:53

MySQL 8 复制(九)——组复制联机配置

目录一、配置组复制模式1. 单主模式2. 多主模式3. 联机配置组复制模式4. 配置并发写实例数5. 设置组的通信协议版本二、保证数据一致性1. 组复制数据一致性简介2. 防止主库故障转移造成的过时读取3. 选择适当的一致性级别4. 一致性级别范围5. 一致性级别的影响三、其它配置1. 调整恢复2. 网络分区一、配置组复制模式 ...

2019-07-19 18:06:28

MySQL 8 复制(八)——组复制安装部署

目录一、部署单主模式组复制1. 安装MGR插件2. 准备配置文件3. 重启主库实例4. 启动组复制5. 向组中添加实例二、组复制监控三、容错示例1. 一个SECONDARY实例正常shutdown2. 一个SECONDARY实例异常shutdown3. PRIMARY实例正常shutdown4. PRIMARY实例异常shutdown ...

2019-07-12 16:16:31

MySQL 8 复制(七)——组复制基本原理

目录一、MySQL复制技术1. 主从复制 2. 组复制二、组复制使用场景三、组复制相关服务1. 故障检测2. 组成员服务3. 容错四、组复制技术细节1. 组复制插件体系结构2. 复制组3. 数据操作语言(Data Manipulation Language,DML)4. 数据定义语句(Data Definition Language,...

2019-07-09 16:41:35

MySQL 8 复制(六)——拓扑与性能

目录一、复制拓扑1. 一主一(多)从2. 双(多)主复制4. 多源复制5. Blackhole引擎与日志服务器二、复制性能1. 测试规划2. sync_binlog与innodb_flush_log_at_trx_commit3. 组提交与多线程复制4. 基于WriteSet的多线程复制 可以在任意个主从库之间建立复杂的复制拓扑结构,如普通...

2019-07-04 16:39:59

MySQL 8 复制(五)——配置GTID复制

目录一、配置GTID复制1. 联机配置GTID复制2. 联机更改复制模式3. GTID相关系统变量二、GTID运维1. 跳过一个事务2. mysqldump导出3. 主从切换三、GTID限制四、GTID集合运算函数1. GTID内置函数2. 用户自定义函数3. 使用示例 上篇解释了许多GTID的原理,以及在MySQL复制中所起的作...

2019-06-14 17:10:25

查看更多

CSDN身份
  • 博客专家
勋章 我的勋章
  • 专栏达人
    专栏达人
    授予成功创建个人博客专栏的用户。专栏中添加五篇以上博文即可点亮!撰写博客专栏浓缩技术精华,专栏达人就是你!
  • 持之以恒
    持之以恒
    授予每个自然月内发布4篇或4篇以上原创或翻译IT博文的用户。不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!
  • 勤写标兵Lv1
    勤写标兵Lv1
    授予每个自然周发布1篇到3篇原创IT博文的用户。本勋章将于次周周三上午根据用户上周的博文发布情况由系统自动颁发。
  • 原力计划专属勋章
    原力计划专属勋章
    参与原力计划活动,成功进入英雄榜即可获得