超碰97资源在线免费观看-国产亚洲一区二区久久-欧美日韩成人字幕一区-激情五月网在线视频-亚洲天堂美女av在线-麻豆视传媒精品av-婷婷激情综合激情五月俺也去-国产精品久久久久久亚洲av站-51精产国品一二三产区区,久久久久久久区二区三区四区久久久,色哟哟视频国产精品,日韩va亚洲va欧美

中山php|最優(yōu)網(wǎng)絡(luò)中山做網(wǎng)站 中山php建站

最優(yōu)良人

2011/09/21 at 14:47

mysql數(shù)據(jù)庫(kù)引擎HEAP(MEMORY)的使用,內(nèi)存表,臨時(shí)表的用法

HEAP表是訪問(wèn)數(shù)據(jù)速度最快的MySQL表,他使用保存在內(nèi)存中的散列索引。但如果MySQL或者服務(wù)器重新啟動(dòng),表中數(shù)據(jù)將會(huì)丟失.
用法:如論壇的在線人數(shù)統(tǒng)計(jì),這種表的數(shù)據(jù)應(yīng)該是無(wú)關(guān)緊要的,就幾個(gè)簡(jiǎn)單的字段,數(shù)據(jù)也不多,記錄數(shù)怎么也不會(huì)超過(guò)1000吧,但是操作是最頻繁的(基本用戶的每次動(dòng)作都要更新這個(gè)表).

如何創(chuàng)建內(nèi)存表?
創(chuàng)建內(nèi)存表非常的簡(jiǎn)單,只需注明 ENGINE= MEMORY 即可:
CREATE TABLE `tablename` ( `columnName` varchar(256) NOT NUL) ENGINE=MEMORY DEFAULT CHARSET=latin1 MAX_ROWS=100000000;

注意:
當(dāng)內(nèi)存表中的數(shù)據(jù)大于max_heap_table_size設(shè)定的容量大小時(shí),mysql會(huì)轉(zhuǎn)換超出的數(shù)據(jù)存儲(chǔ)到磁盤上,因此這是性能就大打折扣了,所 以我們還需要根據(jù)我們的實(shí)際情況調(diào)整max_heap_table_size,例如在.cnf文件中[mysqld]的下面加入:
max_heap_table_size = 2048M
另外在建表語(yǔ)句中還可以通過(guò)MAX_ROWS來(lái)控制表的記錄數(shù)。

內(nèi)存表使用哈希散列索引把數(shù)據(jù)保存在內(nèi)存中,因此具有極快的速度,適合緩存中小型數(shù)據(jù)庫(kù),但是使用上受到一些限制。

1、heap對(duì)所有用戶的連接是可見的,這使得它非常適合做緩存。

2、僅適合使用的場(chǎng)合。heap不允許使用xxxTEXT和xxxBLOB數(shù)據(jù)類型;只允許使用=和<=>操作符來(lái)搜索記錄 (不允許<、>、<=或>=);不支持auto_increment;只允許對(duì)非空數(shù)據(jù)列進(jìn)行 索引(not null)。
注:操作符 “<=>” 說(shuō)明:NULL-safe equal.這個(gè)操作符和“=”操作符執(zhí)行相同的比較操作,不過(guò)在兩個(gè)操作碼均為NULL時(shí),其所得值為1而不為NULL,而當(dāng)一個(gè)操作碼為NULL時(shí),其所得值為0而不為NULL。

3、一旦服務(wù)器重啟,所有heap表數(shù)據(jù)丟失,但是heap表結(jié)構(gòu)仍然存在,因?yàn)閔eap表結(jié)構(gòu)是存放在實(shí)際數(shù)據(jù)庫(kù)路徑下的,不會(huì)自動(dòng)刪除。重啟之后,heap將被清空,這時(shí)候?qū)eap的查詢結(jié)果都是空的。

4、如果heap是復(fù)制的某數(shù)據(jù)表,則復(fù)制之后所有主鍵、索引、自增等格式將不復(fù)存在,需要重新添加主鍵和索引,如果需要的話。

