zoukankan      html  css  js  c++  java
  • db link的查看创建与删除

    前言:

    两台不同的数据库服务器,从一台数据库服务器的一个用户读取另一台数据库服务器下的某个用户的数据,这个时候可以使用dblink。
    其实dblink和数据库中的view差不多,建dblink的时候需要知道待读取数据库的ip地址,ssid以及数据库用户名和密码。

    1.查看dblink

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

    或者

    select * from dba_db_links;

    2.创建dblink
    前提:
        创建dblink的用户有对应的数据库权限
            create public database link 或者create database link
            可以使用

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

            来授权.

    create public database link dblinkname connect to username identified by password
       using '(DESCRIPTION =
    (ADDRESS_LIST =
    (ADDRESS = (PROTOCOL = TCP)(HOST = database_ip)(PORT = 1521))
    )
    (CONNECT_DATA =
    (SERVICE_NAME =servicename)
    )
    )';
    如果在create之后不加public,则创建的dblink就不是公共的,就只有创建者可以使用了.
    补充:如何确定数据库的servicename:
        1.在sqlplus中使用

    show parameter[s] service_names;

            注意parameter和parameters都可以
        2.使用

    select name,value from v$parameter where name='service_names'


       
    3.使用db link
        例如,在本机数据库上创建了一个scott_rmthost的public dblink(使用远程主机的scott用户连接),则用sqlplus连接到本机数据库,执行select * from scott.emp@scott_rmthot即可以将远程数据库上的scott用户下的emp表中的数据获取到.
        也可以在本地建一个同义词来指向scott.emp@scott_rmthost,这样取值就方便多了.

    4.删除
        注意:用户有create public database link 或者create database link 权限.

    drop public database link dblinkname;
  • 相关阅读:
    重新认识布局:html和body元素
    重新认识布局:3d空间中的css盒子
    重新认识布局:百分比单位
    重新认识布局:标准流,浮动,定位的关系
    Redis(1.7)Redis高可用架构与数据库交互(理论篇)
    C++: 模块定义文件声明(.def)的使用
    HttpListener supports SSL only for localhost? install certificate
    跨域请求引起的 OPTIONS request
    html 浏览器自动加上 标签的详解
    c# HttpServer 的使用
  • 原文地址:https://www.cnblogs.com/Lightning-Kid/p/3954109.html
Copyright © 2011-2022 走看看