当时的场景是:more /etc/hosts 查的结果是 127.0.0.1 localhost 但是主机名显示的是bogon.
root用户查看主机名 # more /proc/sys/kernel/hostname
修改主机名为localhost:echo localhost > /proc/sys/kernel/hostname
安装Oracle时老报错:INS-20802 Oracle Net Configuration Assistant failed
原因是:/etc/hosts 没有bogon 的名字
vi /etc/hosts
加入自己本地ip及对应的名字如:192.168.127.130 bogon
加完安装就不会报错了。
问题一
ORA-01078: failure in processing system parameters
LRM-00109: could not open parameter file '/u01/app/oracle/product/11.0.2.1/dbs/initracl.ora'
常规解决办法:
1.到dbs目录下看看是不是真的缺了文件
cd $ORACLE_HOME/dbs
确实是少了文件initorl.ora,进入2步骤.
2.找到pfile的目录
find /oracle -name pfile
这里"/oracle"是我安装oracle的目录,因人而异,替换成你自己的路径
3.把pfile目录下的 init.ora.729201604627 这样的文件复制一份到dbs目录下
cp /oracle/admin/cms/pfile/init.ora.729201604627 $ORACLE_HOME/dbs
注意替换成自己的路径
4.重命名这个文件为对应的initXXX.ora
mv init.ora.729201604627 initorcl.ora
问题二:
ORA-00845: MEMORY_TARGET not supported on this system
在oracle 11g中新增的内存自动管理的参数MEMORY_TARGET,它能自动调整SGA和PGA,这个特性需要用到/dev/shm共享文件系统,而且要求/dev/shm必须大于MEMORY_TARGET,如果/dev/shm比MEMORY_TARGET小就会报错
解决方案
1.初始化参数MEMORY_TARGET或MEMORY_MAX_TARGET不能大于共享内存(/dev/shm),为了解决这个问题,可以增大/dev/shm
如:
# mount -t tmpfs shmfs -o size=7g /dev/shm
2.为了确保操作系统重启之后能生效,需要修改/etc/fstab文件
shmfs /dev/shm tmpfs size=7g 0
3.如果/dev/shm没有挂载也会报上面的错,所认需要确保已经挂载
oracle@aaaprod-db ~]$ df -h
……
tmpfs 16G 8.9G 7.2G 56% /dev/shm
……
下面为一次操作的记录
[root@aaaprod-db ~]# cat /etc/fstab | grep tmpfs
tmpfs /dev/shm tmpfs defaults,size=8g 0 0
[root@aaaprod-db ~]#
[root@aaaprod-db ~]# mount -o remount,size=16G /dev/shm
[root@aaaprod-db ~]#
[root@aaaprod-db ~]# cat /etc/fstab | grep tmpfs
tmpfs /dev/shm tmpfs defaults,size=8g 0 0
[root@aaaprod-db ~]# vi /etc/fstab
/dev/rootvg/LogVol02 / ext3 defaults 1 1
/dev/rootvg/LogVol01 /tmp ext3 defaults 1 2
/dev/rootvg/lvol0 /ebao ext3 defaults 1 2
/dev/rootvg/lvol1 /backup ext3 defaults 1 2
LABEL=/boot /boot ext3 defaults 1 2
tmpfs /dev/shm tmpfs defaults,size=16g 0 0
devpts /dev/pts devpts gid=5,mode=620 0 0
sysfs /sys sysfs defaults 0 0
proc /proc proc defaults 0 0
/dev/rootvg/LogVol00 swap swap defaults 0 0
"/etc/fstab" 10L, 769C written
[root@aaaprod-db ~]# df -h|grep shm
tmpfs 16G 0 16G 0% /dev/shm
SQL> startup
ORACLE instance started.
Total System Global Area 9420095488 bytes
Fixed Size 2236248 bytes
Variable Size 2315255976 bytes
Database Buffers 7046430720 bytes
Redo Buffers 56172544 bytes
Database mounted.
Database opened.
SQL> exit
问题三:
ORA-01102: cannot mount database in EXCLUSIVE mode
进行oracle用户下:
cd $ORACLE_HOME/dbs
ll查看有一个lkORCL,个人猜测是锁(lock)导致,不清楚对不对
/sbin/fuser -u lkORCL
/sbin/fuser -k lkORCL 把lkORCL杀掉
然后去重启oracle,成功