5、對(duì)于重啟造成的數(shù)據(jù)丟失,有以下的解決辦法:
a、在任何查詢之前,執(zhí)行一次簡(jiǎn)單的查詢,判斷heap表是否存在數(shù)據(jù),如果不存在,則把數(shù)據(jù)重新寫入,或者DROP表重新復(fù)制某張表。這需要多做一次查詢。不過(guò)可以寫成include文件,在需要用該heap表的頁(yè)面隨時(shí)調(diào)用,比較方便。
b、對(duì)于需要該heap表的頁(yè)面,在該頁(yè)面第一次且僅在第一次查詢?cè)摫頃r(shí),對(duì)數(shù)據(jù)集結(jié)果進(jìn)行判斷,如果結(jié)果為空,則需要重新寫入數(shù)據(jù)。這樣可以節(jié)省一次查詢。
c、更好的辦法是在mysql每次重新啟動(dòng)時(shí)自動(dòng)寫入數(shù)據(jù)到heap,但是需要配置服務(wù)器,過(guò)程比較復(fù)雜,通用性受到限制。

6、一些預(yù)期可能用到的sql語(yǔ)句

//如果表存在,則刪除
DROP TABLE IF EXISTS `abc`;
//復(fù)制整張表xyz為heap表abc(包含所有數(shù)據(jù))
CREATE TABLE `abc` type=heap select * from `xyz`;
//添加主鍵id
ALTER TABLE `abc` ADD PRIMARY KEY (`id`);
//添加索引username
ALTER TABLE `abc` ADD INDEX `abc` (`username`);

其它參考:
官方文檔:As indicated by the name, MEMORY tables are stored in memory. They use hash indexes by default, which makes them very fast, and very useful for creating temporary tables. However, when the server shuts down, all rows stored in MEMORY tables are lost. The tables themselves continue to exist because their definitions are stored in .frm files on disk, but they are empty when the server restarts.

可以看出來(lái)MEMORY確實(shí)是very fast,and very useful for creating temporary tables .把臨時(shí)表和內(nèi)存表放在一起使用確實(shí)會(huì)快不少:create table tmp2(id int not null) engine memory;
內(nèi)存表的建立還有一些限制條件:
MEMORY tables cannot contain BLOB or TEXT columns. HEAP不支持BLOB/TEXT列。
The server needs sufficient memory to maintain all MEMORY tables that are in use at the same time. 在同一時(shí)間需要足夠的內(nèi)存.
To free memory used by a MEMORY table when you no longer require its contents, you should execute DELETE or TRUNCATE TABLE, or remove the table altogether using DROP TABLE.為了釋放內(nèi)存,你應(yīng)該執(zhí)行DELETE FROM heap_table或DROP TABLE heap_table。

幾個(gè)關(guān)鍵參數(shù)

max_heap_table_size
mysql HEAP MEMORY tables 提高行數(shù)支持的方法
別人問(wèn)到的 記一下
mysql MEMORY tables 如果目前支持的行數(shù)到上限還不夠用 可以把 my.conf 配置里面
max_heap_table_size = 256M
改大
設(shè)置 MAX_ROWS
在跑著 可以 ALTER TABLE tbl_name MAX_ROWS=
MAX_ROWS 依賴于 max_heap_table_size 設(shè)置

