Re: OAS DAD problem
Date: Sat, 06 Dec 2003 17:30:49 +0100
Message-ID: <bqsvnf$b7h$1_at_news3.tilbu1.nb.home.nl>
pixelmeow wrote:
> Hi, all;
>
> I'm working on win2k server, Oracle 8.1.5,
Desupported - was it even released for W2K?
> have just installed WebDB,
ditto
> Oracle App Server 4,
Same here
> and Forms and Reports 6i. You may recall that I
> had problems with Developer Server 6; I downloaded 6i and am in the
> process of trying to get Forms and Reports to the web using what we
> have and with the least amount of upgrading. Not my decision on that
> one...
>
You are downgrading/kludging...
> Anyway, I am working with the OAS Manager and the documentation to get
> the App Server set up. The documentation suggests that Oracle already
> has Apache with it,
That would be the Forms installation mnl.
> which it doesn't, but I do have that installed and
Eh? That would be the 8.1.5 Apache, then? If so - why bother with OAS anyway?
> will be working to hook that up to OAS using documentation on OTN.
> But I can't add a DAD because I keep getting the 12154 error.
Looked it up for you (sorry, wraps):
12154, 00000, "TNS:could not resolve service name"
// *Cause: The service name specified is not defined correctly in the // TNSNAMES.ORA file. // *Action: Make the following checks and correct the error: // - Verify that a TNSNAMES.ORA file exists and is in the proper // place and accessible. See the operating system specific manual // for details on the required name and location. // - Check to see that the service name exists in one of the // TNSNAMES.ORA files and add it if necessary. // - Make sure there are no syntax errors anywhere in the file. // Particularly look for unmatched parentheses or stray characters. // Any error in a TNSNAMES.ORA file makes it unusable. See // Chapter 4 in the SQL*Net V2 Administrator's Guide. If // possible, regenerate the configuration files using the Oracle // Network Manager.
> I have
> run a search for all instances of TNSNAMES.ORA and made sure that the
> connect string is in each one, either in the <name> form or the
> <name.world> form, whichever the rest of the examples have. I am
> still getting this error.
1) is there *any* SQL, that actually can connect to your local db?
2) is your domain .world? Guess not.
>
> I also have the Web Applications 101 book, which is very helpful but
> for 9iAS. It advised the TNS_ADMIN value in the registry to direct
> everything to one TNSNAMES file, which I tried, but that made my
> Instance Manager get the 12154 error even though the file everyone was
> pointing to was in the ORA_HOME directory for OEM!
>
> Anyway, this is very frustrating and I would greatly appreciate any
> ideas. I have looked at the link from Google that Norman describes
> how to do this sort of thing, but the DAD is in the Apache directory,
> so does that mean I need to install Apache in the Shared Oracle
> directory?
>
> Thank you all so much for all your help.
>
Oh dear... comments embedded, trouble shooting below:
-
[Quoted]
- decide an a network configuration directory, no, make that: create one. [Quoted]
- fire up your favorite registry tool. Add, or edit the String Value (REG_SZ type) of TNS_ADMIN. The value would be the newly created directory name, without an ending backslash. Do this in every HLM\Software\Oracle\HomeX (x from 0 to 99), as well as in HLM\Software\Oracle (V7 network looks here.) Close this tool. [Quoted]
- Copy TNSNAMES.ORA, LISTENER.ORA and SQLNET.ORA over to this directory, preferably from a directory you *think* is correct. [Quoted]
- Check if you can still start the listener, check it's status
first:
c:> lsntctl status - it should respond with something like:
STATUS of the LISTENER
[Quoted] Alias LISTENER Version TNSLSNR for 32-bit Windows: Version 8.1.7.4.0 <snipped> Listener Parameter File D:\oracle\9iAS\network\ADMIN\listener.ora Listener Log File D:\oracle\817\network\log\listener.log Listening Endpoints Summary... (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(PIPENAME=\\.\pipe\EXTPROC1ipc))) (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=cs-frank02.cs.nl)(PORT=1521))) (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(PIPENAME=\\.\pipe\rcvipc))) (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(PIPENAME=\\.\pipe\iasdbipc))) (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(PIPENAME=\\.\pipe\demoipc))) (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(PIPENAME=\\.\pipe\db920ipc))) <snipped>
[Quoted] The points of interest are the parameter file and the
Endpoint summary.
This parameter file looks OK - the listener is up and running,
and servers 4 instances.
Keep this file (listener.ora)
* Stop it: c:> lsntctl stop
* Start it up again: c:> lsntctl start - the response should be the
same as above, but now using the newly created directory as location
of the parameter file.
* If this works - fine! You TNS_ADMIN settings work for the listener!
Time to move on.
[Quoted] [Quoted] * Check is SQLNET.ORA and TNSNAMES.ORA are OK:
* c:> sqlplus scott/tiger_at_your_local_instance
This should work.
[Quoted] If it does, keep those SQLNET.ORA and TNSNAMES.ORA files. If not, try: c:> set oracle_sid=(the name of the SID) c:> sqlplus scott/tiger - you now use BEQ protocol, bypassing tnsnames and sqlnet.ora If that works, at least your instance is up (and has a scott account). * Testing the network: What are we called? C:\>hostname cs-frank02 * Are we configured properly? C:\>ping cs-frank02 Pinging cs-frank02.cs.nl [192.168.1.102] with 32 bytes of data Response from 192.168.1.102: bytes=32 time<10 ms TTL=64 * Is TNS configured properly? tnsping demo (pls note: this is the third line from the services summary of the listener - so that should not be a problem!) <snipped version> Used parameter files: D:\oracle\9iAS\network\ADMIN\sqlnet.ora D:\oracle\9iAS\network\ADMIN\tnsnames.ora <always nice to know - should be the TNS_ADMIN directory!!!> Used TNSNAMES adapter to resolve the alias <snipped the actual connect data> OK (60 msec) [Quoted] * Hmmm - looks OK, doesn't it? C:\>sqlplus scott/tiger_at_demo ERROR: ORA-12514: TNS:listener could not resolve SERVICE_NAME given in connect descriptor. * Open TNSNAMES.ORA:
DEMO.CS.NL =
(DESCRIPTION =
(ADDRESS_LIST = (ADDRESS = (PROTOCOL = IPC)(KEY = demo)) (ADDRESS = (PROTOCOL = TCP)(HOST = cs-frank02)(PORT = 1521)) ) (CONNECT_DATA = (SERVICE_NAME = demo) ) ) * Now, you know for sure, this is the SID used when you created the database... startup nomount pfile="D:\oracle\admin\demo\pfile\init.ora" CREATE DATABASE demo Yep, there it is. * HOWEVER, look in init.ora: service_names = demo.cs.nl Align tnsnames with that: (SERVICE_NAME = demo.cs.nl) * Connected to: Oracle8i Enterprise Edition Release 8.1.7.4.1 - ProductionTo prove the point:
select * from global_name;
GLOBAL_NAME
DEMO.CS.NL In short: make sure the servicename is what you qualified as servicename in init.ora.
Alternatively, change tnasnames to read:
(CONNECT_DATA = (SID = demo)
-- Regards, Frank van BortelReceived on Sat Dec 06 2003 - 17:30:49 CET