本文借鉴:Oracle DBLINK 简单使用(特此感谢!)

DBLINK学习

目的:为了解决跨库访问的需求。

场景如下:tnsnames.ora(oracle的库配置文件)下配置了2个库的环境地址,现在要实现跨库访问。

第一步:赋予权限

--在创建database link(DBLINK)之前需要判断,登陆的用户是否具备创建database link 的权限

PS:注意,此时登陆的账号是需要创建dblink的账号(用这个库去调用其他库)-- 1、查看当前登陆的账号是否具备创建database link 权限
select * from user_sys_privs where privilege like upper('%DATABASE LINK%') AND USERNAME='当前登陆的账号';
PS:如果查询有返回行,则表示具备创建database link权限,否则,则需要使用sys登陆orcl为当前登陆的账号赋予创建权限-- 2、给当前登陆的账号授予创建dblink的权限
grant create public database link to '当前登陆的账号';-- 3、 再次执行第一条查看是否具备权限的sql语句,会发现有返回行,表示,当前登陆的账号已经具备创建database link的权限
select * from user_sys_privs where privilege like upper('%DATABASE LINK%') AND USERNAME='当前登陆的账号';

第二步:创建dblink

方式1:pl/sql developer 图形化创建

方式2:sql语句创建

-- 1、注意一点,如果密码是数字开头,用“”括起来
CREATE PUBLIC DATABASE LINK DBLINK名称 CONNECT TO 当前登陆账号 IDENTIFIED BY "密码" USING '连接的数据库'
--例:
CREATE PUBLIC DATABASE LINK TESTDBLINK CONNECT TO ZHANGHAO IDENTIFIED BY "123456" USING 'TESTDATABASE'-- 2、sql中直接写入库配置
CREATE DATABASE LINK DBLINK名称 CONNECT TO 当前登陆账号 IDENTIFIED BY "密码" USING '(DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = XXX.XXX.XXX)(PORT = 1521)) ) (CONNECT_DATA = (SERVICE_NAME = XXXX))         )
';

第三步:操作

四、创建同义词(简化操作)

-- 创建同义词
create synonym TESTSYNONYM(同义词) FOR company@TESTLINK1;PS:创建同义词以后,查询、插入、修改、删除中可直接用 TESTSYNONYM 代替company@TESTLINK1,例如查询语句可改成如下方式(插入,修改,删除类似):
SELECT * FROM TESTSYNONYM(同义词) order by id -- 查询ORCL2中WANGYONG用户的表COMPANY

转载于:https://www.cnblogs.com/riches/p/11260843.html

Oracle学习(五)DBLINK相关推荐

  1. Oracle学习(五) --- 视图、序列、同义词、索引

    1.视图 1.1.什么是视图 视图是从基表中导出的逻辑表,它不像基表一样物理地储存在数据库中,视图没有自己独立的数据实体.一个视图的存在反映在数据字典中具有相应的登记项.视图一旦被建立,即可在其上进行 ...

  2. oracle db-link 分布式数据库网络配置协议错误,Oracle学习(18)【DBA向】:分布式数据库...

    数据物理上被存放在网络的多个节点上,逻辑上是一个整体. 分布式数据库的独立性 l分布数据的独立性指用户不必关心数据如何分割和存储,只需关心他需要什么数据. Oracle分布式RDBMS 本地操作 远程 ...

  3. Oracle 学习笔记,,,经验总结整理的。。。

    cmd进入: 1. D:\oracle\ora92\bin> 2. sqlplus /nolog 3. conn sys/sys as sysdba sqlplus进入: username:sy ...

  4. oracle两表链接序列跳序,Oracle学习之 序列(Sequence)

    Oracle学习之 序列(Sequence) [Oracle学习]之 序列(Sequence) oracle文档:https://docs.oracle.com/cd/B28359_01/server ...

  5. Oracle学习计划

    这两天,在网上参考了大量的文档,制定了Oracle学习的读书计划,共分三个阶段: 第一阶段: 目标: 系统学习.巩固基础. 书籍: (1)Oracle Concept, Oracle Performa ...

  6. Oracle学习系列1-7

    Oracle学习系列1 两个服务必须启动: OracleOraDb10g*TNListener 和 OracleService*** 使用sqlplusw先进行环境的设置 set linesize 3 ...

  7. Oracle学习篇章一——基础

    Oracle学习一--总体基础 一.数据库分类 1.1.数据库分类 1.2.项目中如何合理地使用数据库,可以依据如下三个方面入手 1.3.不同规模类型的数据库区别 二.Oracle概念 三.Oracl ...

  8. Oracle 学习之建表、索引、同义词以及SQL优化

    Oracle 学习之建表.索引.同义词以及SQL优化: 一.Oracle 建表: 1.建表语句: --创建表 create table test ( id varchar2(200) primary ...

  9. Oracle数据库的dblink连接

    Oracle数据库的dblink连接 最近在做Oracle数据库的dblink连接,在简单学习之后就直接使用命令创建了连接 create database link tieqian connect t ...

  10. oracle学习笔记 Oracle体系结构概述

    oracle学习笔记 Oracle体系结构概述 从这节开始,开始讲oracle数据库体系结构. 首先从总体上,从概述上把oracle整体的体系结构讲一下, 然后接下来的时间我们会一块一块的将oracl ...

最新文章

  1. codeforces 293E Close Vertices 点分治+滑窗+treap
  2. RTOS之uCOS-II源码下载及源码目录结构、常见的RTOS!
  3. 用css3制作旋转加载动画的几种方法
  4. CSS拉伸resize
  5. 从头到尾彻底理解傅里叶变换算法(下)
  6. python计算方位角_实例讲解:用python 计算方位角(根据两点的坐标计算)记得收藏哦...
  7. php短网址案例,php生成短网址原理与实例
  8. VS2003+自带水晶报表的打包部署(CS方式)
  9. 一个非计算机专业的 软考初级 程序员考试之路
  10. Landsat 8 地表反射率数据介绍—— Landsat 8 Surface Reflectance Tier 1
  11. cce是什么意思_CCE 是什么
  12. 串口发送字符控制灯亮灭
  13. 基于有道API的命令行词典(golang版)
  14. html实现太极图效果
  15. canvas节点无法导出图片_HTML转为PDF,图片导出失败的终极解决方案
  16. Codeforces 1419B. Stairs 递归
  17. 女人本性的47个心理阴暗面 承受力差的谨慎阅读
  18. 计算机网络第三章——数据链路层(仅记录我所认为重要的知识点)
  19. Hive实现时间滑动窗口计算
  20. [笨木头FireFly 03]完整的服务端和客户端通信

热门文章

  1. h5封装去底部_干货分享 | 一步一步教你在SpringBoot中集成微信支付H5支付
  2. 树莓派wiringPi库详解
  3. Qt学习笔记-----事件
  4. Ring3下实现进程保护,不用hook
  5. 九大排序算法-C语言实现及详解
  6. PX4飞控之导航及任务架构
  7. adr和ldr的区别
  8. 湖南大学第十四届ACM程序设计新生杯(重现赛)- FFind the AFei Numbers(数位dp)
  9. html3D效果可以在手机打开吗,手机怎么打开HTML
  10. redis中KEYS替代命令