ORA-12545:连接失败,因为Mac中不存在目标主机或对象 - SQLPLUS

时间:2017-07-30 05:00:13

标签: oracle macos sqlplus

我在Mac OS X EI Captain中安装了sqlplus instantclient。

我可以通过在终端

中键入以下命令来连接到数据库

sqlplus uname/pwd@//localhost:1521/myDB

我需要在没有完整连接字符串的情况下连接到数据库,只需要输入sqlplus然后我输入用户名和密码,这就是错误。

ERROR:
ORA-12545: Connect failed because target host or object does not exist

我设置了以下环境变量,并创建了tnsnames.ora。

export ORACLE_HOME=/opt/oracle/instantclient
export DYLD_LIBRARY_PATH=$ORACLE_HOME
export LD_LIBRARY_PATH=$ORACLE_HOME
export NLS_LANG=AMERICAN_AMERICA.UTF8
export TNS_ADMIN=~/etc
export PATH=$PATH:$ORACLE_HOME  
export ORACLE_SID=myDB

我不知道为什么我会收到此错误。

下面是〜/ etc位置下的tnsnames.ora。

myDB =
(DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = localhost) (PORT = 1521))
        (
            CONNECT_DATA =
            (SERVER = DEDICATED)
            (SERVICE_NAME = myDB)
        )
)

1 个答案:

答案 0 :(得分:2)

设置TWO_TASK environment variable以定义默认连接字符串,例如

export TWO_TASK=${ORACLE_SID}

还使用tnsping myDB测试配置。