MySQL
文章平均质量分 92
dullet
这个作者很懒,什么都没留下…
展开
-
【MySQL】查询性能优化
用户自定义变量是一个用来存储内容的临时容器,在连接MySQL的整个过程中都存在可以使用下面的SET和SELECT语句来定义他们正在上传…重新上传取消。原创 2022-08-08 21:45:00 · 1978 阅读 · 0 评论 -
【MySQL】创建高性能的索引
换句话说,底层存储引擎的操作是”从索引的开头开始获取满足条件actor_id原创 2022-08-08 21:15:00 · 657 阅读 · 0 评论 -
【MySQL】Schema与数据类型优化
例如IPv4,人们经常用VARCHAR(15)列来存储IP地址,然而,它们实际上是32位无符号整数,不是字符串,用小数点将地址分成四段的表示方法只是为了让人阅读容易,所以应该用无符号整数存储IP地址。可以存储精确的小数,也可以存储比 BIGINT 还大的整数,支持精确计算。当需要在枚举列表中增加一个新的值时,就要做一次ALTER TABLE操作,在MySQL5.0以及更早的版本中ALTER TABLE是一种阻塞操作,在后续版本中,如果不是在列表的末尾增加值也会一样需要ALTER TABLE。...原创 2022-08-08 21:00:00 · 445 阅读 · 0 评论 -
【MySQL】MySQL架构(二)
创建MyISAM表的时候,如果指定了DELAY_KEY_WRITE选项,在每次修改执行完成时,不会立刻将修改的索引数据写入磁盘,而是会写到内存中的键缓冲区(in-memory key buffer),只有在清理键缓冲区或者关闭表的时候才会将对应的索引块写入到磁盘。因此,若表上的索引较多的话,主键应当尽可能的小。1. InnoDB只查找版本早于当前事务版本的数据行(也就是,行的系统版本号小于或等于事务的系统版本号),这样可以确保事务读取的行,要么是在事务开始前已经存在的,要么是事务自身插入或者修改过的。...原创 2022-08-08 20:30:00 · 799 阅读 · 0 评论 -
【MySQL】MySQL架构(一)
所谓幻读,指的是当某个事务在读取某个范围内的记录时,另外一个事务又在该范围内插入了新的记录,当之前的事务再次读取该范围的记录时,会产生幻行(Phantom Row)。事务A、B并发执行时,当A事务update后,B事务select读取到A尚未提交的数据,此时A事务rollback,则B读到的数据是无效的"脏"数据。,也就是说一个写锁会阻塞其他的写锁和读锁,这是出于安全策略的考虑,只有这样,才能确保在给定的时间里,只有一个用户能执行写入,并防止其他用户读取正在写入的同一资源。前面描述的锁定都是隐式锁定,...原创 2022-08-08 15:59:25 · 616 阅读 · 0 评论