Kylin 下 Oracle9i的配置

仍然是进行9i的安装,之前出现过的几个问题主要是由于权限等设置,Kylin这家伙为了所谓安全性把一些重要的内核信息放的到处都是,结果就是有些不让改,有些改了不好使,Oracle安装前必须要配的内核信息主要有

etc/sysctl.conf

boot/kylin.conf

另外还有两个重要的文件boot/loader.conf~,boot/loader.conz~这是两个可改的文件,最后不知是哪个改好了内核信息,可是关键的boot/loader.conf是不让改的,不论你是root还是别人就是不可改,安全性真可恨!

但也确实这个过程中学到了不少有关内核信息的知识,linux博大无边,虽然现在仍然是恨大于爱,相信,终于可以修成正果~:)

主要参数:可通过sysctl ~ 修改的:semmsl semmap shmall shmmax

            不可通过sysctl ~ 修改的:semopm semmns semmni  shmmseg shmmni

            还有几个sysctl ~不识别的:.sem .shmmaxpgs

这里提到的所有参数都是kern.ipc.~ 都是与oracle安装有关的参数,其他信息并未详细说明

另个有关这些参数的设置有如下参考:

shmmax            这里有个说要设为内存,我认为最终的影响并不大,关键就是设置是否有效

                         可通过sysctl -a|more 查看当前内核信息   
共享内存段的最大大小(以字节为单位)    
  含义:这个设置并不决定究竟oracle数据库或者操作系统使用多少物理内存,只决定了最多可以使用的内存数目。这个设置也不影响操作系统的内核资源。
  设置方法:0.5*物理内存
通过直接更改 /proc 文件系统,你无需重新启动计算机便可以改变 SHMMAX 的缺省设置。可以使用以下方法动态设置 SHMMAX 的值。通过将此命令置于 /etc/rc.local 启动文件中可以使它永久有效:
 echo "2147483648" > /proc/sys/kernel/shmmax

shmmni
  这个内核参数用于设置系统范围内共享内存段的最大数量。该参数的缺省值是 4096。该值足以满足需要,因此通常无需更改。
可以通过执行以下命令来确定 SHMMNI 的值:
# cat /proc/sys/kernel/shmmni
4096

shmall
该参数控制系统一次可以使用的共享内存总量(以页为单位)
shmall 的默认大小为 2097152,并可以使用以下命令进行查询:
# cat /proc/sys/kernel/shmall
2097152
shmall 的默认设置足以满足 Oracle RAC 10g 安装的需要。
(注意:i386 平台上的 Red Hat Linux 中的页面大小为 4,096 字节。但您可以使用 bigpages,它支持配置更大的内存页面大小。)

设置信号
对信号的最佳描述是,它是用于在共享资源(如共享内存)的进程(或进程中的线程)之间提供同步的计数器。Unix System V 支持信号集,其中的每个信号都是一个信号计数。当应用程序请求信号时,它使用“集合”来完成此工作。
要确定所有信号限制,可使用以下命令:
# ipcs -ls
------ Semaphore Limits --------
max number of arrays = 128
max semaphores per array = 250
max semaphores system wide = 32000
max ops per semop call = 32
semaphore max value = 32767

您还可以使用以下命令:
# cat /proc/sys/kernel/sem
250 32000 32 128

semmsl
内核参数用于控制每个信号集合的最大信号数。
系统所占用信号量可用下列命令查出:#ipcs –sb ,其中列NSEMS显示系统已占用信号量
Oracle 建议将 SEMMSL 设置为 init.ora 文件(适用于 Linux 系统上所有数据库)中的最大 PROCESS 实例参数设置再加上 10。此外,Oracle 建议将 SEMMSL 设置为不小于 100。
  例子:set semsys:seminfo_semmsl=-200

semmni
内核参数用于控制整个 Linux 系统中信号集的最大数量。
Oracle 建议将 SEMMNI 设置为不小于 100。

semmns

内核参数用于控制整个 Linux 系统中的信号(而非信号集)的最大数量
每个process会占用一个信号量,Oracle 建议将 SEMMNS 设置为系统上每个数据库的 PROCESSES 实例参数设置之和,加上最大的 PROCESSES 的两倍,最后为系统上的每个 Oracle 数据库加上 10。
设置方法:这个值可以通过以下方式计算得到:各个oracle实例的initsid.ora里边的processes的值的总和(除去最大的processes参数)+最大的那个processes×2+10×oracle实例的个数。

shmseg
  含义:每个用户进程可以使用的最多的共享内存段的数目。
  例子:set shmsys:shminfo_shmseg=20:

          

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值