標(biāo)簽:,
-
丰满人妻一`二,三区-超碰caopr0m国产97免费-色偷偷男人av天堂-久久精品欧美精品日韩精品99 | 久久久久久久久久aaaa-日韩av国内高清在线-亚洲图片色图免费欧美-麻豆一二三区av精品传媒 | 久久久福利第一导航-久久人妻少妇一区二区-99久久久久久久久久国产-欧美日韩国产在线看片 | 国产91熟女高潮一区二区三区四区-91精品久久久久久久久久久久久-日韩视频在线观看一二三区-亚洲综合偷拍一区二区三区 | 国产高国产高潮久久久久久-欧美日韩一区二区三区妖精-国产人妻精品中文字幕-久久国产精品久久伊人91 | 国产又粗又猛又大爽的视频-久久爱鲁鲁鲁鲁夜夜-日韩人妻丰满中文字幕-久久中文字幕亚洲高清 | 国产999精品久久久久久-国产乱码精品久久久-久久久久久久妹子精品-久久久久9999精品 | 人妻午夜理论一区二区三区-麻豆精品在线观看国产-日韩有码在线视频免费观看-麻豆高清视频在线免费观看 | 九九九热这里只有精品-91精品久久一区二区-国产午夜久久久久91精品-欧美高清视频一区二区在线观看 | 国产麻豆32部在线观看-大香蕉av热一区二区-777精品一区二区三区-精品一区二区三区日 | 久久99免费成人在线-99久久精品国产99久久6-日韩熟女中文字幕在线-九九热精品在线官网 | 亚洲国产成人久久综合下载-人妻系列中文字幕在线一区-欧美日韩中文字幕视频不卡一二区-国产麻豆成人在线视频 | 黑人中文字幕av线-亚洲东南亚五级黄色片热插-1024久久久久金沙人妻-av在线中文网新版地址在线 | 国产福利资源导航网-91 久久 亚洲精品-少妇人妻一区二区三区视频69-国产日韩在线一区二区三区 | 激情五月婷婷色电影-久久超级碰中文字幕-日韩一卡二卡一区av-性高潮久久久久久久久免费 | av中文字幕在线专区-日韩性生活av-久久久久久久久久久久久93-最新日韩人妻av在线 | 国产一区二区三区四区五区在线视频-内射亚洲少妇逼逼-欧美精品乱码久久久久久,欧-精品人妻少妇一区二区三区不卡 | 日韩少妇av电影-99精品热视频只有精品17-欧美激情中文字幕自拍偷拍-欧美一区二区在线蜜桃 | 国产免费一区二区不卡-91久久精品人妻-99久久99精品久久久久久-蜜桃一区二区视频在线观看 | 亚洲麻豆电影在线观看-蜜桃av一区二区三区久久-久久久久久久久久在线免费看-欧美日韩特一级大片 日韩免费特级黄色片-久久爱免费视频16-中文字幕一区二区三区50路-欧美丰满熟妇激情网 | 99国产精品综合免费-91亚洲综合成人在线-黄色带国产7j8在线观看-亚洲av伊人久久综合密臀性色 | 久久精品蜜桃臀视频-狠狠人妻久久久久久综合69-91久久婷婷国产麻豆红桃-粗暴蹂躏中文一区二区三区 | 风间中文字幕一区二区-亚洲精品自拍第三页-亚洲影院久久久av天天-久久久999免费精品视频 | 亚洲一区成人动漫在线观看-国产日韩欧美精品在线-久久久久看片久人妻-久久国产精品亚洲欧美阿娇 丝袜人妻中文字幕-国产免费一区二区三区不卡-五月婷婷丁香婷婷丁香-人妻天天爽夜夜爽一区二区 | 99热精品在线观看免费-极品人妻久久久久噜噜噜噜噜-成人麻豆av电影网站-日本中文字幕人妻一区二区三区 | 精品人妻久久久久中文字幕19-在线中文字幕一区二区三区-色婷婷综合激情综合久久-久久综合97久久综合精品久 | 丰满人妻二区三区性色-美女视频一级又色又硬又黄又-亚洲人妻日韩制服桃色人妻-中文字幕第一页麻豆 | 精品熟女一区二区三区中文字幕-91传媒91久久久-欧美日韩综合色一区二区三区-91人妻人人澡人人爽人人精品乱 | 熟妇人妻中文视频-97久久精品在线观看-久久精品色浮熟妇丰满人妻3-蜜臀久久99精品久久久久久牛牛 | 激情综合网激情综合五月-久久久久久久18久久-不卡在线视频 欧美日韩-99精品视频一区二区三区在线观看 | 久久国产精品99久-久久婷婷亚洲视频-亚洲最新色大成永久一区二区-久久精品亚洲天海翼av | 97人人澡视频-人妻夜夜爽天天爽麻豆av-久久久久色综合亚洲成色777-欧美日韩激情一区综合 | 日韩亚洲精品一二三-久久久国产精品免费-国产蜜臀av一区二区免费-久久无色码中文字幕 | 五月欧美激情综合网-中文字幕久久丝袜-麻豆在线视频观看在线网站-午夜精品一区二区三区蜜桃视频 要久久爱 在线观看-成人国产av精品视频观看麻豆-婷婷国产综合精品-97家有喜事国语高清在线 | 精品一区二区在线视频观看-日韩三级视频在线观看一区二区-高清av在线中文字幕-久久久久久艹大香蕉综合 | 超碰97人妻在线视频-91精品91久久久久久久-日韩人妻在线中文字幕在线视频-91精品国产综合久久精品密臀 | 国产成人精品亚洲日本在线观看-99热在线免费精品-久久久熟妇xxxx网站-精品国产免费久久久久久婷婷 | 婷婷性生活视频-成人av一区二区三区在线观看-国产中文字幕免费av大片-日韩av综合10 | 成人精品视频99在线观看免费视频-91高清免费看视频-国产精品久久久久鬼色-欧美日韩日本在线视频 男人的天堂久久91-av一区中文字幕在线观看-国产91熟女被艹嗷嗷叫-五月婷婷丁香激情综合 | 国产成人大片免费看-久久久久久久精品国裸体舞-丁香五精品蜜臀久久久久99网站-777色婷婷av一区二 | 国产精品久久久久久久久久久电影-欧美色综合久久综合-精品人妻人人澡人人爽人人sex-日韩午夜a级免费视频 |