今天写写mysql审计的,在这里分享一下!假设这么一个情况,你是某公司mysql DBA,某日突然公司数据库中的所有被人为删了。尽管有数据备份,但是因服务停止而造成的损失上千万,现在公司需要查出那个做删除操作的人。但是拥有数据库操作权限的人很多,如何排查,证据又在哪?是不是觉得无能为力?mysql本身并没有操作审计的功能,那是不是意味着遇到这种情况只能自……继续阅读 » SEian.G 6年前 (2019-03-31) 5141浏览 2评论6个赞
一、问题描述一条SQL,在数据库中是如何执行的呢?相信很多人都会对这个问题比较感兴趣。当然,要完整描述一条SQL在数据库中的生命周期,这是一个非常巨大的问题,涵盖了SQL的词法解析、语法解析、权限检查、查询优化、SQL执行等一系列的步骤,简短的篇幅是绝对无能为力的。因此,本文挑选了其中的部分内容,也是我一直都想写的一个内容,做重点介绍:给定一条SQL,如……继续阅读 » SEian.G 6年前 (2019-03-27) 1977浏览 0评论6个赞
之前分享过一篇文章《MySQL与MariaDB对子查询中order by的处理的差异》中介绍了MYSQL和MariaDB对order by排序的差异;最近遇到这样的一个奇怪的问题——SQL中排序分页的查询结果中出现了重复数据。百思不得其解,检查了代码,没有发现任何问题,但这种现象就是会出现。select * from daimai where 1 and……继续阅读 » SEian.G 6年前 (2019-03-24) 3909浏览 0评论7个赞
问题背景前几天客户反馈,误删除了权限表,导致无法连接到实例中了,但是又没有备份,咨询要怎么去恢复;针对上述的这种情况,下面给出具体的恢复方法;(备份重于一切!备份重于一切!备份重于一切!!!重要的事情说三遍)环境说明:MYSQL 5.7版本端口:3306和3309说明:3309是故障的实例,3306是协助在没有备份的情况下做恢复下面开始故障模……继续阅读 » SEian.G 6年前 (2019-03-19) 2496浏览 0评论6个赞
推荐阅读:MySQL中基于XA实现的分布式事务之前网上看到很多写分布式事务的文章,不过大多都是将分布式事务各种技术方案简单介绍一下。很多朋友看了还是不知道分布式事务到底怎么回事,在项目里到底如何使用。所以这篇文章,就用大白话+手工绘图,并结合一个电商系统的案例实践,来给大家讲清楚到底什么是 TCC 分布式事务。1.0业务场景介绍咱们先来看看业务场景,……继续阅读 » SEian.G 6年前 (2019-03-18) 1538浏览 0评论5个赞
一、分布式事务在说分布式事务(XA)之前,建议可以先看一下分布式事务架构的五大演进,阐述了分布式事务解决了什么问题?InnoDB存储引擎提供了对XA事务的支持,并通过XA事务来支持分布式事务的实现。分布式事务指的是允许多个独立的事务资源参与到一个全局的事务中。事务资源通常是关系型数据库系统,但也可以是其他类型的资源。全局事务要求在其中的所有参与的事务要么……继续阅读 » SEian.G 6年前 (2019-03-17) 2048浏览 0评论8个赞
在日常的工作中经常会遇到客户反馈,针对一个等值查询,为什么查询出来的结果是错误的呢?而此刻我的内存独白是:一定是sql语句写的有问题呗,找我干啥?当然了,这也就是开玩笑,客户是上帝啊,客户虐我千万遍,我待客户如初恋!接下来肯定就是收集相关的信息,比如建表语句,SQL语句,查询结果等;下面针对客户所反馈的情况,我们去动手实验一下;MySQL中隐式转换详细查……继续阅读 » SEian.G 6年前 (2019-03-10) 1807浏览 0评论5个赞
之前的一篇文章中,我们遇到了主从同步的一个问题,错误代码:1236,详细请看开启GTID主从同步出现1236错误问题今天,突然发现测试环境的主从同步关系断开了,报错代码:1677一、问题错误信息Last_SQL_Errno: 1677Last_SQL_Error: Column 0 of table ‘wjq.test_profile&……继续阅读 » SEian.G 6年前 (2019-03-09) 2769浏览 0评论5个赞
在前面的几篇文章中,介绍了MYSQL主从复制相关的内容,包括主从环境搭建,具体文章可参考:使用传统方式搭建MySQL 5.7 异步复制环境基于GTID方式搭建MySQL 5.7 主从复制环境最近遇到mysql开启gtid做复制时,主从同步断开,从库出现1236错误,导致同步无法进行,本文就这问题记录下处理步骤Got fatal error 1236 ……继续阅读 » SEian.G 6年前 (2019-03-07) 3341浏览 0评论5个赞
在日常的工作中,我们通常要分析SQL语句的性能,通过会使用到执行计划,利用执行计划来分析SQL语句的性能,并进行相应的优化;本文将利用profile分析SQL语句的执行过程来辅助的分析SQL语句,做好优化;分析SQL执行带来的开销是优化SQL的重要手段。在MySQL数据库中,可以通过配置profiling参数来启用SQL剖析。该参数可以在全局和sessio……继续阅读 » SEian.G 6年前 (2019-03-06) 1450浏览 0评论4个赞