• 欢迎访问DBA的辛酸事儿,推荐使用最新版火狐浏览器和Chrome浏览器访问本网站
  • 欢迎大家关注博主公众号:DBA的辛酸事儿
  • 博文中若有错误的地方,请大家指正,大家的指正是我前进的动力

MySQL中的case when中对于NULL值判断的坑

MySQL中的case when中对于NULL值判断的坑
今天在开发程序中,从MySQL中提取数据的时候,使用到了case when的语法用来做判断,在使用过程中在判断NULL值得时候遇到个小问题;具体的现象测试如下:表结构如下:CREATE TABLE `wjqtab1` ( `id` int(11) NOT NULL AUTO_INCREMENT, `name` varchar(20) DEF……继续阅读 »

SEian.G 2周前 (10-13) 32浏览 0评论2个赞

MySQL死锁案例分析

MySQL死锁案例分析
本文针对上一篇《MySQL优化案例分享》文章中提到的线上业务产生的一个死锁问题进行展开讨论,主要针对两个update操作导致的死锁的场景,借此机会正好总结下MySQL锁及分析下产生死锁的原因和解决方案;首先,针对MySQL中提供的锁种类做一个简单的总结,关于更多MySQL锁相关的内容可参考官方文档;MySQL InnoDB存储引擎提供了如下几种锁:1、……继续阅读 »

SEian.G 2周前 (10-11) 37浏览 0评论2个赞

MySQL优化案例分享

MySQL优化案例分享
临近十一,国庆放假的同时,往往会伴随着国庆期间业务要上相关的活动,那么今天就分享一个今年五一前夕(4月30日)上新活动中遇到的一个性能问题;问题背景五一前夕(4月30日)中午频繁的收到业务慢查询的告警排查过程查看mysql实例监控,发现CPU在不断增长,系统的负载也在不断的增加查看慢查询日志,发现有一个update操作的慢查询,执行时间在50s多……继续阅读 »

SEian.G 4周前 (09-26) 65浏览 0评论2个赞

MySQL 8.0 新特性之Hash Join

MySQL 8.0 新特性之Hash Join
上周在公司做了针对MySQL 8.0新特性相关的分享,提到MySQL 8.0新特性,不得不提到的就是HashJoin,MySQL一直被人诟病没有实现HashJoin,从8.0.18已经带上了这个功能,令人欣喜。有时候在想,MySQL为什么一直不支持HashJoin呢?可能是因为MySQL多用于简单的OLTP场景,并且在互联网应用居多,需求没那么紧急。另一方面……继续阅读 »

SEian.G 2个月前 (08-31) 137浏览 0评论4个赞

MySQL如何打开和关闭表

MySQL如何打开和关闭表
当我们在执行mysqladmin status 命令或连接通过mysql客户端连接到实例后,执行\s的时候,应该看到类似以下的内容:Uptime: 62239177 Threads: 132 Questions: 2739091116 Slow queries: 19983986 Opens: 2732 Flush tables: 1 Open……继续阅读 »

SEian.G 3个月前 (07-26) 139浏览 0评论2个赞

MySQL中Binlog日志应用慢,该怎么办?

MySQL中Binlog日志应用慢,该怎么办?
今天有一个业务需求,需要进行数据恢复操作,需要恢复到2021-07-11 15:21:00,大家应该都了解,这种基于时间点的恢复,首先通过物理备份将mysql全量恢复到异机中,然后再进行增量恢复binlog,从而实现基于时间点的恢复;业务环境数据量大小150G左右,按照之前做的大量的随机恢复测试总时间分析看,150G的数据量恢复大概可以控制在30min内完……继续阅读 »

SEian.G 3个月前 (07-14) 271浏览 0评论3个赞

MySQL:优化 InnoDB 事务管理

MySQL:优化 InnoDB 事务管理
要优化InnoDB事务处理,请在事务功能的性能开销与服务器的工作负载之间找到理想的平衡。例如,如果一个应用程序每秒提交数千次,则可能会遇到性能问题;如果仅每2-3小时提交一次,则可能会遇到不同的性能问题。默认的MySQL设置AUTOCOMMIT=1 可能会对繁忙的数据库服务器造成性能限制。在可行的情况下,通过发出SET AUTOCOMMIT=0或STAR……继续阅读 »

SEian.G 4个月前 (07-12) 202浏览 0评论3个赞

MySQL 5.7&8.0开启sql_safe_updates安全模式的差异

MySQL 5.7&8.0开启sql_safe_updates安全模式的差异
不知道大家是否有过维护的数据库表业务数据被人或者因为程序bug导致全表更新,全表删除的痛苦经历,恢复业务数据的过程真的太痛苦了,尤其与交易和钱相关的数据,必须恢复成和原来一模一样,那能不能在数据库层面架起最后一道安全堡垒,拒绝全表更新,全表删除的非法操作呢,答案是有的,在mysql中sql_safe_updates可以完美解决这个问题;MySQL数据库是可……继续阅读 »

SEian.G 4个月前 (06-28) 165浏览 0评论2个赞

MySQL8.0 JSON函数之搜索JSON值(五)

MySQL8.0 JSON函数之搜索JSON值(五)
前面一篇文章介绍了《MySQL8.0 JSON函数之创建与返回JSON属性(四)》;本节中的函数对JSON值执行搜索或比较操作,以从中提取数据;JSON_CONTAINS(target, candidate[, path])通过返回1或0指示给定的candidate是否包含在目标JSON文档中,或者(如果提供了path 参数)指示是否 在目标内的特定路径……继续阅读 »

SEian.G 5个月前 (06-08) 260浏览 0评论2个赞