欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Oracle连接远程数据库

程序员文章站 2022-07-01 17:18:03
...

方式一:

在开始中找到以O开头的文件,打开系统默认工具Net Manager

Oracle连接远程数据库

点击服务命名 ——> 点击加号

Oracle连接远程数据库

配置数据库连接名,此处不是你要连接的远程的数据库名

Oracle连接远程数据库

默认使用TCP/IP协议,不用管

Oracle连接远程数据库

主机名是远程数据库的IP,端口号一般默认1521

Oracle连接远程数据库

服务名是你要连接的远程数据库的名称

Oracle连接远程数据库

测试连接

Oracle连接远程数据库

测试后会失败,因为默认是用scott进行连接的,所以要选择更改登录,输入远程数据库的用户名和密码后再次测试

Oracle连接远程数据库

方式二:

以方式一进行配置会自动生成配置文件
方式二是直接在配置文件中配置
找到Oracle安装目录——>product——> dbhome_1——> network——> admin——> tnsnames.ora
我的路径是: D:\Oracle12c\product\12.2.0\dbhome_1\network\admin\tnsnames.ora

在配置文件新增如下代码:

其中数据库连接名、主机名、远程数据库名需要自己配置

数据库连接名 =
  (DESCRIPTION =
    (ADDRESS_LIST =
      (ADDRESS = (PROTOCOL = TCP)(HOST = 主机名)(PORT = 端口号))
    )
    (CONNECT_DATA =
      (SERVICE_NAME = 远程数据库名)
    )

遇到的坑:

错误: ORA-12638: 身份证明检索失败

遇到的情况: 输入的用户名和密码都正确就是连不上

解决方法: 找到Oracle安装目录——>product——> dbhome_1——> network——> admin——> sqlnet.ora
我的路径是: D:\Oracle12c\product\12.2.0\dbhome_1\network\admin
如果存在SQLNET.AUTHENTICATION_SERVICES= (NTS),则修改为:SQLNET.AUTHENTICATION_SERVICES= (NONE),如果不存在,则直接添加SQLNET.AUTHENTICATION_SERVICES= (NONE)

原因: NTS表示采用本地操作系统认证,NONE表示将采用口令文件方式认证