国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 數據庫 > PostgreSQL > 正文

如何用RAMDISK來提高PostgreSQL數據庫的訪問速度

2019-09-08 23:33:59
字體:
來源:轉載
供稿:網友
介紹
--------------------------------------------------------------------------------

Okay, 什么是RAMDISK?我們如何用它來提高數據庫server的響應速度?  

Ramdisk就是說用作于硬盤空間的內存。無論什么時候你使用Ramdisk,實際上你是在使用內存而不是硬盤。在這一點上既有優點又有缺點。最基本的,最大的優點是你是在使用內存,你所做的一切都會快一些,因為硬盤的速度較內存慢。最大的缺點是如果你改變了數據庫服務器的內容并且重新啟動機器時,所做的一切改動都將丟失。

對于數據庫Server PostgreSQL來說, 如果你將所有的數據庫調入內存將會大大提高它的速度。  
--------------------------------------------------------------------------------

建立一個ramdisk /Test
--------------------------------------------------------------------------------

將默認ramdisk中的一個指向目錄/Test。


mkdir -p /Test
mkfs -t ext2 /dev/ram0
mount /dev/ram0 /Test

如果這一步失敗的話,也許是因為你所編譯的內核不支持ramdisk。你應該將內和配置選項中的CONFIG_BLK_DEV_RAM 一向置為可用的狀態。


以上的步驟只能給你提供一個4M大小的ramdisk。The above gives you a ramdisk with available space of just under 4Mb. 請參看 Ramdisk Article 一文,看看如何將其改變成50M大小。  

--------------------------------------------------------------------------------  
為 PostgreSQL 建立一個ramdisk
--------------------------------------------------------------------------------

理論上你應該優良兩個數據庫server。一個是你可以進行修改的,另一個是在ramdisk上的拷貝。實現這一點你應該用到"pg_dump" 或是 "pg_dumpall"命令。

注意: 我們假定你已經在文件中進行過設置是你的ramdisk大于你的數據庫的大小。如果你想得到它的近似的大小可以用命令"cd /var/lib/pgsql; du ".  

無論怎樣,使你的postgresql安裝在 "/var/lib/pgsql" 并且將他們放到內存中,這樣做:  

/t### Stop the current postgresql server
/etc/rc.d/init.d/postgres stop
/t### rename the current directory
mv /var/lib/pgsql /var/lib/pgsql_main
/t#### Create a directory to have our ramdisk on
mkdir -p /var/lib/pgsql_memory
 #### change the ownership of the new directory to postgres or whatever
#### the actual owner is.  
chown postgres /var/lib/pgsql_memory
#### Make an alias or link to the original name, /var/lib/pgsql
ln -s /var/lib/pgsql_memory /var/lib/pgsql

#### Format the ramdisk
mkfs -t ext2 /dev/ram0
#### Mount the ramdisk to the postgresql directory
mount /dev/ram0 /var/lib/pgsql_memory

#### Copy everything from the main directory into the ramdisk
tar -C /var/lib/pgsql_main -cp . | tar -C /var/lib/pgsql_memory -xp
/t### Start the current postgresql server
/etc/rc.d/init.d/postgres start


--------------------------------------------------------------------------------  
關于速度Comments on the speed
--------------------------------------------------------------------------------

我已經把postgresql分別在ramdisk上和不在ramdisk上進行過速度方面性能的測試。有些時候,在ramdisk上的postgresql的速度將會快出50%。當然有些時候不是這樣的。

我注意到,當系統對數據設置緩沖時,系統性能的提高并不很大只有大約10%到20%。當有大量新的數據被同時輸入數據庫時,系統的性能有著顯著的提高。

在使用ramdisk中最大的好處就是你可以強制你的數據庫留在內存中而避免使用硬盤。如果你不使用ramdisk,你的數據庫將可能被換出內存。當它被使用時再被從硬盤上調入內存。  

--------------------------------------------------------------------------------  
注釋
--------------------------------------------------------------------------------

對于linux操作系統,當一個文件被讀取時,它將被保存在內存中直到內存空間被其他程序要求使用。這樣便是緩存。也許這是一個解決之道。如果不是這樣,當我的機器有訪問的時候,會聽見硬盤的聲音。利用ramdisk時數據庫放在內存中而不會被到處內存。如果經常用數據庫server的話,要是我就把它放在內存中。  
在數據庫上使用ramdisk的好處就是可以得到高速度,簡單而明快。對于那些只讀的數據庫來說,這可是一個非常棒的主意。  
它的不足就是你必須知道如何管理,并且在你進行修改時,最好確信你已經做了修改的備份。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表

圖片精選

主站蜘蛛池模板: 怀安县| 大邑县| 广南县| 古田县| 高陵县| 绥德县| 澄江县| 云梦县| 苗栗市| 通河县| 新余市| 海南省| 偏关县| 房产| 榆林市| 金塔县| 资中县| 南雄市| 金湖县| 彭水| 汶上县| 鲁甸县| 石城县| 德化县| 广昌县| 泸溪县| 徐闻县| 赣州市| 孝感市| 南丹县| 定结县| 安吉县| 永吉县| 凤庆县| 鄢陵县| 田林县| 湄潭县| 卓资县| 绍兴县| 卓资县| 都兰县|