sqlplus 登录Oracle,出现:ORA-12560: TNS: 协议适配器错误

一、sqlplus连接远程数据库的几种方式

1. sqlplus / as sysdba
        操作系统认证,不需要数据库服务器启动listener,也不需要数据库服务器处于可用状态。比如我们想要启动数据库就可以用这种方式进入 sqlplus,然后通过startup命令来启动。
2. sqlplus username/password
        连接本机数据库,不需要数据库服务器的listener进程,但是由于需要用户名密码的认证,因此需要数据库服务器处于可用状态才行。
3. sqlplus usernaem/password@orcl
       通过网络连接,这是需要数据库服务器的listener处于监听状态。此时建立一个连接的大致步骤如下 
    查询sqlnet.ora,看看名称的解析方式,默认是TNSNAME  
    查询tnsnames.ora文件,从里边找orcl的记录,并且找到数据库服务器的主机名或者IP,端口和service_name  
    如果服务器listener进程没有问题的话,建立与listener进程的连接。  
    根据不同的服务器模式如专用服务器模式或者共享服务器模式,listener采取接下去的动作。默认是专用服务器模式,没有问题的话客户端就连接上了数据库的server process。
4.sqlplus username/password@//host:port/sid
  用sqlplus远程连接oracle命令(例:sqlplus user/password@//localhost:1521/gis)

以上几种方式都可行,但是都会存在一个问题,在命令行窗口会显示密码明文,这是不安全的。建议这样:

---sqlplus
sql> username @sid;
sql> password;
sql>

二、问题解决

        确保 语句编写没有错误的情况下,依然出现  ORA-12560: TNS: 协议适配器错误

        最后按照以下方法设置:

        修改系统环境变量path中的Oracle和客户端的顺序即可。

如图所示:

sqlplus 登录Oracle,出现:ORA-12560: TNS: 协议适配器错误_第1张图片

 

你可能感兴趣的:(ORACLE)