2014-12-22 23 views
5

我在mysql上創建了HEAP(ram)表以加快查詢速度。但在重新啓動mysql服務器後,我的Heap表中的數據不會被加載。在MySQL服務啓動時運行SQL查詢

我的正常表名:產品 id爲,PRODUCT_NAME,地位的myisam

ID =>整數和AUTO_INCREMENT,主鍵

PRODUCT_NAME => var_char和密鑰(指數)

狀態=>布爾

實際查詢:

`Select id from products where product_name like "product_name"` 

我想提高速度,所以我創建表相同的結構,並與名爲products_ram作爲mysql的HEAP表。 我使用這個代碼填充:

insert p_shop.products_ram select * from p_shop.products; 

但當重啓MySQL實例HEAP(RAM)表中的數據已經一去不復返了。

我發現了一個關於MySQL記憶存儲文件: http://dev.mysql.com/doc/refman/5.0/en/memory-storage-engine.html

但我不能找到我要找的。

我想從產品表中將我的數據自動插入/複製到mysql服務器初始化的products_ram表中。

任何幫助將不勝感激。

編輯:我的操作系統:在Windows Server 2008 R2 和MySQL:MySQL的5.5

+1

如果你知道這是什麼操作系統,那麼我們可能會知道你的mysqld實例是如何啓動的。 – symcbean

+0

Windows Server 2008 R2上的Mysql 5.5 – EngineerCoder

回答

4

init_file服務器選項,定義要在啓動時執行任意SQL語句。

+1

是的,my.ini文件位於'C:\ Program Files \ MySQL \ MySQL Server 5.1 \ my.ini'中,我在'[mysqld]' 'init-file =「C:/inetpub/wwwroot/start.sql」' 它的工作原理!謝謝。 – EngineerCoder

相關問題