記憶體(memory)表和臨時(temporary)表之瞭解
記憶體(memory)表和臨時(temporary)表之瞭解
**臨時表(temporary):
1.引數:tmp_table_size 64M(最大容量,表增長到此值,會自動轉換為磁碟表)
2.表定義,資料,索引存於記憶體中
3.到閥值,自動轉換為磁碟表,需要進行IO操作,導致DB效能下降
4.存放text,blob型別的資料
5.只存在一次連線中,Mysql斷開連線後被刪除
6.所有客戶端不能共享,否則會提示不存在資訊
7.任何儲存引擎中
8.Created_tmp_tables 狀態值增加表示,在磁碟上有建立臨時表或臨時錶轉成磁碟表
語法:
create temporary table tbl() engine=xx default charset=utf8;
建立條件:
1.查詢中有排序(order by)和分組(group by)
2.排序中使用過濾重複列(distinct)
3.查詢中用sql_small_result選項
**記憶體表(memory)
1.引數:max_heap_table_size 64M(獨立記憶體表容許最大容量,以防止建立超大記憶體表導致記憶體用盡)
2.表定義存於磁碟中,資料和索引在記憶體中(重啟後資料會丟失)
3.到閥值,會報錯:資料存放已滿
4.不能存放text,blob型別的資料
5.記憶體表支援auto_increment列,可包含NULL值列索引
6.mysql重啟後,主鍵,自增,索引仍然存在,只是資料丟失
7.不支援事務
8.支援hash和B樹索引
9.記憶體表是表鎖,頻繁修改,效能會下降
10.僅memory引擎
語法:
create table tbl(xx...xx)engine=memory default charset=utf8;
早期會大量使用記憶體表作為儲存中小型資料,以來來提搞DML速度,減低IO操作,
但現在隨著memcache/Nosql應用,記憶體表逐漸被取代之;
**臨時表(temporary):
1.引數:tmp_table_size 64M(最大容量,表增長到此值,會自動轉換為磁碟表)
2.表定義,資料,索引存於記憶體中
3.到閥值,自動轉換為磁碟表,需要進行IO操作,導致DB效能下降
4.存放text,blob型別的資料
5.只存在一次連線中,Mysql斷開連線後被刪除
6.所有客戶端不能共享,否則會提示不存在資訊
7.任何儲存引擎中
8.Created_tmp_tables 狀態值增加表示,在磁碟上有建立臨時表或臨時錶轉成磁碟表
語法:
create temporary table tbl() engine=xx default charset=utf8;
建立條件:
1.查詢中有排序(order by)和分組(group by)
2.排序中使用過濾重複列(distinct)
3.查詢中用sql_small_result選項
**記憶體表(memory)
1.引數:max_heap_table_size 64M(獨立記憶體表容許最大容量,以防止建立超大記憶體表導致記憶體用盡)
2.表定義存於磁碟中,資料和索引在記憶體中(重啟後資料會丟失)
3.到閥值,會報錯:資料存放已滿
4.不能存放text,blob型別的資料
5.記憶體表支援auto_increment列,可包含NULL值列索引
6.mysql重啟後,主鍵,自增,索引仍然存在,只是資料丟失
7.不支援事務
8.支援hash和B樹索引
9.記憶體表是表鎖,頻繁修改,效能會下降
10.僅memory引擎
語法:
create table tbl(xx...xx)engine=memory default charset=utf8;
早期會大量使用記憶體表作為儲存中小型資料,以來來提搞DML速度,減低IO操作,
但現在隨著memcache/Nosql應用,記憶體表逐漸被取代之;
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/26855487/viewspace-763440/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- mysql臨時表和記憶體表MySql記憶體
- 【轉載】MySQL之臨時表和記憶體表MySql記憶體
- 記憶體表和臨時表的區別記憶體
- MySQL-37:記憶體臨時表MySql記憶體
- Oracle臨時表GLOBAL TEMPORARY TABLEOracle
- Oracle Temporary Tables(Oracle 臨時表)Oracle
- 全域性臨時表 GLOBAL TEMPORARY TABLE
- oracle的臨時表空間temporary tablespaceOracle
- orace global temporary table全域性臨時表測試小記
- 【TEMPORARY TABLE】Oracle臨時表使用注意事項Oracle
- 臨時表空間temporary tablespace相關操作
- ORACLE Temporary Tables臨時表更適合做插入和查詢操作Oracle
- ORACLE臨時表和SQLSERVER臨時表異同OracleSQLServer
- 排序sort area 記憶體不足會用到臨時表空間排序記憶體
- MySQL之臨時表MySql
- TimesTen臨時(記憶體)空間使用和調整臨時(記憶體)空間記憶體
- SQLServer表變數和臨時表系列之概念篇SQLServer變數
- mysql cluster ndb 記憶體表和磁碟表MySql記憶體
- SQLServer臨時表和表變數系列之踢館篇SQLServer變數
- 再議臨時表和表變數變數
- Oracle 基礎 ----臨時表和物件表Oracle物件
- Oracle10新特性:臨時表空間組(temporary tablespace group)Oracle
- 10G新特性: 臨時表空間組(temporary tablespace group)
- iOS Memory 記憶體詳解 (長文)iOS記憶體
- Oracle10g新特性:臨時表空間組(temporary tablespace group)Oracle
- create table進階學習(二)_全域性臨時表_global temporary table
- 臨時表(GLOBAL TEMPORARY TABLE)及統計資訊收集,動態取樣
- 記憶體表(FDMEMTABLE)記憶體
- optee記憶體管理和頁表建立記憶體
- memory儲存引擎 /MySQL記憶體表的特性與使用介紹儲存引擎MySql記憶體
- SQL Server中的臨時表和表變數SQLServer變數
- 重建控制檔案後,對臨時表空間(temporary tablespace)進行重建
- MySQL臨時表MySql
- PostgreSQL:臨時表SQL
- oracle臨時表Oracle
- Oracle 臨時表Oracle
- mysql最大表記憶體MySql記憶體
- mysql複製和記憶體引擎的表MySql記憶體