成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

MySQL內(nèi)存表的弊端

數(shù)據(jù)庫(kù) MySQL
MySQL內(nèi)存表不是提高讀性能的萬(wàn)能工具,它也是有著一定的弊端的,下文就為您分析MySQL內(nèi)存表的不足,供您參考學(xué)習(xí)之用。

MySQL內(nèi)存表使我們經(jīng)常會(huì)用到的,但是 MySQL內(nèi)存表的也不是提高讀性能的***工具,在有些情況下,MySQL內(nèi)存表可能會(huì)比其實(shí)表類型的B-TREE更慢。

  1. CREATE TABLE `mem_test` (                                                               
  2.             `id` int(10) unsigned NOT NULL DEFAULT '0',                                           
  3.             `name` varchar(10) DEFAULT NULL,                                                      
  4.             `first` varchar(10) DEFAULT NULL,                                                     
  5.             PRIMARY KEY (`id`),                                                                   
  6.             KEY `NewIndex1` (`name`,`first`)                                                      
  7.           ) ENGINE=MEMORY ;  
  8.  
  9. CREATE TABLE `innodb_test` (                     
  10.                `id` int(10) unsigned NOT NULL DEFAULT '0',   
  11.                `name` varchar(10) DEFAULT NULL,               
  12.                `first` varchar(10) DEFAULT NULL,              
  13.                PRIMARY KEY (`id`),                            
  14.                KEY `NewIndex1` (`name`,`first`)               
  15.              ) ENGINE=InnoDB;  
  16.  

如:
1:在= 或者<=> 情況下,飛快,但是在如< 或>情況下,他是不使用索引

  1. mysql--root@localhost:17db 07:33:45>>explain select * from mem_test where id>3;  
  2. +----+-------------+----------+------+---------------+------+---------+------+------+-------------+  
  3. | id | select_type | table    | type | possible_keys | key | key_len | ref | rows | Extra       |  
  4. +----+-------------+----------+------+---------------+------+---------+------+------+-------------+  
  5. | 1 | SIMPLE      | mem_test | ALL | PRIMARY       | NULL | NULL    | NULL |   15 | Using where |  
  6. +----+-------------+----------+------+---------------+------+---------+------+------+-------------+  
  7. 1 row in set (0.00 sec)  
  8.  
  9. mysql--root@localhost:17db 07:33:49>>explain select * from innodb_test where id>3;  
  10. +----+-------------+-------------+-------+---------------+---------+---------+------+------+-------------+  
  11. | id | select_type | table       | type | possible_keys | key     | key_len | ref | rows | Extra       |  
  12. +----+-------------+-------------+-------+---------------+---------+---------+------+------+-------------+  
  13. | 1 | SIMPLE      | innodb_test | range | PRIMARY       | PRIMARY | 4       | NULL |    7 | Using where |  
  14. +----+-------------+-------------+-------+---------------+---------+---------+------+------+-------------+  
  15. 1 row in set (0.00 sec)  
  16.  

2:不能用在order by情況下來(lái)提高速度

  1. mysql--root@localhost:17db 07:33:55>>explain select * from innodb_test order by id;  
  2. +----+-------------+-------------+-------+---------------+---------+---------+------+------+-------+  
  3. | id | select_type | table       | type | possible_keys | key     | key_len | ref | rows | Extra |  
  4. +----+-------------+-------------+-------+---------------+---------+---------+------+------+-------+  
  5. | 1 | SIMPLE      | innodb_test | index | NULL          | PRIMARY | 4       | NULL |   15 |       |  
  6. +----+-------------+-------------+-------+---------------+---------+---------+------+------+-------+  
  7. 1 row in set (0.00 sec)  
  8.  
  9. mysql--root@localhost:17db 07:34:27>>explain select * from mem_test order by id;  
  10. +----+-------------+----------+------+---------------+------+---------+------+------+----------------+  
  11. | id | select_type | table    | type | possible_keys | key | key_len | ref | rows | Extra          |  
  12. +----+-------------+----------+------+---------------+------+---------+------+------+----------------+  
  13. | 1 | SIMPLE      | mem_test | ALL | NULL          | NULL | NULL    | NULL |   15 | Using filesort |  
  14. +----+-------------+----------+------+---------------+------+---------+------+------+----------------+  
  15. 1 row in set (0.00 sec)  
  16.  

3:不能確定倆值之間有多少行

  1. mysql--root@localhost:17db 07:37:14>>explain select count(1) from mem_test where id>3 and id<6;  
  2. +----+-------------+----------+------+---------------+------+---------+------+------+-------------+  
  3. | id | select_type | table    | type | possible_keys | key | key_len | ref | rows | Extra       |  
  4. +----+-------------+----------+------+---------------+------+---------+------+------+-------------+  
  5. | 1 | SIMPLE      | mem_test | ALL | PRIMARY       | NULL | NULL    | NULL |   20 | Using where |  
  6. +----+-------------+----------+------+---------------+------+---------+------+------+-------------+  
  7. 1 row in set (0.00 sec)  
  8.  
  9. mysql--root@localhost:17db 07:40:35>>explain select count(1) from innodb_test where id>3 and id<6;  
  10. +----+-------------+-------------+-------+---------------+---------+---------+------+------+--------------------------+  
  11. | id | select_type | table       | type | possible_keys | key     | key_len | ref | rows | Extra                    |  
  12. +----+-------------+-------------+-------+---------------+---------+---------+------+------+--------------------------+  
  13. | 1 | SIMPLE      | innodb_test | range | PRIMARY       | PRIMARY | 4       | NULL |    1 | Using where; Using index |  
  14. +----+-------------+-------------+-------+---------------+---------+---------+------+------+--------------------------+  
  15. 1 row in set (0.00 sec)  
  16.  

