分享
 
 
 

提高Linux上小型数据库的速度

王朝system·作者佚名  2008-05-19
窄屏简体版  字體: |||超大  

介绍

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" 并且将他们放到内存中,这样做:

### Stop the current postgresql server

/etc/rc.d/init.d/postgres stop

### rename the current directory

mv /var/lib/pgsql /var/lib/pgsql_main

#### 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

### 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的好处就是可以得到高速度,简单而明快。对于那些只读的数据库来说,这可是一个非常棒的主意。

它的不足就是你必须知道如何管理,并且在你进行修改时,最好确信你已经做了修改的备份。

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
2023年上半年GDP全球前十五强
 百态   2023-10-24
美众议院议长启动对拜登的弹劾调查
 百态   2023-09-13
上海、济南、武汉等多地出现不明坠落物
 探索   2023-09-06
印度或要将国名改为“巴拉特”
 百态   2023-09-06
男子为女友送行,买票不登机被捕
 百态   2023-08-20
手机地震预警功能怎么开?
 干货   2023-08-06
女子4年卖2套房花700多万做美容:不但没变美脸,面部还出现变形
 百态   2023-08-04
住户一楼被水淹 还冲来8头猪
 百态   2023-07-31
女子体内爬出大量瓜子状活虫
 百态   2023-07-25
地球连续35年收到神秘规律性信号,网友:不要回答!
 探索   2023-07-21
全球镓价格本周大涨27%
 探索   2023-07-09
钱都流向了那些不缺钱的人,苦都留给了能吃苦的人
 探索   2023-07-02
倩女手游刀客魅者强控制(强混乱强眩晕强睡眠)和对应控制抗性的关系
 百态   2020-08-20
美国5月9日最新疫情:美国确诊人数突破131万
 百态   2020-05-09
荷兰政府宣布将集体辞职
 干货   2020-04-30
倩女幽魂手游师徒任务情义春秋猜成语答案逍遥观:鹏程万里
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案神机营:射石饮羽
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案昆仑山:拔刀相助
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案天工阁:鬼斧神工
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案丝路古道:单枪匹马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:与虎谋皮
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:李代桃僵
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:指鹿为马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:小鸟依人
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:千金买邻
 干货   2019-11-12
 
推荐阅读
 
 
 
>>返回首頁<<
 
靜靜地坐在廢墟上,四周的荒凉一望無際,忽然覺得,淒涼也很美
© 2005- 王朝網路 版權所有