查询是否锁表show OPEN TABLES where In_use > 0; 查看所有进程show processlist; 杀掉指定mysql连接的进程号kill $pid 查看正在锁的事务SELECT * FROM INFORMATION_SCHEMA.INNODB_LOCKS; 查看…
Redis keys 命令DEL key 该命令用于在 key 存在时删除 key。 DUMP key 序列化给定 key ,并返回被序列化的值。 EXISTS key 检查给定 key 是否存在。 EXPIRE key seconds 为给定 key 设置过期时间,以秒计。 EXPIREAT ke…
缓存穿透 redis当中没有数据,数据库当中也没有数据,请求每次都是访问数据库,而数据库有没有数据返回。 缓存穿透解决方案 有很多种方法可以有效地解决缓存穿透问题。 最常见的则是采用布隆过滤器,它是一种数据结构,将所有可能存在的数据哈希到一个足够大的bitmap中,一个一定不存在的数据会被 这个bi…
Redis 数据类型 Redis支持五种数据类型:string(字符串),hash(哈希),list(列表),set(集合)及zset(sorted set:有序集合)。 String(字符串) string 是 redis 最基本的类型,你可以理解成与 Memcached 一模一样的类型,一个 k…
MySQL锁概述 相对其他数据库而言,MySQL的锁机制比较简单,其最 显著的特点是不同的存储引擎支持不同的锁机制。比如,MyISAM和MEMORY存储引擎采用的是表级锁(table-level locking);BDB存储引擎采用的是页面锁(page-level locking),但也支持表级锁;…
sql中的连接查询有inner join(内连接)、left join(左连接)、right join(右连接)、full join(全连接)四种方式,它们之间其实并没有太大区别,仅仅是查询出来的结果有所不同。 1.inner join(内连接),在两张表进行连接查询时,只保留两张表中完全匹配的结果…
对面坐着仁爱的面试官冷酷的问:小伙砸表字段,Sql语句有啥子需要注意哒创建表时表字段设计创建表时表字段设计 表字段避免 null 值出现,null 值很难查询优化且占用额外的索引空间,推荐默认数字 0 代替 null。尽量使用 INT 而非 BIGINT,如果非负则加上 UNSIGNED(这样数值容…
对面坐着仁爱的面试官笑眯眯的问:小伙子索引是啥子 索引是什么帮助 MySQL 高效获取数据的数据结构,也可以称为快速查找排序的一种数据结构。Mysql 索引主要有两种结构:B+Tree 索引和 Hash 索引。我们平常所说的索引,如果没有特别指明,一般都是指 B 树结构组织的索引 (B+Tree 索…
分区工作原理 对用户而言,分区表是一个独立的逻辑表,但是底层 MYSQL 将其分成了多个物理子表,这对用户来说是透明的,每一个分区表都会使用一个独立的表文件。创建表时使用 partition by 子句定义每个分区存放的数据,执行查询时,优化器会根据分区定义过滤那些没有我们需要数据的分区,这样查询只…
对面坐着仁爱的面试官问:MyISAM 和 InnoDB 是两种引擎比较流行的储存引擎,你说说他们的区别吧? 核心区别 MyISAM 是非事务安全型的,而 InnoDB 是事务安全型的。MyISAM 锁的粒度是表级,而 InnoDB 支持行级锁定。MyISAM 支持全文类型索引,而 InnoDB 不支…