vBulletin Search Engine Optimization
| |||||||
| Register | FAQ | Members List | Calendar | Search | Today's Posts | Mark Forums Read |
| ||||
| Hi all. I'm trying to configure a listener between a couple of servers and am having all sorts of issues. I'm quite new at this and was hoping someone could shed some light on the way listeners work. I have the master database (db1) in which I want to create links to DBs on slave boxes (db2 & db3) _______ | | |---> db2 | db1 |----------| |_____| |---> db3 The DBs are part of a distributed application, and the parts are installed automatically. I have a listener.ora file on all 3 boxes and they are all the same. However, the lsnrctl executable is only available on db1. The listener.ora file contains info for db2 and db3. Do I need listeners on all 3 servers? There is no db1 listener on the db1 server, as shown by the listener.ora file. I created the link to db2 from db1 by the command: CREATE DATABASE LINK db2 CONNECT TO db1 IDENTIFIED BY db1 USING ' db2.world'; When I try to start the listener for db2 or db3 on the db1 server I get: -------------------------------- ocs-smp linus>lsnrctl start db2_SEF LSNRCTL for Solaris: Version 8.1.7.2.0 - Production on 06-JAN-2006 10:21:17 (c) Copyright 1998 Oracle Corporation. All rights reserved. Starting /in/oracle/bin/tnslsnr: please wait... TNSLSNR for Solaris: Version 8.1.7.2.0 - Production System parameter file is /in/oracle/network/admin/listener.ora Log messages written to /dev/null Attempted to listen on: (ADDRESS=(COMMUNITY=TCP.world)(PROTOCOL=TCP)(Host= db2_net8)(Port=1526)) TNS-12545: Connect failed because target host or object does not exist TNS-12560: TNS TNS-00515: Connect failed because target host or object does not exist Solaris Error: 126: Cannot assign requested address -------------------------------- If I could understand exactly what is supposed to be happening, it might help me figure out what changes need to be made. Sorry if this is a bit confusing. It is for me as well. Thanks. |
| |||
| Ben Bowen wrote: > Hi all. I'm trying to configure a listener between a couple of servers > and am having all sorts of issues. I'm quite new at this and was hoping > someone could shed some light on the way listeners work. I have the > master database (db1) in which I want to create links to DBs on slave > boxes (db2 & db3) > > _______ > | | |---> db2 > | db1 |----------| > |_____| |---> db3 > > The DBs are part of a distributed application, and the parts are > installed automatically. I have a listener.ora file on all 3 boxes and > they are all the same. However, the lsnrctl executable is only > available on db1. The listener.ora file contains info for db2 and db3. > > Do I need listeners on all 3 servers? There is no db1 listener on the > db1 server, as shown by the listener.ora file. I created the link to > db2 from db1 by the command: > > CREATE DATABASE LINK db2 CONNECT TO db1 IDENTIFIED BY db1 USING ' > db2.world'; > > > When I try to start the listener for db2 or db3 on the db1 server I > get: > > -------------------------------- > ocs-smp linus>lsnrctl start db2_SEF > > LSNRCTL for Solaris: Version 8.1.7.2.0 - Production on 06-JAN-2006 > 10:21:17 > > (c) Copyright 1998 Oracle Corporation. All rights reserved. > > Starting /in/oracle/bin/tnslsnr: please wait... > > TNSLSNR for Solaris: Version 8.1.7.2.0 - Production > System parameter file is /in/oracle/network/admin/listener.ora > Log messages written to /dev/null > Attempted to listen on: > (ADDRESS=(COMMUNITY=TCP.world)(PROTOCOL=TCP)(Host= db2_net8)(Port=1526)) > TNS-12545: Connect failed because target host or object does not exist > TNS-12560: TNS > TNS-00515: Connect failed because target host or object does not > exist > Solaris Error: 126: Cannot assign requested address > -------------------------------- > > If I could understand exactly what is supposed to be happening, it > might help me figure out what changes need to be made. Sorry if this is > a bit confusing. It is for me as well. > > Thanks. > What does a 'ping db2_net8' reveal? Looks like yous hosts file, or dns entries, are off: TNS-12545: Connect failed because target host or object does not exist Besides, listeners run on the server, so you want to fire up a db2 listener ON the db2 machine. Same for db3. PS follow-up set to cdo.server -- Regards, Frank van Bortel Top-posting is one way to shut me up... |
| |||
| Thanks for the response. Sorry for the delay in mine. Weekends. Ok. The ping db2_net8 worked fine. I'm not using DNS, all of the entries are in my /etc/hosts files. >Besides, listeners run on the server, so you want to fire up >a db2 listener ON the db2 machine. Same for db3. That's good to know. I checked on the db2 machine and the 1st thing I saw was the listener.ora wasn't there (rather, the link was missing). I linked it properly and got a bit further. It then told me the executable was missing. I'm not too surprised by this as I said the lnsrctl executable was missing, who knows what else was. I tar'ed the .../oracle/bin directory from the master(db1) and brought it over to the db2. Lo and behold the listener now starts (output below). Unfortunately, that's not the end of the troubles. I have created the link on db1 as described in my 1st post. When I attempt to do a desc on the linked table I get the following. Is there any way to debug this one? Thanks again! SQL> desc config@db2; ERROR: ORA-02068: following severe error from db2 ORA-03114: not connected to ORACLE ------------------------------ Defence off. db2>lsnrctl start ocs-slee1_SEF LSNRCTL for Solaris: Version 8.1.7.2.0 - Production on 09-JAN-2006 10:07:27 (c) Copyright 1998 Oracle Corporation. All rights reserved. Starting /in/oracle/bin/tnslsnr: please wait... TNSLSNR for Solaris: Version 8.1.7.2.0 - Production System parameter file is /in/oracle/network/admin/listener.ora Log messages written to /dev/null Listening on: (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=ocs-slee1)(PORT=1526))) Connecting to (ADDRESS=(COMMUNITY=TCP.world)(PROTOCOL=TCP)(Host= ocs-slee1_net8)(Port=1526)) STATUS of the LISTENER ------------------------ Alias db_SEF Version TNSLSNR for Solaris: Version 8.1.7.2.0 - Production Start Date 09-JAN-2006 10:07:27 Uptime 0 days 0 hr. 0 min. 0 sec Trace Level off Security OFF SNMP OFF Listener Parameter File /in/oracle/network/admin/listener.ora Listener Log File /dev/null Services Summary... db2 has 1 service handler(s) |
| ||||
| Ben Bowen wrote: > That's good to know. I checked on the db2 machine and the 1st thing I > saw was the listener.ora wasn't there (rather, the link was missing). I > linked it properly and got a bit further. It then told me the > executable was missing. I'm not too surprised by this as I said the > lnsrctl executable was missing, who knows what else was. I tar'ed the > ../oracle/bin directory from the master(db1) and brought it over to the > db2. Lo and behold the listener now starts (output below). > > Unfortunately, that's not the end of the troubles. I have created the > link on db1 as described in my 1st post. When I attempt to do a desc on > the linked table I get the following. Is there any way to debug this > one? Thanks again! > > > SQL> desc config@db2; > ERROR: > ORA-02068: following severe error from db2 > ORA-03114: not connected to ORACLE > NOT the way to install Oracle on db2 or db3 - just tarring and hoping everything will be OK. A Unix sysadmin will probably know what to do, like relinking, but judging your self proclaimed lack of Oracle knowledge, I can only suggest to fire up the installer, and perform a proper install on the db2 and db3 machines. Then again, you said it was (part of) a distributed (and 'automagically' configured) installation. I suggest you find out how oracle was installed on db2 and db3, what instances are running, and what their network aliases are. If this is already setup and running, someone must be able to connect to db2 (and db3)! -- Regards, Frank van Bortel Top-posting is one way to shut me up... |