1.由于把Centos5.8的ip改为动态ip,所引起的一系列错误
今天在打开oracle遇到的错误如下:
oracle@oracle Desktop]$ sqlplus / as sysdba SQL*Plus: Release 11.2.0.1.0 Production on Wed Apr 30 21:15:36 2014 Copyright (c) 1982, 2009, Oracle. All rights reserved. Connected to an idle instance. SQL> startup ORA-01078: failure in processing system parameters ORA-01565: error in identifying file '+DATA/orcl/spfileorcl.ora' ORA-17503: ksfdopn:2 Failed to open file +DATA/orcl/spfileorcl.ora ORA-15077: could not locate ASM instance serving a required diskgroup
2. 发现asm没有启动,尝试启动asm
[grid@oracle ~]$ sqlplus / as sysasm SQL*Plus: Release 11.2.0.1.0 Production on Wed Apr 30 21:16:11 2014 Copyright (c) 1982, 2009, Oracle. All rights reserved. Connected to an idle instance. SQL> startup ORA-00119: invalid specification for system parameter LOCAL_LISTENER ORA-00130: invalid listener address '(ADDRESS=(PROTOCOL=TCP)(HOST=oracle)(PORT=1521))'
3. 发现监听没有启动
[grid@oracle ~]$ lsnrctl start LSNRCTL for Linux: Version 11.2.0.1.0 - Production on 30-APR-2014 21:16:21 Copyright (c) 1991, 2009, Oracle. All rights reserved. Starting /u01/grid/product/bin/tnslsnr: please wait... TNSLSNR for Linux: Version 11.2.0.1.0 - Production Log messages written to /u01/grid/diag/tnslsnr/oracle/listener/alert/log.xml Error listening on: (ADDRESS=(PROTOCOL=tcp)(HOST=)(PORT=1521)) TNS-12545: Connect failed because target host or object does not exist TNS-12560: TNS:protocol adapter error TNS-00515: Connect failed because target host or object does not exist Listener failed to start. See the error message(s) above...
4. 发现原来找到不主机名
[root@oracle ~]# cat /etc/hosts 127.0.0.1 localhost.localdomain localhost
5. 添加主机名
[root@oracle ~]# cat /etc/hosts 127.0.0.1 localhost.localdomain localhost 192.168.10.239 oracle6. 尝试打开监听服务
[grid@oracle ~]$ lsnrctl start LSNRCTL for Linux: Version 11.2.0.1.0 - Production on 30-APR-2014 21:58:19 Copyright (c) 1991, 2009, Oracle. All rights reserved. Starting /u01/grid/product/bin/tnslsnr: please wait... TNSLSNR for Linux: Version 11.2.0.1.0 - Production Log messages written to /u01/grid/diag/tnslsnr/oracle/listener/alert/log.xml Error listening on: (ADDRESS=(PROTOCOL=tcp)(HOST=)(PORT=1521)) TNS-12542: TNS:address already in use TNS-12560: TNS:protocol adapter error TNS-00512: Address already in use Linux Error: 98: Address already in use Listener failed to start. See the error message(s) above...
7.监听已经使用了,查看下所占用监听的ip
[grid@oracle ~]$ netstat -an | grep 1521 tcp 0 0 192.168.10.239:28304 192.168.1.113:1521 ESTABLISHED8.占用1521端口的居然ip是192.168.1.113,查看ip
[grid@oracle ~]$ ifconfig eth0 Link encap:Ethernet HWaddr 00:0C:29:22:05:E6 inet addr:192.168.1.113 Bcast:255.255.255.255 Mask:255.255.255.0 inet6 addr: fe80::20c:29ff:fe22:5e6/64 Scope:Link UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:3185 errors:0 dropped:0 overruns:0 frame:0 TX packets:1164 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:520785 (508.5 KiB) TX bytes:206906 (202.0 KiB) lo Link encap:Local Loopback inet addr:127.0.0.1 Mask:255.0.0.0 inet6 addr: ::1/128 Scope:Host UP LOOPBACK RUNNING MTU:16436 Metric:1 RX packets:1285 errors:0 dropped:0 overruns:0 frame:0 TX packets:1285 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:0 RX bytes:89728 (87.6 KiB) TX bytes:89728 (87.6 KiB)
9.系统ip居然是192.168.1.113,原来之前的192.168.10.239是上一次使用的ip(我系统使用的是动态ip),修改ip如下
[root@oracle ~]# cat /etc/hosts 127.0.0.1 localhost.localdomain localhost #192.168.10.239 oracle 192.168.1.113 oracle
10.启动监听
[grid@oracle ~]$ lsnrctl start LSNRCTL for Linux: Version 11.2.0.1.0 - Production on 30-APR-2014 21:17:31 Copyright (c) 1991, 2009, Oracle. All rights reserved. Starting /u01/grid/product/bin/tnslsnr: please wait... TNSLSNR for Linux: Version 11.2.0.1.0 - Production Log messages written to /u01/grid/diag/tnslsnr/oracle/listener/alert/log.xml Listening on: (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=oracle)(PORT=1521))) Connecting to (ADDRESS=(PROTOCOL=tcp)(HOST=)(PORT=1521)) STATUS of the LISTENER ------------------------ Alias LISTENER Version TNSLSNR for Linux: Version 11.2.0.1.0 - Production Start Date 30-APR-2014 21:17:31 Uptime 0 days 0 hr. 0 min. 0 sec Trace Level off Security ON: Local OS Authentication SNMP OFF Listener Log File /u01/grid/diag/tnslsnr/oracle/listener/alert/log.xml Listening Endpoints Summary... (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=oracle)(PORT=1521))) The listener supports no services The command completed successfully
11.启动asm
[grid@oracle ~]$ sqlplus / as sysasm SQL*Plus: Release 11.2.0.1.0 Production on Wed Apr 30 21:17:35 2014 Copyright (c) 1982, 2009, Oracle. All rights reserved. Connected to an idle instance. SQL> startup ASM instance started Total System Global Area 283930624 bytes Fixed Size 2212656 bytes Variable Size 256552144 bytes ASM Cache 25165824 bytes ASM diskgroups mounted
12.启动oracle实例
SQL> startup ORACLE instance started. Total System Global Area 835104768 bytes Fixed Size 2217952 bytes Variable Size 587204640 bytes Database Buffers 243269632 bytes Redo Buffers 2412544 bytes Database mounted. Database opened.
至此问题完美解决