Oracle DBlink使用方法

DBlink作用:在当前数据库中访问另一个数据库中的表中的数据

sql 复制代码
create public database link dblink名称 connect to 对方数据库用户名 identified by 对方数据库用户密码  
using '(DESCRIPTION =(ADDRESS_LIST =(ADDRESS =(PROTOCOL = TCP)(HOST = 要连接的数据库所在服务器的IP地址)(PORT = 1521)))(CONNECT_DATA =(SERVICE_NAME = 要连接的数据库的服务名)))';

eg:

sql 复制代码
create public database link xxb connect to testuser identified by passwd  
using '(DESCRIPTION =(ADDRESS_LIST =(ADDRESS =(PROTOCOL = TCP)(HOST = 6.6.6.6)(PORT = 1521)))(CONNECT_DATA =(SERVICE_NAME = orcl)))';

相关权限命令

查询用户是否有创建dblink的权限

sql 复制代码
select  *  from  user_sys_privs  where  privilege  like  upper('%DATABASE LINK%');

CREATE PUBLIC DATABASE LINK:表示所创建的dblink所有用户都可以使用

CREATE DATABASE LINK:表示所创建的dblink只能是创建者能使用,别的用户不可以使用

DROP PUBLIC DATABASE LINK : 表示所创建的dblink所用用户都可以删除

sys用户赋权限

sql 复制代码
grant CREATE PUBLIC DATABASE LINK,DROP PUBLIC DATABASE LINK to testuser;

创建成功后的使用方法

sql 复制代码
select * from table_name@dblink名;

查看所有的DBLINK

sql 复制代码
select * from dba_db_links;  

如果密码里有特殊符合,比如 +

把密码用双引号引起来

sql 复制代码
create public database link xxb connect to testuser identified by 
"passwd+2023"
using '(DESCRIPTION =(ADDRESS_LIST =(ADDRESS =(PROTOCOL = TCP)(HOST = 6.6.6.6)(PORT = 1521)))(CONNECT_DATA =(SERVICE_NAME = orcl)))';
相关推荐
倔强的石头10614 分钟前
飞算JavaAI:重构软件开发范式的智能引擎
java·数据库·重构
Q_9709563930 分钟前
java+vue+SpringBoo足球社区管理系统(程序+数据库+报告+部署教程+答辩指导)
java·开发语言·数据库
行星0081 小时前
PostgreSQL大表创建分区实战
数据库·postgresql
isNotNullX1 小时前
什么是数据分析?常见方法全解析
大数据·数据库·数据仓库·人工智能·数据分析
唐可盐1 小时前
第六章 SQL编程系列-Gbase8a从入门到进阶
数据库·sql·gbase8a
旷世奇才李先生2 小时前
SQLite 安装使用教程
数据库·sqlite
码小跳2 小时前
软件无法连接MySql数据库
数据库·mysql
晋阳十二夜8 小时前
【压力测试之_Jmeter链接Oracle数据库链接】
数据库·oracle·压力测试
EasyCVR9 小时前
SQLite不够用?视频汇聚系统EasyCVR切换MySQL数据库的关键参数怎么调?
数据库·mysql·sqlite
GDAL9 小时前
Node.js v22.5+ 官方 SQLite 模块全解析:从入门到实战
数据库·sqlite·node.js