• Oracle DBLINK的相关知识整理


    一、DBLINK(Database Link)概念

    dblink,顾名思义就是数据库的链接。当我们要跨本地数据库访问另一个数据库中的表的数据时,在本地数据库中就必须要创建远程数据库的dblink,通过该dblink就可以达到访问远程数据库中表中数据的目的。

     注意:dblink是单向的连接。

    二、DBLINK中的一些语法

    1、查看库中已建的dblink:

    select * from dba_db_links;

    或者

    select owner,object_name from dba_objects where object_type='DATABASE LINK';

    通过以上sql可以查询出相应的数据库下已建的dblink;

    2、创建dblink:

    前提:创建dblink的用户必须有创建的权限,可以使用下面语句进行授权:

    grant create public database link,create database link to myAccount;

    dblink创建语法如下:

    CREATE [PUBLIC] DATABASE LINK dblinkname 
    CONNECT TO username IDENTIFIED BY password
    USING 'connectstring'

    说明:

    1)权限:如果在create之后不加public,则创建的dblink就不是共用的,就只有创建者自己可以使用,一个公用的dblink对于数据库中所有用户都是可用的。

    2)link:当本地GLOBAL_NAME=TRUE时,link名必须与远程数据库的全局数据库名global_name相同,否则会报如下错误:

    Oracle ORA-02069: 此操作的 global_names 参数必须设置为 TRUE

    3)'connectstring':连接字符串,在配置文件tnsnames.ora中定义远程数据库的连接串。

    注*若在远程数据库的tnsnames.ora中未配置本地数据库的connectstring,则在本地创建dblink的时候必须使用字符串创建,database不可使用别名。

    4)username、password:远程数据库的用户名,口令。如果不指定,则默认使用当前的用户名和口令登录到远程数据库。

    3、测试创建的dblink是否可用:

    SELECT * FROM worker@zrhs_link;

    若可查出数据,则表明dblink是通的可用~~~

     4、删除dblink:

    1)删除public的dblink:

    DROP PUBLIC database link link_name;

    2)删除非public的dblink:

    DROP database link link_name;

    注*只有owner自己能删除自己的非public类型dblink。

  • 相关阅读:
    入栈的方式
    出栈的方式
    入栈的方式
    累加数据段中的前3个字型数据
    累加数据段中的前3个字型数据
    出栈的方式
    入栈的方式
    python中如何清空列表
    python中统计列表元素出现的次数
    python中删除列表元素
  • 原文地址:https://www.cnblogs.com/shanqw/p/6674216.html
Copyright © 2020-2023  润新知