04 2019 档案

摘要:在你开发应用的时候,一定会经常碰到需要根据指定的字段排序来显示结果的需求。假设你要查询城市是“杭州”的所有人名字,并且按照姓名排序返回前 1000 个人的姓名、年龄。 查询语句为: 全字段排序 为避免全表扫描,我们需要在 city 字段加上索引。 通常情况下,这个语句执行流程如下所示 : 初始化 s 阅读全文
posted @ 2019-04-26 11:31 郁冬 阅读(5397) 评论(0) 推荐(0) 编辑
摘要:你首先要明确的是,在不同的 MySQL 引擎中,count(*) 有不同的实现方式。 MyISAM 引擎把一个表的总行数存在了磁盘上,因此执行 count(*) 的时候会直接返回这个数,效率很高; 而 InnoDB 引擎就麻烦了,它执行 count(*) 的时候,需要把数据一行一行地从引擎里面读出来 阅读全文
posted @ 2019-04-24 19:02 郁冬 阅读(982) 评论(0) 推荐(0) 编辑
摘要:平时的工作中,不知道你有没有遇到过这样的场景,一条 SQL 语句,正常执行的时候特别快,但是有时也不知道怎么回事,它就会变得特别慢,并且这样的场景很难复现,它不只随机,而且持续时间还很短。 当内存数据页跟磁盘数据页内容不一致的时候,我们称这个内存页为“脏页”。内存数据写入到磁盘后,内存和磁盘上的数据 阅读全文
posted @ 2019-04-24 17:06 郁冬 阅读(2430) 评论(0) 推荐(2) 编辑
摘要:说到这个问题之前,首先我们需要先了解一下change buffer 当需要更新一个数据页时,如果数据页在内存中就直接更新,而如果这个数据页还没有在内存中的话,在不影响数据一致性的前提下,InooDB 会将这些更新操作缓存在 change buffer 中,这样就不需要从磁盘中读入这个数据页了。在下次 阅读全文
posted @ 2019-04-24 10:26 郁冬 阅读(468) 评论(0) 推荐(0) 编辑
摘要:数据库锁设计的初衷是处理并发问题。作为多用户共享的资源,当出现并发访问的时候,数据库需要合理地控制资源的访问规则。而锁就是用来实现这些访问规则的重要数据结构。 根据加锁的范围,MySQL 里面的锁大致可以分成全局锁、表级锁和行锁三类。 全局锁 顾名思义,全局锁就是对整个数据库实例加锁。MySQL 提 阅读全文
posted @ 2019-04-22 18:19 郁冬 阅读(11814) 评论(2) 推荐(2) 编辑
摘要:索引的出现其实就是为了提高数据查询的效率,就像书的目录一样。 索引模型有三种常见、也比较简单的数据结构分别是哈希表、有序数组和搜索树。 哈希表 哈希表是一种以键 - 值(key-value)存储数据的结构,我们只要输入待查找的值即 key,就可以找到其对应的值即 Value。哈希的思路很简单,把值放 阅读全文
posted @ 2019-04-22 16:42 郁冬 阅读(505) 评论(0) 推荐(0) 编辑
摘要:执行修改语句前要先连接数据库,这是连接器的工作。 接下来,分析器会通过词法和语法解析知道这是一条更新语句。优化器决定要使用 ID 这个索引。然后,执行器负责具体执行,找到这一行,然后更新。 Mysql查询语句的运行流程详细说过这个过程,与查询流程不一样的是,更新流程还涉及两个重要的日志模块,它们正是 阅读全文
posted @ 2019-04-19 15:07 郁冬 阅读(836) 评论(0) 推荐(0) 编辑
摘要:我们先看一下MYsql的基本架构示意图: 大体来说,MySQL 可以分为 Server 层和存储引擎层两部分。 Server 层包括连接器、查询缓存、分析器、优化器、执行器等,涵盖 MySQL 的大多数核心服务功能,以及所有的内置函数(如日期、时间、数学和加密函数等),所有跨存储引擎的功能都在这一层 阅读全文
posted @ 2019-04-19 13:48 郁冬 阅读(906) 评论(0) 推荐(0) 编辑
摘要:切片是对数组的引用,对切片的改变会改变原数组的值 slice的扩展:只能向后扩展,不能向前扩展 s[i]不可以超越len(s),向后扩展不能超越底层数组cap(s) [0 1 2 3 4 5 6 7 8 9 10][2 3 4 5][5 6] 阅读全文
posted @ 2019-04-05 17:51 郁冬 阅读(295) 评论(0) 推荐(0) 编辑
摘要:指针的使用: 阅读全文
posted @ 2019-04-05 16:24 郁冬 阅读(326) 评论(0) 推荐(0) 编辑
摘要:1、使用var关键字声明变量,如果没有初始化,则变量默认为零值。 2、根据值自行判定变量类型 3、多变量声明 4、使用var()集中定义变量 5、使用 := 赋值操作符(推荐使用) 注意1:只能初始化变量时使用 注意2:只能在函数内使用 阅读全文
posted @ 2019-04-05 11:15 郁冬 阅读(226) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示