Strange TNSNAMES.ORA problem

Collapse
This topic is closed.
X
X
 
  • Time
  • Show
Clear All
new posts
  • Adam Ruth

    Strange TNSNAMES.ORA problem

    I'm using OCI on Mac OS X and I've run into a strange problem with my
    TNSNAMES.ORA file.

    My TNSNAMES.ORA file has one entry INV4II and it works fine. However,
    it will only work if that is the name of the entry. If I use any
    other name for that entry I get the dreaded ORA-12154. For example:

    TNSNAMES.ORA -INV4II Application -INV4II :: works fine
    TNSNAMES.ORA -INV4DEV Application -INV4DEV :: ORA-12154
    TNSNAMES.ORA -INV4DEV Application -INV4II :: ORA-12154
    TNSNAMES.ORA -INV4II Application -INV4DEV :: ORA-12154

    It's almost like that name is referenced somewhere else and so
    changing tnsnames.ora isn't sufficient. But I cannot find any other
    file anywhere (client or server) that that contains INV4II.

    I'm a bit confused, and any help would be appreciated.

    Adam Ruth
  • Hans Forbrich

    #2
    Re: Strange TNSNAMES.ORA problem

    Adam Ruth wrote:
    >
    I'm using OCI on Mac OS X and I've run into a strange problem with my
    TNSNAMES.ORA file.
    >
    My TNSNAMES.ORA file has one entry INV4II and it works fine. However,
    it will only work if that is the name of the entry. If I use any
    other name for that entry I get the dreaded ORA-12154. For example:
    >
    TNSNAMES.ORA -INV4II Application -INV4II :: works fine
    TNSNAMES.ORA -INV4DEV Application -INV4DEV :: ORA-12154
    TNSNAMES.ORA -INV4DEV Application -INV4II :: ORA-12154
    TNSNAMES.ORA -INV4II Application -INV4DEV :: ORA-12154
    >
    It's almost like that name is referenced somewhere else and so
    changing tnsnames.ora isn't sufficient. But I cannot find any other
    file anywhere (client or server) that that contains INV4II.
    >
    I'm a bit confused, and any help would be appreciated.
    >
    Adam Ruth
    My way of looking at the TNSNAMES (and other SQLNet) stuff

    TNSNAMES.ora = client file to help find the server.
    - should be on any client machine that wants to find a database using
    "local naming"
    - may be eliminated if using 'host', 'ldap' or 'Oracle Names' naming.
    - effectively says 'when user requests this "alias", ask the following
    host for the following service'

    LISTENER.ora = server file to listen for client requests.
    - should be on any server machine that wants to listen for DB requests
    - needs to have a match between a service (db-instance) and the
    requested service in the client's TNSNAMES.ora file

    (Latest versions of Oracle permit the database to self-register with the
    listener, so it doesn't need to be listed in LISTENER.ora. I find this
    causes a LOT of headache - it's assumptions and mine almost never
    match.)

    My suspicion - your LISTENER.ora is not set up and you are assuming
    self-registering databases.

    HTH
    /Hans

    Comment

    Working...