数据库应急杀进程脚本

Oracle: (1)数据库内操作

(2)操作系统中操作(要求登录到数据库主机)

SQL Server:

Continue Reading

pg报错current transaction is aborted

在一个事务中,pg报错了current transaction is aborted:

原因是在一个事务中,pg如果遇到的Error的报错,会忽略后续的命令,后续所有命令都会报错:current transaction is abor […]

Continue Reading

postgresql 检索当前数据库中所有的分区表

pg 10由于没有hash分区,而pg_pathman一直都是支持多种分区的。所以如果某些pg 11以前的系统,可能会混合部署pg原生分区和pg_pathman。 要检查这种混合部署环境中的分区情况,可以用下面的sql:

显示结果如下 […]

Continue Reading

一次MySQL存储空间撑爆的故障处理和分析

在一次对线上系统的压测过程中,数据库突然变成了只读状态。我们看了一下,是因为空间在短时间内,被撑爆了。云上的rds数据库,如果在空间打爆的情况下,确实会变成只读的情况。 我们这个业务,做了中美数据拆分,美国的数据库是在aws上,中国的数据库是在阿里云上,跑同样的一套逻辑。 可以看到,在短时间内: a […]

Continue Reading

阿里云关于MySQL数据库myisam的支持

最近在做一个阿里云跨账号的数据库迁移,这个库是和论坛相关的,用的是Discuz程序,数据库中有一张myisam表,用于记录帖子和楼层。

这里可以看到tid是帖子号,floorid是楼层,这里用了一个myisam的复合索引第二列作为自增 […]

Continue Reading

数据库序列的监控

需要监控数据库的序列,在达到最大值前,进行告警。特别是mysql,往往因为字段的定义和auto incremental的定义不同,导致各自的上限不同。 Oracle:

SQL Server: [crayon-6629fc00ec671 […]

Continue Reading

隐式转换检查

数据库中是隐式转换往往是性能的杀手,下面2个语句分别可以在sql server和oracle查询到目前在内存中的,使用了隐式转换的SQL: sql server 隐式转换:

oracle隐式转换: [crayon-6629fc00ed […]

Continue Reading

aws RDS 版本升级最佳实践的探讨

这篇文章其实在草稿箱中存在了挺长的一段时间,去年10月就已经开始写了,但是由于工作上的其他事情的干扰,一直还没写完。所以你可以看到我画的图中,now其实是指2018年10月(OCT)。趁着过年休假,把这个文章终于写完了。 aws rds被强制升级是个无奈的事情,版本不支持,而被强制升级会影响业务可用 […]

Continue Reading

SQL Server报错The datediff function resulted in an overflow

zabbix的监控有一个报错:

经检查,这个报错,调用的是下面的一个监控:

这个监控脚本,是用来监控发生在temp上的pagelatch_up的争用。监控脚本中,包含了 […]

Continue Reading