OracleOracle数据库多实例安装
Posted 东瑜
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了OracleOracle数据库多实例安装相关的知识,希望对你有一定的参考价值。
需求:因为需要从RAC的多实例迁移至单虚拟机的多实例。因此,简要概述一下,如何安装数据库的多实例。
不管是Oracle 11g还是10g的多实例,其基本思路都是一致的。
1.调用dbca
在root账号,运行:
[root@db u01]# xhost +
在oracle账号,运行:
[oracle@db ~]$ export LANG=en_US
[oracle@db ~]$ dbca
出现如下页面:
安装新的数据库实例,实践环境名字分别为:
irc3db
,managedb
,servdb
。
开始创建数据库:
输入指定的数据库实例名称:
后面的界面是配置:字符集,内存,进程数等,就不一一列出,可以参看以前我写的数据库【Oracle11g和Oracle10g】安装的文档。
安装完毕之后,可以继续调用dbca
,看到三个实例是否安装成功。
2.环境变量配置
由于数据库是多实例。因此,需要对应的sid才能进入对应的数据库实例里面,配置的环境变量如下:
[root@arprac02 expbackup]# su - oracle
[oracle@arprac02 ~]$ pwd
/home/oracle
[oracle@arprac02 ~]$ cat .bash_profile
###添加如下内容
export ORACLE_BASE=/u01/app/oracle
export ORACLE_HOME=$ORACLE_BASE/product/10.2.0/db_1
export NLS_LANG="AMERICAN_AMERICA.zhs16gbk"
export ORACLE_SID=irc3db
export PATH=$ORACLE_HOME/bin:$PATH:$ORA_CRS_HOME/bin:/usr/bin:/usr/X11R6/bin:/bin:/sbin
export LD_LIBRARY_PATH=$ORA_CRS_HOME/lib:$ORACLE_HOME/lib:/usr/lib:/usr/local/lib
export TNS_ADMIN=$ORACLE_HOME/network/admin
其中export ORACLE_SID=irc3db
,根据指定不同的实例进行修改。
3.修改SGA内存
新建的虚拟机,增加内存。可能会报如下错误:
- 使用dbca安装数据库时报错"SGA size can not be greater than、ORA-27102"
- ORA-27102: out of memory
虽然服务器增加了内存,但是内存要达到最大功效,需要修改内核参数,这是重点,要记得,考试会考
kernel.shmmax
是核心参数中最重要的参数之一,用于定义单个共享内存段的最大值。设置应该足够大,能在一个共享内存段下容纳下整个的 SGA , 设置的过低可能会导致需要创建多个共享内存段,这样可能导致系统性能的下降。至于导致系统下降的主要原因为在实例启动以及 ServerProcess 创建的时候,多个小的共享内存段可能会导致当时轻微的系统性能的降低 ( 在启动的时候需要去创建多个虚拟地址段,在进程创建的时候要让进程对多个段进行“识别”,会有一些影响 ) ,但是其他时候都不会有影响。
官方建议值:
1 内存为 12G 时,该值为 12*1024*1024*1024-1 = 12884901887
2 内存为 16G 时,该值为 16*1024*1024*1024-1 = 17179869183
3 内存为 32G 时,该值为 32*1024*1024*1024-1 = 34359738367
4 内存为 64G 时,该值为 64*1024*1024*1024-1 = 68719476735
5 内存为 128G 时,该值为 128*1024*1024*1024-1 = 137438953471
kernel.shmall
:
该参数控制可以使用的共享内存的总页数。 Linux 共享内存页大小为 4KB, 共享内存段的大小都是共享内存页大小的整数倍。一个共享内存段的最大大小是16G ,那么需要共享内存页数是 16GB/4KB==4194304 (页),
官方建议值:
1 当内存为 12G 时, kernel.shmall = 3145728
2 当内存为 16G 时, kernel.shmall = 4194304
3 当内次为 32G 时, kernel.shmall = 8388608
4 当内存为 64G 时, kernel.shmall = 16777216
5 当内存为 128G 时, kernel.shmall = 33554432
因此,修改SGA
的时候,要考虑的内核参数的修改。
以上是关于OracleOracle数据库多实例安装的主要内容,如果未能解决你的问题,请参考以下文章