Oracle 11g数据库启动错误总结
1.启动数据库时提示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小就会报错)
图:
解决方法:
[root@CentOS ~]# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/VolGroup-lv_root 25G 11G 14G 45% /
tmpfs 1.0G 751M 274M 74% /dev/shm --是因为个值小了
/dev/sda1 485M 30M 430M 7% /boot
/dev/sr0 3.6G 3.6G 0 100% /media/CentOS_6.4_Final
[root@centos ~]# mount -o remount,size=2G /dev/shm --修改大小,就不会报错了
[root@centos ~]# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/VolGroup-lv_root
25G 11G 14G 45% /
tmpfs 2.0G 751M 1.3G 37% /dev/shm
/dev/sda1 485M 30M 430M 7% /boot
/dev/sr0 3.6G 3.6G 0 100% /media/CentOS_6.4_Final
[root@centos ~]#
测试:
2.启动oem控制界面出错
[oracle@centos ~]$ emctl stop dbconsole
Oracle Enterprise Manager 11g Database Control Release 11.2.0.1.0
Copyright (c) 1996, 2009 Oracle Corporation. All rights reserved.
https://centos:1158/em/console/aboutApplication
Stopping Oracle Enterprise Manager 11g Database Control ...
... Stopped.
[oracle@centos ~]$ emctl start dbconsole
Oracle Enterprise Manager 11g Database Control Release 11.2.0.1.0
Copyright (c) 1996, 2009 Oracle Corporation. All rights reserved.
https://centos:1158/em/console/aboutApplication
Starting Oracle Enterprise Manager 11g Database Control
....................................................................................
......... failed.
------------------------------------------------------------------
Logs are generated in directory /home/oracle/app/oracle/product/11.2.0/dbhome_1/centos_orcl/sysman/log
[oracle@centos ~]$ tailf -n 3 /home/oracle/app/oracle/product/11.2.0/dbhome_1/centos_orcl/sysman/log/emdctl.trc --查看最后3行日志,提示路由和主机错误
2014-01-23 14:54:47,568 Thread-3032057536 WARN http: nmehl_connect_internal: connect failed to (centos:1158): No route to host (error = 113)
2014-01-23 15:02:50,071 Thread-3032803008 WARN http: nmehl_connect_internal: connect failed to (centos:3938): No route to host (error = 113)
2014-01-23 15:02:50,073 Thread-3032803008 ERROR main: nmectla_agentctl: Error connecting to https://centos:3938/emd/main. Returning status code 1
解决方法:
[root@centos ~]# ifconfig eth1 --检查服务器的路由和主机IP地址,最好设置为静态的
eth1 Link encap:Ethernet HWaddr 08:00:27:5C:4A:F6
inet addr:2.2.2.114 Bcast:2.2.2.255 Mask:255.255.255.0
inet6 addr: fe80::a00:27ff:fe5c:4af6/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:88220 errors:0 dropped:0 overruns:0 frame:0
TX packets:43011 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:6611001 (6.3 MiB) TX bytes:29439365 (28.0 MiB)
[root@centos ~]# route -n
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
2.2.2.0 0.0.0.0 255.255.255.0 U 1 0 0 eth1
0.0.0.0 2.2.2.1 0.0.0.0 UG 0 0 0 eth1
[root@centos ~]#
测试:
[oracle@centos ~]$ emctl start dbconsole --启动成功了
Oracle Enterprise Manager 11g Database Control Release 11.2.0.1.0
Copyright (c) 1996, 2009 Oracle Corporation. All rights reserved.
https://centos:1158/em/console/aboutApplication
Starting Oracle Enterprise Manager 11g Database Control ........ started.
------------------------------------------------------------------
Logs are generated in directory /home/oracle/app/oracle/product/11.2.0/dbhome_1/centos_orcl/sysman/log
[oracle@centos ~]$
3.控制文件丢失(由于控制文件丢失,数据库无法启动)
1234567891011121314 [oracle@centos ~]$ sqlplus
SQL*Plus: Release 11.2.0.1.0 Production on Sat Jan 25 09:31:04 2014
Copyright (c) 1982, 2009, Oracle. All rights reserved.
Enter user-name: / as sysdba
Connected to an idle instance.
SQL> startup
ORACLE instance started.
Total System Global Area 661209088 bytes
Fixed Size 1338560 bytes
Variable Size 494928704 bytes
Database Buffers 159383552 bytes
Redo Buffers 5558272 bytes
ORA-00205: error in identifying control file, check alert log for more info
SQL>
解决方法:
[oracle@centos ~]$ ll app/oracle/oradata/orcl/control011.ctl --查看两个控制文件名
-rw-r----- 1 oracle oinstall 9748480 Jan 25 09:30 app/oracle/oradata/orcl/control011.ctl
[oracle@centos ~]$
[oracle@centos ~]$ ll app/oracle/flash_recovery_area/orcl/control02.ctl
-rw-r-----. 1 oracle oinstall 9748480 Jan 25 09:30 app/oracle/flash_recovery_area/orcl/control02.ctl
[oracle@centos ~]$ vim app/oracle/product/11.2.0/dbhome_1/dbs/initorcl.ora --打开配置文件看是否控制文件名写对了没有
*.control_files='/home/oracle/app/oracle/oradata/orcl/control01.ctl','/home/oracle/app/oracle/flash_recovery_area/orcl/control02.ctl' --第一个控制文件名错了,改对就可以了
测试:
[oracle@centos ~]$ sqlplus
SQL*Plus: Release 11.2.0.1.0 Production on Sat Jan 25 09:42:31 2014
Copyright (c) 1982, 2009, Oracle. All rights reserved.
Enter user-name: / as sysdba
Connected to:
Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options
SQL>