(一)、资源
1.下面是安装包下载地址
https://www.oracle.com/technetwork/database/enterprise-edition/downloads/index.html
2.下面这篇博文比较完美的介绍了安装过程,此处就不再赘述。
https://blog.csdn.net/muluo7fen/article/details/72654265
(二)问题与总结
1.修改环境变量(.bash_profile)时行与行之间一定不能有空行。否则在source .bash_profile时会报错

2.ORACLE监听器 The listener supports no services 问题

解决方法:在LISTENER(/home/oracle_data/oracle/product/11.2.0/db_1/network/admin/listener.ora)里添加内容:
SID_LIST_LISTENER=
(SID_LIST=
(SID_DESC=
#BEQUEATH CONFIG
(GLOBAL_DBNAME=orcl)
(SID_NAME=orcl)
(ORACLE_HOME=/home/oracle_data/oracle/product/11.2.0/db_1/)
#PRESPAWN CONFIG
(PRESPAWN_MAX=20)
(PRESPAWN_LIST=
(PRESPAWN_DESC=(PROTOCOL=tcp)(POOL_SIZE=2)(TIMEOUT=1))
)
)
)
3.执行dbca -slient -responseFile /usr/local/src/database/response/dbca.rsp这一句时,报错
Set DISPLAY environment variable, then re-run.
解决方法:export DISPLAY=172.20.1.1:1.0
设置DISPLAY为IP地址加上1.0
4.执行dbca -slient -responseFile /usr/local/src/database/response/dbca.rsp产生错误日志文件
SGA 大小不能大于最大共享内存段大小 (2097152).
解决方法:
vi /etc/sysctl.conf
其中有两个参数:
kernel.shmmax:
是核心参数中最重要的参数之一,用于定义单个共享内存段的最大值。设置应该足够大,能在一个共享内存段下容纳下整个的SGA ,设置的过低可能会导致需要创建多个共享内存段,这样可能导致系统性能的下降。至于导致系统下降的主要原因为在实例启动以及ServerProcess创建的时候,多个小的共享内存段可能会导致当时轻微的系统性能的降低(在启动的时候需要去创建多个虚拟地址段,在进程创建的时候要让进程对多个段进行“识别”,会有一些影响),但是其他时候都不会有影响。
官方建议值:
32位linux系统:可取最大值为4GB(4294967296bytes)-1byte,即4294967295。建议值为多于内存的一半,所以如果是32为系统,一般可取值为4294967295。32位系统对SGA大小有限制,所以SGA肯定可以包含在单个共享内存段中。
64位linux系统:可取的最大值为物理内存值-1byte,建议值为多于物理内存的一半,一般取值大于SGA_MAX_SIZE即可,可以取物理内存-1byte。例如,如果为12GB物理内存,可取12*1024*1024*1024-1=12884901887,SGA肯定会包含在单个共享内存段中。
kernel.shmall:
该参数控制可以使用的共享内存的总页数。Linux共享内存页大小为4KB,共享内存段的大小都是共享内存页大小的整数倍。一个共享内存段的最大大小是16G,那么需要共享内存页数是16GB/4KB=16777216KB /4KB=4194304(页),也就是64Bit系统下16GB物理内存,设置kernel.shmall = 4194304才符合要求(几乎是原来设置2097152的两倍)。这时可以将shmmax参数调整到16G了,同时可以修改SGA_MAX_SIZE和SGA_TARGET为12G(您想设置的SGA最大大小,当然也可以是2G~14G等,还要协调PGA参数及OS等其他内存使用,不能设置太满,比如16G)
5.系统标识符(SID)"orcl"已经存在,请指定另一个SID
解决方法:/etc/oratab 删除或者注释对应的sid行
