网络编程 | 站长之家 | 网页制作 | 图形图象 | 操作系统 | 冲浪宝典 | 软件教学 | 网络办公 | 邮件系统 | 网络安全 | 认证考试 | 系统进程
Firefox | IE | Maxthon | 迅雷 | 电驴 | BitComet | FlashGet | QQ | QQ空间 | Vista | 输入法 | Ghost | Word | Excel | wps | Powerpoint
asp | .net | php | jsp | Sql | c# | Ajax | xml | Dreamweaver | FrontPages | Javascript | css | photoshop | fireworks | Flash | Cad | Discuz!
当前位置 > 网站建设学院 > 网络编程 > 数据库 > Oracle教程
Tag:注入,存储过程,分页,安全,优化,xmlhttp,fso,jmail,application,session,防盗链,stream,无组件,组件,md5,乱码,缓存,加密,验证码,算法,cookies,ubb,正则表达式,水印,索引,日志,压缩,base64,url重写,上传,控件,Web.config,JDBC,函数,内存,PDF,迁移,结构,破解,编译,配置,进程,分词,IIS,Apache,Tomcat,phpmyadmin,Gzip,触发器,socket
数据库:数据库教程,数据库技巧,Oracle教程,MySQL教程,Sybase教程,Access教程,DB2教程,数据库安全,数据库文摘
本月文章推荐
.构建您自己的Oracle RAC 10g集群.
.通过JDBC操纵Oracle数据库LOB字段.
.Oracle 8高级数据复制技术.
.查找bad sql的方法.
.Oracle RMAN快速入门指南的具体介.
.Windows安装Oracle出现错误.
.Oracle-Decode()函数和CASE语句有.
.Oracle 8.0使用技巧.
.八个学习点帮助你全面认识Oracle.
.Linux下如何优化Oracle.
.[Oracle] Ora2html--收集Oracle数.
.用Oracle并行查询发挥多CPU的威力.
.Oracle 10G First Release的新特.
.Oracle下调数据库许可价格 以适应.
.ORACLE数据库对象与用户管理.
.用网络卡从并口上启动Linux.
.IBM力推System P5服务器 获甲骨文.
.在Oracle9i中如何自行编译BBED工.
.Oracle已经过时?.
.教你轻松解决Oracle数据库的服务.

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

发表日期:2008-2-9



  介绍
  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的好处就是可以得到高速度,简单而明快。对于那些只读的数据库来说,这可是一个非常棒的主意。
  它的不足就是你必须知道如何治理,并且在你进行修改时,最好确信你已经做了修改的备份。
上一篇:通过socket访问数据库 人气:886
下一篇:如何恢复数据库的内容 人气:653
浏览全部Oracle教程的内容 Dreamweaver插件下载 网页广告代码 祝你圣诞节快乐 2009年新年快乐