oracle跨库查询的方法

发布时间 - 2026-01-11 01:20:33    点击率:

在Oracle本地数据库端执行赋权dbuser帐号

SQL> grant create database link to dbuser;

1.配置本地数据库服务器的tnsnames.ora文件

$vi $ORACLE_HOME/network/admin/tnsnames.ora 

添加如下行,其中DBLINK为连接名(可自定义),HOST和PORT为数据库侦听的IP及端口,SERVICE_NAME为数据库的SID,

MEDIADBLINK = 
 (DESCRIPTION = 
  (ADDRESS_LIST = 
   (ADDRESS = (PROTOCOL = TCP)(HOST = 10.0.0.1)(PORT = 1521)) 
  ) 
  (CONNECT_DATA = 
   (SERVICE_NAME = db) 
  ) 
 ) 

2.登录到本地数据库,创建database link

执行如下查询语句,其中MEDIADB为database link名(可自定义),MEDIADBLINK为先前在tnsnames.ora中定义的连接名,
dbuser为用户名,password为密码

 -- Create database link 
 create database link MEDIADB 
 connect to dbuser identified by password 
 using 'MEDIADBLINK'; 

注意:这里不会验证用户名密码的正确性

3.使用链接的数据库

3.1 查询、删除和插入数据和操作本地的数据库是一样的,只不过表名需要写成“表名@database link名”,如

select * from table_name@MEDIADB ; 

3.2 也可以为这个表创建一个同义词

create synonym aaa for table_name@MEDIADB ; 

如下语句的效果和3.1中的一样

select * from aaa; 

删除同义词的语句为

drop synonym aaa; 

 以下是其他网友的补充:

 在Oracle本地数据库端执行赋权dbuser帐号

SQL> grant create database link to dbuser;

配置本地数据库服务器的tnsnames.ora文件
$ vi $ORACLE_HOME/network/admin/tnsnames.ora

增加需要远程连接服务器的连接配置,如:

ORCL_REMOTE =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = oradb )(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = orcl)
)
)

登录到本地数据库,创建database link

执行如下查询语句,其中ORCL_LINK为database link名(可自定义),ORCL_REMOTE为先前在tnsnames.ora中定义的连接名,
dbuser为用户名,password为密码

create database link ORCL_LINK connect to dbuser identified by password using 'ORCL_REMOTE';

查询创建database link的2中方式:

1)、执行SQL语句。
select * from user_db_links; --用户 DB Link
select * from dba_db_links; --dba DB Link
select * from v$dblink; --当前DB Link

2)、在PL/SQL中,在左边浏览器中点击database links就可以看到数据库链路了。

使用链接的数据库

查询、删除和插入数据和操作本地的数据库是一样的,只不过表名需要写成“表名@database link名”,如

select * from table_name@ORCL_LINK

其它:

删除database link(本例中是ORCL_LINK)
SQL> Drop database link ORCL_LINK; 


# oracle  # 跨库查询  # ORACLE多条件统计查询的简单方法  # oracle查询语句大全(oracle 基本命令大全一)  # 基于Oracle多库查询方法(分享)  # 自定义  # 帐号  # 先前  # 只不过  # 是一样的  # 也可  # 创建一个  # 就可以  # 链路  # 本例  # 器中  # HOST  # network  # SID  # DBLINK  # admin  # ADDRESS_LIST  # DESCRIPTION  # PROTOCOL  # ADDRESS 


相关栏目: 【 网站优化151355 】 【 网络推广146373 】 【 网络技术251813 】 【 AI营销90571


相关推荐: Thinkphp 中 distinct 的用法解析  桂林网站制作公司有哪些,桂林马拉松怎么报名?  微信小程序 五星评分(包括半颗星评分)实例代码  长沙企业网站制作哪家好,长沙水业集团官方网站?  手机网站制作平台,手机靓号代理商怎么制作属于自己的手机靓号网站?  Laravel如何实现多语言支持_Laravel本地化与国际化(i18n)配置教程  Python文件操作最佳实践_稳定性说明【指导】  如何挑选高效建站主机与优质域名?  html文件怎么打开证书错误_https协议的html打开提示不安全【指南】  Laravel如何使用Contracts(契约)进行编程_Laravel契约接口与依赖反转  Win11怎么设置虚拟桌面 Win11新建多桌面切换操作【技巧】  Laravel如何升级到最新的版本_Laravel版本升级流程与兼容性处理  详解Android图表 MPAndroidChart折线图  Laravel怎么进行数据库事务处理_Laravel DB Facade事务操作确保数据一致性  开心动漫网站制作软件下载,十分开心动画为何停播?  php嵌入式断网后怎么恢复_php检测网络重连并恢复硬件控制【操作】  Claude怎样写约束型提示词_Claude约束提示词写法【教程】  lovemo网页版地址 lovemo官网手机登录  HTML5建模怎么导出为FBX格式_FBX格式兼容性及导出步骤【指南】  在线ppt制作网站有哪些软件,如何把网页的内容做成ppt?  如何在宝塔面板创建新站点?  JS中页面与页面之间超链接跳转中文乱码问题的解决办法  最好的网站制作公司,网购哪个网站口碑最好,推荐几个?谢谢?  C++用Dijkstra(迪杰斯特拉)算法求最短路径  如何为不同团队 ID 动态生成多个独立按钮  如何为不同团队 ID 动态生成多个“认领值班”按钮  uc浏览器二维码扫描入口_uc浏览器扫码功能使用地址  北京企业网站设计制作公司,北京铁路集团官方网站?  手机网站制作与建设方案,手机网站如何建设?  如何用西部建站助手快速创建专业网站?  Microsoft Edge如何解决网页加载问题 Edge浏览器加载问题修复  Windows家庭版如何开启组策略(gpedit.msc)?(安装方法)  Windows10怎样连接蓝牙设备_Windows10蓝牙连接步骤【教程】  php在windows下怎么调试_phpwindows环境调试操作说明【操作】  如何在万网利用已有域名快速建站?  laravel服务容器和依赖注入怎么理解_laravel服务容器与依赖注入解析  Laravel请求验证怎么写_Laravel Validator自定义表单验证规则教程  php结合redis实现高并发下的抢购、秒杀功能的实例  如何在Windows虚拟主机上快速搭建网站?  如何在阿里云虚拟服务器快速搭建网站?  绝密ChatGPT指令:手把手教你生成HR无法拒绝的求职信  html如何与html链接_实现多个HTML页面互相链接【互相】  敲碗10年!Mac系列传将迎来「触控与联网」双革新  如何构建满足综合性能需求的优质建站方案?  Laravel如何实现全文搜索功能?(Scout和Algolia示例)  Laravel 419 page expired怎么解决_Laravel CSRF令牌过期处理  如何实现javascript表单验证_正则表达式有哪些实用技巧  如何将凡科建站内容保存为本地文件?  CSS3怎么给轮播图加过渡动画_transition加transform实现【技巧】  Laravel如何使用Service Provider服务提供者_Laravel依赖注入与容器绑定【深度】