当用户要跨本地数据库,访问另外一个数据库表中的数据时,本地数据库中必须创建了远程数据库的dblink,通过dblink本地数据库可以像访问本地数据库一样访问远程数据库表中的数据。下面讲介绍如何在本地数据库中创建dblink.
创建dblink一般有两种方式,不过在创建dblink之前用户必须有创建dblink的权限。想知道有关dblink的权限,以sys用户登录到本地数据库:
select * from user_sys_privs t
where t.privilege like upper('%link%');
1 SYS CREATE DATABASE LINK NO
2 SYS DROP PUBLIC DATABASE LINK NO
3 SYS CREATE PUBLIC DATABASE LINK NO
可以看出在数据库中dblink有三种权限CREATE DATABASE LINK(所创建的dblink只能是创建者能使用,别的用户使用不了),CREATE PUBLIC DATABASE LINK(public表示所创建的dblink所有用户都可以使用),DROP PUBLIC DATABASE LINK。
在sys用户下,把CREATE PUBLIC DATABASE LINK,DROP PUBLIC DATABASE LINK权限授予给你的用户
grant CREATE PUBLIC DATABASE LINK,DROP PUBLIC DATABASE LINK to scott;
然后以scott用户登录本地数据库
1.创建dblink的第一种方式,是在本地数据库tnsnames.ora文件中配置了要远程访问的数据库。
create public database link
to_bylw connect to scott identified by tiger using 'bylw';
其中to_bylw是你创建的dblink名字,bylw是远程数据库的实例名,scott/tiger是登录到远程数据库的用户/密码。然后在本地数据库中通过dblink访问远程数据库'bylw'中scott.tb_test表,sql语句如下所示
select * from scott.tb_test@to_bylw;
2.创建dblink的第二种方式,是在本地数据库tnsnames.ora文件中没有配置要访问的远程数据库,
create database link to_test
connect to scott identified by tiger
using '(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.1.5)(PORT = 1521))
)
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = bylw)
)
)';
第二种是把第一种配置在tnsnames.ora文件中的信息,直接放在创建dblink语句后面。第一种情况tnsnames.ora文件中信息如下:
bylw =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.1.5)(PORT = 1521))
)
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = bylw)
)
)
所有DBLink 存放在 sys.link$ 表中,要在sysdba下才能查询
select * from sys.link$
分享到:
相关推荐
### Oracle DBLink创建过程及快照同步方法 #### 一、Oracle DBLink概念与创建步骤 DBLink(Database Link)是Oracle提供的一种机制,用于在不同的Oracle数据库实例之间建立连接,实现跨数据库查询、更新等功能。它...
一旦DBLink创建成功,用户就可以在本地数据库执行SQL查询,像操作本地表一样操作远程表。例如,`select * from scott.tb_test@to_bylw;`将从远程数据库的`tb_test`表中检索数据。 管理DBLink的常见SQL命令包括: 1...
dblink dblink dblink dblink dblink dblink dblink dblink dblink dblink dblink dblink dblink dblink dblink dblink dblink dblink
- **DBLink**(Database Link)是Oracle提供的一种机制,用于在不同的Oracle数据库实例之间建立连接,实现跨数据库查询、更新等操作。 - **应用场景**:在实际业务场景中,常常需要在多个数据库之间进行数据交换或...
### dblink创建语句知识点详解 #### 一、dblink概念理解 在数据库管理领域,dblink(Database Link)是一种非常实用的功能,它允许在一个Oracle数据库实例中引用另一个Oracle数据库实例中的数据。通过创建dblink,...
Oracle数据库下创建dblink的sql语句,附带解释说明
总结来说,DM数据库之间的DBLINK创建是一个涉及配置文件修改、服务管理以及SQL语句操作的过程。通过DBLINK,用户可以实现跨数据库的数据查询、同步或其他操作,极大地扩展了数据库的功能性和灵活性。在实际应用中,...
一旦DBLINK创建成功,就可以在SQL语句中引用它来访问远程数据库的数据。例如,假设我们有一个名为`scott_rmthost`的DBLINK,指向一个包含`scott`用户的远程数据库,那么我们可以这样查询: ```sql SELECT * FROM ...
静态DBLINK一旦创建,就会作为数据库对象存储在源数据库中,供后续查询和操作使用。 2. **动态DBLINK**:这种类型的DBLINK是在运行时动态创建的,主要用于那些事先未知或不固定的远程数据库链接场景。动态DBLINK...
使用 DBlink 连接 Oracle 和 MySQL 数据库 Oracle 通过 DBlink 连接 MySQL 搭建过程是一个复杂的过程,需要安装和配置多个组件,包括 unixODBC、mysql-connector-odbc 和 Oracle 环境变量。本文将详细说明这个过程...
#### 二、DBLink创建原理及应用场景 1. **创建原理**:DBLink本质上是在源数据库中定义了一个指向目标数据库的逻辑路径。当执行涉及DBLink的操作时,Oracle会通过该逻辑路径自动建立到目标数据库的连接。 2. **...
本文将详细介绍如何创建DBLINK连接串、利用DBLINK访问指定数据库中的表,并通过创建映射简化查询操作。 ### 创建DBLINK连接串 #### 1. 创建DBLINK 为了能够在源数据库中访问目标数据库中的数据,首先需要创建一个...
### DBLINK创建方法 在Oracle数据库管理中,DBLINK(数据库链接)是一种非常重要的特性,它允许用户在不同的数据库之间进行数据查询、修改等操作,从而实现分布式数据库系统的功能。DBLINK可以极大地简化跨数据库的...
#### 五、DBLink创建过程 1. **创建TNS别名** - 在本地(新疆分公司)创建一个TNS别名,用于连接北京总部的数据库。可以通过修改`tnsnames.ora`文件来完成这一配置。 2. **创建测试表** - 在北京总部的数据库中...
Oracle DATABASE LINK,简称DBLINK,是一种在不同的Oracle数据库实例间建立连接的方式,允许用户在本地数据库上执行查询和操作远程数据库的数据。DBLINK为跨数据库的通信提供了简单且高效的解决方案。 创建DBLINK的...
DBLink提供了一种方式来访问远程数据库中的数据,而无需建立物理连接。 什么是CLOB字段? CLOB(Character Large OBject)是Oracle数据库中的一个数据类型,用于存储大量的字符数据。CLOB字段可以存储大量的文本...
该存储过程实现源数据库按照时间同步更新计算库的过程 实现表的同步以及动态表某期间的数据同步。 该存储过程主要演示了: 1.dblink创建和dblink的使用; 2.如何使用字典表和游标实现选择性数据同步。
创建DBLink后,可以通过以下方式查询远程数据库中的数据: ```sql SELECT * FROM scott.tb_test@to_bylw; ``` 这里`@to_bylw`指定了使用的DBLink名称。 ### 权限管理 #### 创建DBLink所需的权限 - **CREATE ...
- **多数据库整合**:在企业级应用中,多个业务系统可能分别部署在不同的数据库上,通过建立DBLink可以实现数据的统一管理和查询。 - **跨数据库报表**:可以轻松地从多个数据库中提取数据进行汇总分析,生成综合...
Oracle DBLink(数据库链接)是Oracle数据库提供的一种特性,它允许用户在不同的Oracle数据库实例间进行数据查询和操作,仿佛这些数据库都在同一个实例内。DBLink使得分布式数据库系统的交互变得简单,无需复杂的...