本文通过使用十二个步骤来仔细讲解Linux下如何优化你的Oracle。
1. 标准优化:遵从Oracle技术文档中的说明tune你的Linux,比如共享内存等等。这里不赘述了,因为文档中很全。
2. 根据你的使用情况采取Dedicate型或MTS型数据库。详细方法也看文档。
3. 如果你不是对数据库中的Java应用特别有需求的话,不要装它,也不要启动它。(如果你装了的话)
4. 对你的服务器来说,最好专用。如果你不专用,说明你对性能并不那么敏感,也用不着优化了。
5. 内存越大越好。但Linux对内存大小有限制,因此需要去找一些Patch。
6. 下载一个SGI's POSIX Asynchronous I/O and Raw I/O的内核Patch。它能大幅度提高你数据文件的访问速度。
7. 如果你采用ext2文件系统,把Block的大小增加到4~8KB。其中dbf所在分区的大小最少弄到8192KB。
8. 尽可能用SCSI硬盘。如果是IDE的,好好调调参数。
9. 这里是一个示例程序:
set -a
VM=/proc/sys/vm
BDFLUSH="40 1024 64 256 500 3000 500 1884 2"
BUFFERMEM="5 8 10"
FREEPAGES="512 1024 3072"
OVERCOMMIT="1"
case {GetProperty(Content)} in
start)
echo "$BDFLUSH">$VM/bdflush
echo "$BUFFERMEM">$VM/buffermem
echo "$FREEPAGES">$VM/freepages
echo "$OVERCOMMIT">$VM/overcommit_memory
/sbin/hdparm -k -u 1 -m 32 -c 1 /dev/hda;
/sbin/hdparm -k -u 1 -m 16 -c 1 /dev/hdc;
;;
stop)
touch /root/shouldnt.happen;
;;
*)
echo "USAGE {GetProperty(Content)} {start|stop}";
;;
esac;
10. 如果你有Solaris for X86的话,可以运用它的分区工具把你的所有分区都改成UFS。Linux的当前Kernel是支持UFS的。在数据库运用上,UFS比ext2好。
11. 如果可能,应该采用诸如IBM JFS或SGI XFS这样的64位文件系统。
12. 不要用Linux发行版带的核心,要自己编译。
本文作者: