• Oracle如何跨服务器访问


    当要跨服务器访问数据库时,我们可以使用dblink建立连接服务器间的通道。

    如果需要创建全局 DBLink,首先要确定用户有创建 dblink 的权限:

    使用此语句查看:select * from user_sys_privs where privilege like upper('%DATABASE LINK%'); 

    grant create  database link to 用户名    //给用户分配创建link权限

    创建链接方法:

    CREATE DATABASE LINK 链接名         
    CONNECT TO  服务器用户名 IDENTIFIED BY 服务器密码
    USING '(DESCRIPTION =
    (ADDRESS_LIST =
    (ADDRESS = (PROTOCOL = TCP)(HOST = 登录服务器ip地址)(PORT = 1521))
    )
    (CONNECT_DATA =
    (SERVER = DEDICATED)
    (SERVICE_NAME = 服务名)
    )
    )';

    创建链接后可以通过下面语句查询:

    select * from 表名@链接名

    从远程服务器查询或者插入数据过程中有可能遇到问题:

    发生原因:查询的表中有CLOB字段的数据

    解决方法:

    --创建临时表    
    create table temp_test as select * from test@linkoracle where  id =: ID ;
    --将远程数据插入到临时表中
    insert into temp_test select * from test@linkoracle where id = : ID;
    --将临时表数据插入到目标数据库表中
    insert into test select * from test_temp; --提交 commit; --查询 select * from test_temp;
  • 相关阅读:
    通配符^与not like 区别
    SQL语句
    身份证的性别验证(摘抄)
    基于VirtualBox虚拟机安装Ubuntu教程
    VMware手动添加centos7硬盘图文操作及分区超详细
    acl权限命令
    linux查看分区是否开启acl权限
    CentOS7上Docker简单安装及nginx部署
    Docker安装ngnix使用ping报错
    centos7安装mysql5.6
  • 原文地址:https://www.cnblogs.com/peachfly/p/14132500.html
Copyright © 2020-2023  润新知