4:在多列索引的情況下,只有全部指定才能利用hash掃描,而B(niǎo)-tree確可以利用索引的最左端來(lái)查找

  1. mysql--root@localhost:17db 07:37:07>>explain select * from innodb_test where name='b';  
  2. +----+-------------+-------------+------+---------------+-----------+---------+-------+------+--------------------------+  
  3. | id | select_type | table       | type | possible_keys | key       | key_len | ref   | rows | Extra                    |  
  4. +----+-------------+-------------+------+---------------+-----------+---------+-------+------+--------------------------+  
  5. | 1 | SIMPLE      | innodb_test | ref | NewIndex1     | NewIndex1 | 33      | const |    8 | Using where; Using index |  
  6. +----+-------------+-------------+------+---------------+-----------+---------+-------+------+--------------------------+  
  7. 1 row in set (0.00 sec)  
  8.  
  9. mysql--root@localhost:17db 07:37:10>>explain select * from mem_test where name='b';  
  10. +----+-------------+----------+------+---------------+------+---------+------+------+-------------+  
  11. | id | select_type | table    | type | possible_keys | key | key_len | ref | rows | Extra       |  
  12. +----+-------------+----------+------+---------------+------+---------+------+------+-------------+  
  13. | 1 | SIMPLE      | mem_test | ALL | NewIndex1     | NULL | NULL    | NULL |   20 | Using where |  
  14. +----+-------------+----------+------+---------------+------+---------+------+------+-------------+  
  15.  

當(dāng)然內(nèi)存表也可以手動(dòng)添加btree

  1. CREATE INDEX BTREE_index USING BTREE on mem_test(name,first)  
  2. mysql--root@localhost:17db 03:36:41>>explain select * from mem_test where name='b';  
  3. +----+-------------+----------+------+-----------------------+-------------+---------+-------+------+-------------+  
  4. | id | select_type | table    | type | possible_keys         | key         | key_len | ref   | rows | Extra       |  
  5. +----+-------------+----------+------+-----------------------+-------------+---------+-------+------+-------------+  
  6. | 1 | SIMPLE      | mem_test | ref | NewIndex1,BTREE_index | BTREE_index | 33      | const |    9 | Using where |  
  7. +----+-------------+----------+------+-----------------------+-------------+---------+-------+------+-------------+  
  8. 1 row in set (0.00 sec)  

哈哈,它也用到索引了。
所以要選擇合適的存儲(chǔ)引擎至關(guān)重要。
 

 

 

【編輯推薦】

MySQL獨(dú)立表空間的優(yōu)缺點(diǎn)

mysql數(shù)據(jù)庫(kù)大小寫的問(wèn)題討論

MySQL MyISAM表結(jié)構(gòu)的恢復(fù)

MySQL InnoDB表結(jié)構(gòu)的恢復(fù)

深度解析MySQL創(chuàng)建關(guān)聯(lián)表

責(zé)任編輯:段燃 來(lái)源: 互聯(lián)網(wǎng)
相關(guān)推薦

2012-02-23 10:28:12

MySQL

2021-01-14 11:08:05

加密貨幣貨幣技術(shù)

2010-11-22 16:51:10

MySQL內(nèi)存表

2010-04-27 09:11:29

2014-03-10 10:22:40

JavaScriptJS弊端

2012-12-27 10:22:46

大數(shù)據(jù)

2010-10-21 13:14:35

2023-11-12 11:56:28

Json格式弊端

2012-10-15 09:33:52

PC瘦客戶機(jī)云計(jì)算

2010-10-15 14:47:37

Mysql Merge

2010-10-12 16:29:02

MySQL權(quán)限表

2010-10-15 16:10:08

Mysql表別名

2010-11-22 15:19:28

Mysql臨時(shí)表

2018-03-12 16:18:31

嵌入式開(kāi)源

2010-03-16 14:04:44

智能交換機(jī)

2018-04-08 16:26:48

2011-07-27 15:01:48

MySQL數(shù)據(jù)庫(kù)內(nèi)存表

2010-10-15 11:05:31

MYSQL查詢結(jié)果

2010-11-22 16:40:00

MySQL事務(wù)表

2010-10-08 16:42:31

MySQL表信息
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)

主站蜘蛛池模板: 亚洲一区二区三区在线播放 | 91影视| 日本精品一区二区三区四区 | 午夜在线精品偷拍 | 国产欧美精品一区 | 日韩性在线 | 国产91丝袜在线播放 | 欧美激情久久久 | 在线视频91 | 成人免费视频7777777 | 亚洲一区精品在线 | 欧美黄色大片在线观看 | 91中文字幕在线 | 一区二区三区福利视频 | 国产特黄一级 | 色视频在线播放 | 欧美老妇交乱视频 | 国产一区二区三区久久久久久久久 | 亚洲区视频| 国产成在线观看免费视频 | 欧美日韩福利视频 | 久久久久久久久久久久亚洲 | 久久精品一区二区三区四区 | 四虎永久免费地址 | 欧美亚洲视频在线观看 | 亚洲欧美综合 | 99伊人 | 97精品国产手机 | 免费一区 | 欧美一a一片一级一片 | a视频在线| 嫩草视频在线免费观看 | 久久国产精品视频免费看 | 蜜桃av一区二区三区 | 欧美色综合天天久久综合精品 | 久久国内精品 | 国产日韩欧美 | 国产美女精品视频免费观看 | 成人免费在线观看 | 在线观看中文字幕一区二区 | 日韩在线免费观看视频 |