• 进入"运维那点事"后,希望您第一件事就是阅读“关于”栏目,仔细阅读“关于Ctrl+c问题”,不希望误会!
Redis异构集群之间数据迁移方案

Redis异构集群之间数据迁移方案

一、Redis集群迁移工具 最近在做Redis数据迁移,网上找了两款开源的Redis迁移工具。 第一种:redis-port Codis官方提供的一个工具,redis-port是一个Redis工具,通过解析rdb文件,实现Redis主节点和从节点的数据同步,我具体没有测试过。 简单来说,redis-port就是把自已伪装成slave,欺骗master来达到数……

教你如何利用Redis黑进目标系统?

教你如何利用Redis黑进目标系统?

在互联网科技如此发达的今天,安全问题,越来越引起人们的重视,各种新闻也是层出不穷。但是有很多漏洞公布已久,而今天,未修补的漏洞,更是数之不尽;其实准确来说不能说是漏洞,更是一种DBA运维人员的失职,安全意识差或是认为没有必要。比如最近很火的“MongoDB黑客赎金事件”就是开了默认监听所有IP端口以及没有加认证以及使用root用户启动造成的。 今天要说的关于……

Redis服务端命令介绍

Redis服务端命令介绍

BGREWRITEAOF 执行一个AOF文件重写操作。重写会创建一个当前AOF文件的体积优化版本。即使BGREWRITEAOF执行失败,也不会有任何数据丢失,因为旧的AOF文件在BGREWRITEAOF成功之前不会被修改。 重写操作只会在没有其他持久化工作在后台执行时被触发,也就是说: 如果Redis的子进程正在执行快照的保存工作,那么AOF重写的操作会被预……

MySQL主从复制线程状态转变

MySQL主从复制线程状态转变

一、主库线程状态(State)值 以下列表显示了主从复制中主服务器的Binlog Dump线程的State列中可能看到的最常见状态(SHOW PROCESSLIST)。如果Binlog Dump线程在主服务器上看不到,这意味着复制没有运行,也就是说,目前没有连接任何Slave主机。 Sending binlog event to slave 二进制日志由各种……

MySQL开发规范

MySQL开发规范

一、DBA操作规范 1、涉及业务上的修改/删除数据,在得到业务方、CTO的邮件批准后方可执行,执行前提前做好备份,必要时可逆。 2、所有上线需求必须走工单系统,口头通知视为无效。 3、在对大表做DDL操作时,业务低峰时操作。MySQL 5.6版本之前使用pt-osc工具,5.6版本开始支持online DDL操作。 4、所有线上业务库均必须搭建MHA高可用架……

理解悲观锁与乐观锁

理解悲观锁与乐观锁

在数据库的锁机制中介绍过,数据库管理系统(DBMS)中的并发控制的任务是确保在多个事务同时存取数据库中同一数据时不破坏事务的隔离性和一致性以及数据库的一致性。 乐观并发控制(乐观锁)和悲观并发控制(悲观锁)是并发控制主要采用的技术手段。无论是悲观锁还是乐观锁,都是人们定义出来的概念,可以认为是一种思想。其实不仅仅是数据库系统中有乐观锁和悲观锁的概念,像mem……

使用rdbtools工具分析Redis内存数据

使用rdbtools工具分析Redis内存数据

一、介绍 解析redis的dump.rdb文件,分析内存,以JSON格式导出数据。提供的功能有: 1. 生成内存报告。 2. 转储文件到JSON。 3. 使用标准的diff工具比较两个dump文件。 Rdbtools是以python语言开发的。 GITHUP:https://github.com/sripathikrishnan/redis-rdb-tool……

Redis Cluster技术应用实践(一)

Redis Cluster技术应用实践(一)

一、Redis Cluster介绍 Redis 在 3.0 版正式引入了集群这个特性。 Redis 集群是一个提供在多个 Redis 间节点间共享数据的程序集。 Redis 集群是一个分布式(distributed)、容错(fault-tolerant)的Redis内存K/V服务,集群可以使用的功能是普通单机Redis所能使用的功能的一个子集(subset)……

Redis数据结构学习

Redis数据结构学习

一、概述 Redis有5个基本数据结构,string、list、hash、set和zset。它们是日常开发中使用频率非常高应用最为广泛的数据结构,把这5个数据结构都吃透了,你就掌握了Redis应用知识的一半了。在Redis 5.0版本又新增了一个stream数据类型,另起文章介绍。 掌握数据类型是怎么工作的并不是非常简单,从command reference……

MySQL数据归档的几种操作方法介绍

MySQL数据归档的几种操作方法介绍

使用MySQL的过程,经常会遇到一个问题,比如说某张”log”表,用于保存某种记录,随着时间的不断的累积数据,但是只有最新的一段时间的数据是有用的;这个时候会遇到性能和容量的瓶颈,需要将表中的历史数据进行归档。下面来说说几种常见的数据归档方式。 一、使用分区,再利用分区交换技术能够很好地把指定分区中的数据移动到指定表中,这个需要在项目……

MySQL表分区详解

MySQL表分区详解

一、MySQL分区表介绍 分区是一种表的设计模式,正确的分区可以极大地提升数据库的查询效率,完成更高质量的SQL编程。但是如果错误地使用分区,那么分区可能带来毁灭性的的结果。 分区功能并不是在存储引擎层完成的,因此不只有InnoDB存储引擎支持分区,常见的存储引擎MyISAM、NDB等都支持分区。但是并不是所有的存储引擎都支持,如CSV、FEDORATED、……

从原则、方案、策略及难点阐述分库分表

从原则、方案、策略及难点阐述分库分表

一、分库分表原则 关系型数据库本身比较容易成为系统性能瓶颈,单机存储容量、连接数、处理能力等都很有限,数据库本身的“有状态性”导致了它并不像Web和应用服务器那么容易扩展。在互联网行业海量数据和高并发访问的考验下,聪明的技术人员提出了分库分表技术(有些地方也称为Sharding、分片)。同时,流行的分布式系统中间件(例如MongoDB、ElasticSear……