很多人都对oracle都知道oracle坏块有逻辑坏块和物理坏块之分,其实根据物理和逻辑坏块的分类,还可以继续分下去;对于坏块的检查,很多人知道物理和逻辑坏块使用dbv和rman检测,那其他种类的坏块该怎么办呢?这篇文章整理自MOS,给大家整理个分析坏块的思路,在后续文章中,会给出各种坏块的解决思路
附件:hout和hcheck
Daily Archives: 2012 年 03 月 20 日
IP=FIRST作用说明
我相信细心的朋友,估计都会发现我们在使用netca创建rac(10g/11g)的监听的时候,会发现 IP=FIRST,如下面展示
LISTENER_VENUS =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = racnode1-vip)(PORT = 1521)(IP = FIRST))
(ADDRESS = (PROTOCOL = TCP)(HOST = racnode1)(PORT = 1521)(IP = FIRST))
)
)
)
那么 IP=FIRST表示什么含义呢?我通过下面的试验证明
1. 主机相关配置
[oracle@localhost ~]$ hostname
localhost.localdomain
[oracle@localhost ~]$ more /etc/hosts
127.0.0.1 localhost.localdomain localhost
[oracle@localhost ~]$ /sbin/ifconfig
eth0 Link encap:Ethernet HWaddr 00:15:17:67:9C:39
inet addr:192.168.8.121 Bcast:192.168.15.255 Mask:255.255.248.0
inet6 addr: fe80::215:17ff:fe67:9c39/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:378351781 errors:0 dropped:0 overruns:0 frame:0
TX packets:357773718 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:100
RX bytes:65412948319 (60.9 GiB) TX bytes:92608894986 (86.2 GiB)
Base address:0x1100 Memory:88020000-88040000
eth0:0 Link encap:Ethernet HWaddr 00:15:17:67:9C:39
inet addr:202.91.244.3 Bcast:202.91.247.255 Mask:255.255.248.0
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
Base address:0x1100 Memory:88020000-88040000
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:40636368 errors:0 dropped:0 overruns:0 frame:0
TX packets:40636368 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:3385490475 (3.1 GiB) TX bytes:3385490475 (3.1 GiB)
2. 当前监听配置
SID_LIST_LISTENER =
(SID_LIST =
(SID_DESC =
(SID_NAME = mcrm)
(ORACLE_HOME = /opt/oracle/product/10.2.0/db_1)
(GLOBAL_DBNAME =mcrm)
)
)
LISTENER =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = localhost.localdomain)(PORT = 1521) )
)
)
3. 监听状态
[oracle@localhost ~]$ lsnrctl status LSNRCTL for Linux: Version 10.2.0.4.0 - Production on 20-MAR-2012 00:17:04 Copyright (c) 1991, 2007, Oracle. All rights reserved. Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=localhost.localdomain)(PORT=1521))) STATUS of the LISTENER ------------------------ Alias LISTENER Version TNSLSNR for Linux: Version 10.2.0.4.0 - Production Start Date 03-MAR-2012 23:56:18 Uptime 16 days 0 hr. 20 min. 45 sec Trace Level off Security ON: Local OS Authentication SNMP OFF Listener Parameter File /opt/oracle/product/10.2.0/db_1/network/admin/listener.ora Listener Log File /opt/oracle/product/10.2.0/db_1/network/log/listener.log Listening Endpoints Summary... (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=localhost.localdomain)(PORT=1521))) Services Summary... Service "mcrm" has 2 instance(s). Instance "mcrm", status UNKNOWN, has 1 handler(s) for this service... Instance "mcrm", status READY, has 1 handler(s) for this service... Service "mcrmXDB" has 1 instance(s). Instance "mcrm", status READY, has 1 handler(s) for this service... Service "mcrm_XPT" has 1 instance(s). Instance "mcrm", status READY, has 1 handler(s) for this service... The command completed successfully
这里可以看出来监听的还是(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=localhost.localdomain)(PORT=1521))),也就是说监听的是主机名
4. 当前监听IP和端口
[oracle@localhost ~]$ netstat -an |grep 1521|grep LISTEN tcp 0 0 0.0.0.0:1521 0.0.0.0:* LISTEN
这里看出来,监听所有网卡
5. 修改监听文件
SID_LIST_LISTENER =
(SID_LIST =
(SID_DESC =
(SID_NAME = mcrm)
(ORACLE_HOME = /opt/oracle/product/10.2.0/db_1)
(GLOBAL_DBNAME =mcrm)
)
)
LISTENER =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = localhost.localdomain)(PORT = 1521) (IP=FIRST) )
)
)
6. 重启监听
[oracle@localhost ~]$ lsnrctl stop LSNRCTL for Linux: Version 10.2.0.4.0 - Production on 20-MAR-2012 00:18:42 Copyright (c) 1991, 2007, Oracle. All rights reserved. Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=localhost.localdomain)(PORT=1521)(IP=FIRST))) The command completed successfully [oracle@localhost ~]$ lsnrctl start LSNRCTL for Linux: Version 10.2.0.4.0 - Production on 20-MAR-2012 00:18:47 Copyright (c) 1991, 2007, Oracle. All rights reserved. Starting /opt/oracle/product/10.2.0/db_1/bin/tnslsnr: please wait... TNSLSNR for Linux: Version 10.2.0.4.0 - Production System parameter file is /opt/oracle/product/10.2.0/db_1/network/admin/listener.ora Log messages written to /opt/oracle/product/10.2.0/db_1/network/log/listener.log Listening on: (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=127.0.0.1)(PORT=1521))) Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=localhost.localdomain)(PORT=1521)(IP=FIRST))) STATUS of the LISTENER ------------------------ Alias LISTENER Version TNSLSNR for Linux: Version 10.2.0.4.0 - Production Start Date 20-MAR-2012 00:18:48 Uptime 0 days 0 hr. 0 min. 0 sec Trace Level off Security ON: Local OS Authentication SNMP OFF Listener Parameter File /opt/oracle/product/10.2.0/db_1/network/admin/listener.ora Listener Log File /opt/oracle/product/10.2.0/db_1/network/log/listener.log Listening Endpoints Summary... (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=127.0.0.1)(PORT=1521))) Services Summary... Service "PLSExtProc" has 1 instance(s). Instance "PLSExtProc", status UNKNOWN, has 1 handler(s) for this service... Service "mcrm" has 1 instance(s). Instance "mcrm", status UNKNOWN, has 1 handler(s) for this service... The command completed successfully
通过(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=127.0.0.1)(PORT=1521))),已经发现,这里只监听127.0.0.1
7. 查看监听IP和端口
[oracle@localhost ~]$ netstat -an |grep 1521|grep LISTEN tcp 0 0 127.0.0.1:1521 0.0.0.0:* LISTEN
这里进一步验证监听的ip地址已经只有了127.0.0.1而没有了其他网卡的地址
总结说明
通过这里的试验证明IP = FIRST的作用使得当我们使用主机名为监听中的host配置的时候,它只会监听hostname解析出来的ip地址,而不是默认情况下所有网卡地址。
