Mysql
接天居士
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
Mysql事务隔离级别的注意事项
数据库的事务隔离级别有4个级别,分别是 READ-UNCOMMITTED, READ-COMMITTED, REPEATABLE-READ, SERIALIZABLEREAD-UNCOMMITTED指一个事务能读到另外一个事务还未提交的更新,READ-COMMITTED是指一个事务能读到另外一个事务以及提交的更新,REPEATABLE-READ是指一个事务中对一条数据的多次读取都是同一个值,既...原创 2018-07-23 22:54:20 · 270 阅读 · 0 评论 -
启用InnoDB标准监控输出
InnoDB监控有两种类型:一种是标准InnoDB监控(standard InnoDBMonitor)和 InnoDB 锁监控(InnoDB Lock Monitor),锁监控会作为标准监控的一部分打印出来。启用InnoDB 监控当InnoDB监控启用后,InnoDB会每隔15秒写入监控日志到mysql 标准错误日志文件中(mysqld server standard error out...翻译 2019-07-05 16:52:20 · 1208 阅读 · 0 评论 -
InnoDB的锁
在InnoDB中主要有以下几类锁:共享锁(shared lock)和排他锁(exclusive lock) 意向锁(intention locks) 行锁(record locks) 间隙锁(gap locks) next-key locks 插入意向锁(insert intention locks) 自增长锁(auto-inc locks) Predicate Locks fo...翻译 2019-06-30 17:35:57 · 249 阅读 · 0 评论 -
InnoDB Buffer Pool
Buffer Pool是主内存中用来缓存被访问的数据和索引的区域,它允许经常被访问的数据直接在内存中执行,来提高执行速度。在专用的服务器上,建议分配80%的物理内存给buffer pool.为了提高高容量读操作,buffer pool被划分成了包含多行数据的页(page),为了缓存管理的效率,buffer pool被实现为一个页的链表;使用LRU算法来淘汰最近很少被使用的数据。了解如何利用...翻译 2019-06-28 22:50:22 · 511 阅读 · 0 评论 -
Innodb整体架构
如下图展示了Innodb内存中和磁盘的结构:内存中结构主要有如下几种:buffer poolchange bufferadaptive hash index (自适应的hash索引)Log buffer磁盘中的结构主要有下面几类:TablesIndexsTablespacesInnodb Data DictionaryDoublewrite bufferRedo log...原创 2019-06-28 17:02:43 · 191 阅读 · 0 评论 -
Mysql备份和恢复
备份和恢复的类型物理备份VS逻辑备份物理备份由存储数据库内容的目录和文件的原始副本组成。这种备份类型适用于当发生问题需要快速恢复的大量的重要的数据库。逻辑备份将信息保存为逻辑数据库结构(通过CREATE DATABASE, CREATE TABLE 语句)和内容(insert 语句或者适用分隔符的文件)。这种备份方式适用于少量的数据,你可以在上面编辑数据值或者表结构,或者在一个异构的服...翻译 2019-07-03 15:41:57 · 261 阅读 · 0 评论 -
InnoDB表的限制
最大值和最小值一个表最多可以有1017列(MySQL5.6.9之前是现在1000)。这个限制包含了虚拟生成的列。 一个表最多可以有64个二级索引(secondary indexes). 如果启用了 innodb_large_prefix(默认启用),使用动态或者压缩的行格式的表,索引键的前缀限定最大长度为3072 bytes。如果未启用 innodb_large_prefix,则所有的行格...翻译 2019-07-01 17:49:46 · 672 阅读 · 0 评论 -
mysql一次Waiting for table metadata lock问题解决
最近在测试环境的mysql执行一个alter table 语句时一直处于阻塞状态,通过 show processlist 查看线程一直处于Waiting for table metadata lock,排查了所有线程没发现有其他线程获取到锁,一直疑惑到底是什么线程持有了锁没释放,在网上查询得知MySQL在进行一些alter table等DDL操作时,如果该表上有未提交的事务则会出现 Wai...原创 2018-03-16 14:21:07 · 298 阅读 · 0 评论 -
MySql支持的数据类型
今天总结一下MySQL中支持的数据类型首先从大体上看,MySQL支持的类型有如下几种,数值类型,日期类型,字符串类型。一 数值类型1 ,BIT[(M)] 比特类型,M代表每个比特位的数量,从1到64,默认值是12,TINYINT 非常小的整数,有符号的取值是 -128到127,无符号的取值是 0-255,占用一个字节3,BOOL, BOOLEAN...原创 2018-09-01 10:50:32 · 390 阅读 · 0 评论 -
Mysql死锁引起的事务未回滚问题
今天之前的同事问我,之前我负责的系统出现了MySQL异常,但是事务却没有回滚,事务前半部分执行的SQL在数据库能看到,日志信息如下org.springframework.dao.DeadlockLoserDataAccessException: ### Error updating database. Cause: com.mysql.jdbc.exceptions.jdbc4.MySQ...原创 2018-08-01 12:53:26 · 2760 阅读 · 0 评论 -
InnoDB Row formats
表的行格式(row format)决定了表中的行是如何物理存储的,修改它会影响到查询或者DML语句的性能。大部分的行会尽量将单行存储在单一的磁盘页中,这样能让查询或者索引查询运行更快,在buffer pool中更小的内存空间消耗和更少的IO请求。表中的所有数据被拆分到多个page中,组成每个表的页数据放在排好序的B树索引中,表数据和二级索引都是采用这样的数据结构。变长字段列(varchar...翻译 2019-07-12 16:11:21 · 598 阅读 · 0 评论
分享