超碰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ù)庫引擎HEAP(MEMORY)的使用,內(nèi)存表,臨時表的用法

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

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

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

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

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

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

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

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

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

6、一些預期可能用到的sql語句

//如果表存在,則刪除
DROP TABLE IF EXISTS `abc`;
//復制整張表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.

可以看出來MEMORY確實是very fast,and very useful for creating temporary tables .把臨時表和內(nèi)存表放在一起使用確實會快不少: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. 在同一時間需要足夠的內(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)存,你應該執(zhí)行DELETE FROM heap_table或DROP TABLE heap_table。

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

max_heap_table_size
mysql HEAP MEMORY tables 提高行數(shù)支持的方法
別人問到的 記一下
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è)置

標簽:,
-
久久精品a一级国产免视看成人-激情四射五月天在线观看-日韩欧美精品人妻在线-久久综合色免费 | 99久国产精品午夜性色福利-久久亚洲在线精品视频-www一区二区91-国产又粗又猛又黄又爽 | 婷婷啪啪不卡视频-日韩av黄色网-在线视频中文字幕91-久久久久久天堂中文网av | 2012中文字幕手机在线-97超碰资源在线观看-欧美激情精品久久久久久蜜臀-日韩精品一卡二卡三卡四卡无卡 | 麻豆成人免费在线观看高清视频-国产欧美日韩综合一区-精品人妻中出一区二区三区-国产一区二区三级在线观看 | 亚洲另类图片 av-91午夜精品一区二区三区-人妻99在线视频-99久热在线精品视频播放 | 国产又粗又猛又大爽的视频-久久爱鲁鲁鲁鲁夜夜-日韩人妻丰满中文字幕-久久中文字幕亚洲高清 | 国产欧美日韩一区二区三区一二区-亚洲中文字幕熟女va-国产精品99久久久久久精品-久久久久久久久久久内射 | 日韩乱码中文字幕一区二区三区-欧美日韩国产精品av-久久久av男人天堂-国产69av一区二区三区 | 日日躁夜夜躁狠狠躁视频-精品久久久久亚洲中文字幕-亚洲综合一区二区三区蜜臀av-久久免费视频熟女 | 宫部凉花中文字幕在线-婷婷成人中文字幕-亚洲愉拍99热成人精品热久久-亚洲午夜色区蜜桃成熟 | 超碰人妻人人做人人爽-成人av电影免费在线观看青青草-国产成人在线短视频-老司机午夜久久精品免费视频 | 日本人妻人人爽一区二区三区-中文字幕亚州精品视频-色婷婷av熟女-久久看人人爽人人xxx | 国产日韩欧美一区二区啪啪啪-久久精品国产亚洲av色哟哟-九九精品99久久久-久久久久成人精品免费 国产精品 熟女人妻-久久99视频只有精品-国产成人欧美一区二区三区八-国产乱子伦无套一区二区三区 | 精品熟女一区二区三区中文字幕-91传媒91久久久-欧美日韩综合色一区二区三区-91人妻人人澡人人爽人人精品乱 | 日韩中文字幕你懂的-国产日韩欧美精品导航-熟妇人妻久久久久久一区二区三区-中文字幕日韩人妻精品 | 久久午夜一级aa大片-亚洲人妻中文字幕在线观看-久久天天躁狠狠躁夜夜躁2o2o-99精品久久99久久久久 | 日韩一级片在线免费观看电影-国产精品久久久久久久粉嫩小-日本伊人网在线播放-精品久久久久久久欧美 | 国产欧美一区二区自拍-中文字幕婷婷综合十二月-人妻中文字幕久-日韩日韩精品日韩在线韩日韩精品 人妻巨乳中文字幕-久久精品色浮熟妇丰满人妻9-超碰97资源在线播放-欧美日韩国产精品成人在线视频 | 久久精品国产亚洲av麻豆长发-97超碰最新在线观看-超碰在线视频97-久久网站十八岁禁止 | 人妻少妇蜜桃视频欧美一区-婷婷激情五月天网站-亚洲天堂中文字幕99-国产一区二区三区日韩欧美 | 91中文字幕在线观看nba-亚洲综合久久中文字幕mv-91麻豆精品福利在线观看-欧美精品午夜久久久久久 | 精品人妻一区二区三区人妻-久久午夜夜伦鲁鲁片不卡-日韩性生活一级视频-国产又粗又猛又爽又黄的视 | 成人av手机在线观看视频-丁香七月婷婷综合久久-久久久久久久久一区二区三区站长-亚洲高清中文字幕不卡av一页 | 久久久国产精品99-色婷婷激情五月综合网-91成人国产在线观看-日韩美女欧美美女破处视频免费观看 欧美精品手机在线播放-17c久久精品国产亚洲av-久久国产一区二区三区高清视频-久久久久综合亚洲伊人 | 欧美黑人性受xxxx精品-精品国产乱码久久久久久蜜桃-色噜噜综合熟女人妻-国产成人h在线观看 | 中文字幕人妻字幕乱码中文乱码-国内精品99在线免费观看-黑人操日本人b-超碰在线超碰在线超碰在线 | 99精品一区二区人妻-久久久中文精品字幕-久久久久久精品人妻一区二-欧美mv日韩mv国产精品网站 | 亚洲伊人久久综合一区二区-av网站在线免费观看视频-久久成人成熟热播-国产成人一区二区三区影院播放 | 蜜桃高清成人综合网-日本久久精品三级视频-老鸭窝91久久久久精品色噜噜-2019中文字幕视频网站 | 欧美日韓熟女又深又爽激情视频-国产区在线一区二区三区-日韩精品人妻中文字幕有-久久中文字幕7区 | 91精品国产综合999-亚洲欧美精品久久久-东北熟女丝袜一区二区三区-精品久久久久久久久久久久久国语 | 欧美人妻久久久久久综合-五月婷婷av网址在线-色婷婷综合专区-91乱子伦国产乱子伦无 | 亚洲精品少妇在线视频-亚洲av久久久噜噜-欧美日韩看激情在线-超碰免费公开人人妻 | 久久国产精品午夜免费-中文字幕成人在线免费-久久久亚洲熟妇精选-99 视频在线免费观看 | 人人妻人人躁人人爽-国产91精品久久久久久久-91麻豆精品在线观看视频-五月婷婷网在线观看 | 亚洲中文字幕乱码a-超碰在线男人免费祝频-精品人妻熟女一区二区三区免费看-国产av国产av一区二区三区 | 国产精品久久久久高潮-99久久99久久免费精品蜜桃-久久激情中文字幕-日韩av新片在线观看 | 精品中文一区二区三区-欧美色道久久88综合亚洲精品-国产精品麻豆网站在线观看-国精产品一区二区精品 | 久久久亚洲熟妇熟一区二区-日韩av激情一区-久久精品熟女亚洲av麻豆蜜桃-欧美日韩国产精品插插插 久久久福利第一导航-久久人妻少妇一区二区-99久久久久久久久久国产-欧美日韩国产在线看片 | 99熟女精品一区二区三区-91精品国产福利在线观看你-国产欧美一区二区三区日韩-久久久久精品91 |