抱歉,您的浏览器无法访问本站
本页面需要浏览器支持(启用)JavaScript
了解详情 >

软件环境 操作系统:Ubuntu16.04-server MySQL版本:5.7.25 故障一只能通过localhost登录MySQL 报错如下 $mysql -h172.16.0.1 -uroot -p123456mysql: [Warning] Using a password on the command line interface can be insecure.ERROR 1...

MySQL是如何进行排序的?假设有一个表t结构如下图所示: id为主键,type上建有索引,那么如果要查类型为1,val最小的1000行,那么SQL语句如下:SELECT type, val, detail FROM t WHERE type = 1 ORDER BY val LIMIT 1000; 全字段排序对上述查询执行explain结果如下: Using filesort表示需要排序,...

什么是脏页?InnoDB在处理更新语句时,先写内存再写redo log,并不会立即将数据页的更新落地到磁盘(WAL机制),这就会产生升内存数据页和磁盘数据页的数据不一致的情况,这种数据不一致的数据页称为脏页,当脏页写入到磁盘(这个操作称为flush)后,数据一致后称为干净页。 什么时候会flush脏页? redo log写满redo log大小是固定的,写完后会循环覆盖写入。当有新的内容要写...

索引的底层实现InnoDB存储引擎数据结构使用B+树 B+树B+数据的基本结构如下图 为什么选用B+树MySQL为什么要选B+树作为存储结构呢,与B树相比有哪些优点? 1. 减少磁盘访问,提高查询效率B+树非叶子节点上是不存数据的,仅存键值,而B树节点中不仅存储键值,也会存储数据。因为数据页的大小是固定的(InnoDB中页的默认大小是16KB),如果不存储数据,那么就会存储更多的键值,相应的...

SQL语句执行的经过从用户发起请求,到服务接口调用MySQL驱动,MySQL服务器执行完SQL语句返回结果中间发生了什么?首先放一张图来看整个过程使用到的各个组件,然后再对各个过程进行分析。 1. 连接过程以Openresty服务器为例,Openresty是多进程+I/O多路复用结构(Nginx的I/O模型),可以支撑高的并发,一个Worker就是一个进程,一个进程可以...

MySQL索引 B+Tree 平衡树,查找树,所有叶子节点位于同一层 进行查找时首先再根节点进行二分查找,找到一个key所在的指针,然后递归的在指针所指向的节点进行查找,直到查到叶子节点,然后在叶子节点二分查找,找出key所对应的data 插入删除操作会破坏数的平衡性,需要进行分裂、合并、旋转等操作来维护平衡性 与红黑树相比 B+树的高度更低 更适合磁盘访问,节点大小设置和磁盘页大...

事务 ACID 原子性 隔离性 一致性 持久性 应对系统崩溃,可以用Redo Log恢复 AUTOCOMMIT:MySQL默认采用自动提交,不显示start transaction,每个查询都会被当成一个事务执行并自动提交 并发一致性问题 丢失修改 脏读 不可重复读 幻读 insert操作引起 锁 锁粒度 行锁 表锁 锁类型 读写锁 互斥锁(X锁...