查询字段名所在的表,比如报错没有字段时,快速找到表
select table_name from information_schema.columns where table_schema='数据库名' and column_name ='字段名'
mysql版本 select version()
出现ERROR 1213 (40001)
死锁时,SHOW ENGINE INNODB STATUS
,包含死锁原因
show OPEN TABLES where In_use > 0;
show processlist
kill id
查询事务SELECT * FROM INFORMATION_SCHEMA.INNODB_TRX
查询所有数据库,表,字段名,字段注释
select table_schema,table_name, column_name,column_comment from information_schema.columns
给定条件下某个字段有相同的多余1条的SELECT username,count(username) as count FROM table GROUP BY username HAVING count(username) >1
时区导致的时间显示问题,navicat与java程序看到时间不一致,mysql使用系统时区
select now();
与当前时间对比
show variables like '%time_zone%';
SELECT @@global.time_zone, @@session.time_zone;
date +"%Z %z"
linux系统时区
serverTimezone=Asia/Shanghai
jdbcurl加
pt-online-schema-change
在线修改innodb表结构(建新表,修改结构,在原表加触发器将insert等修改也应用到新表,拷贝数据,完成后替换原表)
MySQL中双写(先写事务日志到磁盘,再慢慢刷数据到磁盘)
mha的实现原理,如何实现补齐差异的binlog
Linux中硬链接和软连接的区别
mysql datetime(8字节,使用这个) vs timestamp(4字节,受时区影响)
-
percona-toolkit工具集:
pt-online-schema-change在线修改表结构
pt-query-digest性能分析 -
mysql常见sql错误原因
Every derived table(sub-query) must have its own alias
每个子查询都要别名,方便外面表引用
canal和maxwell 采集mysql,binlog到其他数据比如kafka