解析Mysql暫時表及特色。本站提示廣大學習愛好者:(解析Mysql暫時表及特色)文章只能為提供參考,不一定能成為您想要的結果。以下是解析Mysql暫時表及特色正文
暫時表是當銜接沒有斷開時存在,一旦斷開就不會存在,暫時表的數據和構造都在內存中,可以做個考試,你創立一個暫時表,然則到呼應的數據目次下其實不會找到.frm文件
mysql> CREATE TEMPORARY TABLE tmp_table (
->
-> name VARCHAR(10) NOT NULL,
-> value INTEGER NOT NULL
->
-> ) ;
Query OK, 0 rows affected (0.38 sec)
檢查表狀況
mysql> show CREATE TABLE tmp_table \G
*************************** 1. row ***************************
Table: tmp_table
Create Table: CREATE TEMPORARY TABLE `tmp_table` (
`name` varchar(10) NOT NULL,
`value` int(11) NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8
1 row in set (0.00 sec)
它和正常表沒有甚麼差別,然則數據是存在內存中的,你在呼應的數據目次下找不到數據文件。
一旦斷開銜接你再查該表就會消逝。
和暫時表有點類似的是內存表,有的也稱堆表。
mysql> CREATE TABLE mem_table (
->
-> name VARCHAR(10) NOT NULL,
-> value INTEGER NOT NULL
->
-> ) TYPE = HEAP;
Query OK, 0 rows affected, 1 warning (0.01 sec)
檢查表狀況
mysql> show CREATE TABLE mem_table \G
*************************** 1. row ***************************
Table: mem_table
Create Table: CREATE TEMPORARY TABLE `mem_table` (
`name` varchar(10) NOT NULL,
`value` int(11) NOT NULL
) ENGINE=MEMORY DEFAULT CHARSET=utf8
1 row in set (0.00 sec)
你在數據目次下回發明一個mem_table.frm文件,所之內存表的數據是放在磁盤上的,然則拔出數據後發明磁盤上沒稀有據文件,所以數據是在內存中的,由於采取的是memory 引擎。一旦down機數據將不存在。該表由於數據是在內存中,所以數據會很快。缺陷是平安性。