Mysql

記憶體 SQL 數據庫系統

  • August 26, 2013

在應用程序中,我使用mysql的是TEMPORARY TABLE. 由於此應用程序不需要永久表,我想知道是否可以找到為記憶體表設計的替代 RDMS。我希望找到一個記憶體數據庫系統,即

  1. 輕的
  2. 比mysql臨時表快
  3. 擁有 C 的 API(我的程式語言)

並且不需要特殊功能,只需創建表和執行 SQL 查詢。FK或不需要其他高級功能。

你有兩個選擇

選項 #1:創建 RAM 磁碟

RAMDISK_SIZE=32g
service mysql stop
mkdir /var/tmpfs
echo "none   /var/tmpfs  tmpfs  defaults,size=${RAMDISK_SIZE} 1 2" >> /etc/fstab
mount -t tmpfs -o size=${RAMDISK_SIZE} none /var/tmpfs
cp -R /var/lib/mysql/* /var/tmpfs
mv /var/lib/mysql /var/lib/mysql_old
ln -s /var/tmpfs /var/lib/mysql
chown -R mysql:mysql /var/tmpfs
chown -R mysql:mysql /var/lib/mysql
service mysql start

如果這不起作用,您可以將其撤消

service mysql stop
rm -f /var/lib/mysql
mv /var/lib/mysql_old /var/lib/mysql
service mysql start    

您可以根據自己的喜好設置 RAMDISK_SIZE

選項 #2:使用FUSION IO

掛載/var/lib/mysqlFusionIO 磁碟上(所有記憶體,CPU 激進)。

與您的首席財務官一起愉快地解決這個問題。

結語

這兩個選項都允許您像往常一樣使用 MyISAM 和 InnoDB。目標只是將整個datdair放在 RAM 中。

試一試 !!!

引用自:https://dba.stackexchange.com/questions/48720