Re: OAS DAD problem

From: Frank <fbortel_at_nescape.net>
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 - Production
To 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 Bortel
Received on Sat Dec 06 2003 - 17:30:49 CET

Original text of this message