• Oracle中创建DB LINK


    当用户要跨本地数据库,访问另外一个数据库表中的数据时,本地数据库中必须创建了远程数据库的dblink,通过dblink本地数据库可以像访问本地数据库一样访问远程数据库表中的数据。
    下面讲介绍如何在本地数据库中创建dblink.

    第一步:赋予权限
    在创建database link之前,我们需要判断,登陆的用户是否具备创建database link 的权限,所以我们执行以下的语句:

    -- 查看用户是否具备创建database link 权限
    select * from user_sys_privs where privilege like upper('%DATABASE LINK%') AND USERNAME='用户名';

    如果查询有返回行,则表示具备创建database link权限,否则,则需要使用sys登陆orcl为用户赋予创建权限:

    -- 给用户授予创建dblink的权限
    grant create public database link to 用户名;

    此时,再执行上面查看是否具备权限的sql语句,会发现有返回行,表示,用户已经具备创建database link的权限
    第二步;创建database link
    我所了解到的创建方式有两种:1)通过pl/sql developer图形化创建、2)通过sqlplus中的sql语句创建。下面介绍使用sql语句创建database link

    create database link TestDblink
    connect to dbName identified by dbPassword
    using '(DESCRIPTION =(ADDRESS_LIST =(ADDRESS =(PROTOCOL = TCP)(HOST = 192.168.2.158)(PORT = 1521)))(CONNECT_DATA =(SERVICE_NAME = orcl)))';
    
    TestDblink:表示dblink名字
    dbName:表示远程数据库的用户
    dbPassword:表示远程数据库的密码
    HOST:表示远程数据库IP
    PORT:表示远程数据库端口
    SERVICE_NAME:远程数据库的实例名  

    -- 查询、删除和插入数据和操作本地的数据库是一样的,只不过表名需要写成“表名@dblink服务器”而已。
    例如:如果想在本地数据库中通过dblink访问远程数据库'orcl'中dbName.tb_test表,sql语句如下所示

    select * from dbName.tb_test@TestDblink; 

    DBLINK其他相关的知识:
    1、查看所有的数据库链接,登录管理员查看

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

    2.删除数据库连接

    drop database link TestDblink; 

    参考:https://www.cnblogs.com/wangyong/p/6354528.htmlhttps://www.cnblogs.com/Animation-programmer/p/7991809.html

  • 相关阅读:
    阅读笔记——增强学习3
    阅读笔记——增强学习2
    阅读笔记——增强学习1
    阅读笔记十六
    阅读笔记十五
    MVC实例应用模式
    MVC浅谈
    设计模式理解
    某系统质量属性设计实现详述
    《大型网站架构》浅读有感
  • 原文地址:https://www.cnblogs.com/shujk/p/12590673.html
Copyright © 2020-2023  润新知