随笔分类 -  数据存储

摘要:聚簇索引 数据和索引存储到一起,找到索引就获取到了数据。聚簇索引是唯一的,InnoDB一定会有一个聚簇索引来保存数据。非聚簇索引一定存储有聚簇索引的列值; InnoDB聚簇索引选择顺序: 1. 默认选择主键 2. 没有主机,选择唯一的非空索引; 3. 都没有,则隐式定义一个主键; 非聚簇索引 数据存 阅读全文
posted @ 2019-11-21 18:32 那钢绕指柔 阅读(2955) 评论(0) 推荐(1)
摘要:PRIMARY KEY(主键索引) 它是一种特殊的唯一索引,不允许有空值; UNIQUE(唯一索引) 索引列的值必须唯一,但允许有空值; INDEX(普通索引) FULLTEXT(全文索引) 仅可用于 MyISAM 表,针对较大的数据,生成全文索引很耗时好空间; 组合索引 为了更多的提高mysql效 阅读全文
posted @ 2019-11-21 17:06 那钢绕指柔 阅读(196) 评论(0) 推荐(0)
摘要:排它锁(Exclusive Locks,即X锁) 1、对于UPDATE、DELETE和INSERT语句,InnoDB会自动给涉及数据集加排他锁(X);对于普通SELECT语句,InnoDB不会加任何锁 2、如果一个事务对某一行数据加了X锁,另一个事务既不能对相应的行加S锁也不能加X锁。 共享锁(Sh 阅读全文
posted @ 2019-11-21 17:03 那钢绕指柔 阅读(265) 评论(0) 推荐(0)
摘要:1、FULLTEXT(全文索引):目前只有MyISAM引擎支持,由于FULLTEXT对中文支持不是很好,在没有插件的情况下,最好不要使用。目前可以用Lucene和ES等搜索引擎代替; 2、HASH:目前用得更多的是Redis这些内存缓存; Hash索引的限制: 只支持等值比较,不支持范围查询; 不支 阅读全文
posted @ 2019-11-21 17:00 那钢绕指柔 阅读(596) 评论(0) 推荐(0)
摘要:行锁 1、支持的存储引擎:Innodb; 2、InnoDB行锁是通过给索引上的索引项加锁来实现的,意味着:只有通过索引条件检索数据,InnoDB才使用行级锁,否则,InnoDB将使用表锁! 3、适用场景:有大量按索引条件并发更新少量不同数据,同时又有并发查询的应用 4、特点:开销大,加锁慢;会出现死 阅读全文
posted @ 2019-11-21 16:56 那钢绕指柔 阅读(9141) 评论(0) 推荐(0)
摘要:Innodb 特性 支持事务处理、支持外键、支持崩溃修复能力和并发控制 从3.23.34开始支持,后面的版本默认存储引擎 数据文件 1. 共享表空间文件:由参数innodb_data_home_dir和innodb_data_file_path定义,用于存放数据词典和日志等。 2. frm:存储数据 阅读全文
posted @ 2019-11-21 16:55 那钢绕指柔 阅读(166) 评论(0) 推荐(0)