• 查询远程oracle,oracle 远程数据库查询


    具体需求:除了查询本地数据库的信息还要查询远程数据库的表信息。为了避免建立两个数据库。

    Database Links:使用户可以通过一个数据库访问到另外一个远程数据库

    Database Link有哪几种连接方式的Link:

    Link类型

    说明

    Connected user link

    看这个类型的名称就可以判断出,用的是当前连接的用户的帐户及其密码来访问远程数据库的。所以这个类型就要求需要在远程数据库上有一个和本地帐户一样的username和password.

    Fixed user link

    这个类型是说使用指定的帐户和密码来访问远程数据库。所以只需指定的帐户能够有权限访问远程数据库就可以。

    Current user link

    需要用户连接到本地数据库的时候是全局用户的身份连接的。这样这个全局用户就可以使用指定帐户的上下文,而无需存储密码信息到link中。

    Database Link有以下类型:

    类型

    说明

    Private

    来类型的Database Lin只能由这个Database Link的Owner才能使用它。

    Public

    在这个数据库里的所有用户均可使用该Database Link

    Global

    网络中的数据库中的用户均可使用该database link. 因为当Oracle 使用目录服务器的时候,它会在该目录下的所有数据库里都创建这个 global database link,并且统一控制。因此所有在目录下的数据库里的用户均可使用。

    语法:create [type] database link

    语句

    说明

    访问方式类型

    连接类型

    Create database link dblinkName using ‘NSName’;

    创建一个database link ,通过使用网络服务名称创建。其中Database Link的名称为dbLinkName. 网络服务的名称为NSName.

    Connected user link

    Private

    Create public database link dblinkName connect to CURRENT_USER using ‘NSName’;

    创建一个database link ,通过使用网络服务名称创建。其中Database Link的名称为dbLinkName. 网络服务的名称为NSName.

    Current user link

    public

    Create database link dblinkName dblinkName connect to username identified by password using ‘NSName’;

    创建一个database link ,通过使用网络服务名称创建。其中Database Link的名称为dbLinkName. 网络服务的名称为NSName. 通过用户帐户username及其密码password来访问远程数据库。

    Fixed user link

    private

    具体创建例子:

    第一步:

    create public database link linkname connect to user_name identified by user_pwd using '(DESCRIPTION =

    (ADDRESS_LIST =

    (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.1.33)(PORT = 1521))

    )

    (CONNECT_DATA =

    (SERVER = DEDICATED)

    (SERVICE_NAME = INTRANET)

    )

    )';

    第二步:

    select * from remoteTableName@linkname;

    附上删除命令:drop public database link linkName;

  • 相关阅读:
    ELK 收集 K8S (containerd 容器运行时) 二
    EFK 收集 Docker 日志
    ELK 收集 Docker 日志
    ELK 收集 K8S (containerd 容器运行时) 三
    Java 基础(Stream APl)
    Java 基础(方法引用 Method References)
    Java 基础(Lambda表达式 和 函数式 Functional 接口)
    Java 基础(Stream APl) 二
    ELK 收集 K8S (containerd 容器运行时) 一
    部署 Harbor 2.4.1
  • 原文地址:https://www.cnblogs.com/jijm123/p/16210005.html
Copyright © 2020-2023  润新知