1。基本概念:
数据库连接串主要用于建立对远程数据库的访问方法,可以直接读取远程Oracle的数据,或者直接修改。数据库连接串可以是公用连接PUBLIC或者私有连接PRIVATE。这一点和同义词很相像。
1。创建语法:
CREATE DATABASE LINK TEST CONNECT TO USERNAME IDENTIFIED BY PASSWORD
USING 'CONNECT_STRING';
解释:TEST是数据库连接串的名字。以后就通过这个名字来进行调用远程数据库的内容。
USERNAME是用来连接到远程数据库的合法Oracle用户名。PASSWORD为该用户连接到Oracle时候的合法密码。
CONNECT_STRING为该Oracle数据库所在的主机上的tnsnames.ora文件里边定义的数据库连接串。
2。使用方法:
SELECT COUNT(*) FROM TABLE_NAME@DB_LINK WHERE WHERE_CLAUSE;//查阅远程数据库的内容。
UPDATE TEST.TEST@DB_LINK SET SO_NBR=NEW_SO_NBR
WHERE WHERE_CLAUSE;//修改远程数据库的内容。
在实际使用过程中,还可以通过为这个远程表建立一个同义词来进一步增加透明性,使该数据库连接串对于程序和开发人员来讲完全透明。
CREATE SYNONYM TABLE_NAME FOR TABLE_NAME@DB_LINK;
3。数据库连接的管理:
1。如何知道当前用户、当前系统中有哪些数据库连接串?
SELECT * FROM USER_DB_LINKS;
这个查询会给出当前用户的数据库联接的名字、联接用户名、联接密码、要连接的主机以及创建时期。
SELECT * FROM DBA_DB_LINKS;
这个查询会给出当前系统中所有的数据库联接的创建用户、联接用户名、要连接的主机以及创建时期。
SELECT * FROM V$DBLINK;
这个查询会给出当前打开的数据库联接。
4。常见错误处理:
////////////////////////////////////////////////////////////////
1。不能分解服务名:
登录到远程服务器上的结果:
net97>show parameters global_name
NAME TYPE VALUE
------------------------------------ ------- ------------------------------
global_names boolean FALSE
net97>
net97>drop database link jinhua;
数据库链接已丢弃。
net97>create database link jinhua
2 connect to username identified by password
3 using 'jinhua';
数据库链接已创建。
net97>select * from so@jinhua;
select * from so@jinhua
*
ERROR 位于第 1 行:
ORA-12154: TNS:不能分解服务名称.
net97>conn username/password@jinhua;
已连接。
net97>
这是因为在Oracle数据库所在的Unix主机上面的tnsnames.ora文件里边没有对jinhua这个服务名的定义。所以不能分解服务名。
分享到:
相关推荐
2. 删除DB_LINK:当不再需要DB_LINK时,可使用`DROP DATABASE LINK link_name;`来删除。 3. 权限管理:可以使用GRANT和REVOKE语句为其他用户授予或撤销对DB_LINK的使用权。 五、注意事项 1. 安全性:由于DB_LINK...
DB_LINK,即数据库链接,是一种从一个Oracle数据库服务连接到另一个Oracle数据库服务的单向连接机制。这种连接方式允许在一个数据库(通常称为本地数据库)上的用户通过预先设置好的链接访问另一个数据库(远程...
【Oracle DB优化总结】 在数据库管理系统中,Oracle Database(Oracle DB)因其稳定性和高性能而备受赞誉,但随着数据量的增长,优化数据库性能显得至关重要。本文将深入探讨Oracle DB的优化策略,包括优化器的选择...
在Oracle数据库中,`db_link`(也称为数据库链接)是一种允许从一个数据库查询或操作另一个远程数据库的对象。通常情况下,创建数据库链接时需要指定远程数据库的名称,这一名称可能会包含特定的后缀,如“.com”。...
在 Oracle 数据库中,可以通过以下几种方式来查看现有的 DB Link: 1. **查询 DBA_OBJECTS 表**: - 使用 SQL 语句 `SELECT owner, object_name FROM dba_objects WHERE object_type = 'DATABASELINK';` 来查看...
Oracle DATABASE LINK,简称DBLINK,是一种在不同的Oracle数据库实例间建立连接的方式,允许用户在本地数据库上执行查询和操作远程数据库的数据。DBLINK为跨数据库的通信提供了简单且高效的解决方案。 创建DBLINK的...
databaselink是oracle数据库连接另一个数据库(可以是非oracle数据库)用的连接
Oracle之dblink的配置 Oracle之dblink的配置 Oracle之dblink的配置 Oracle之dblink的配置
"Oracle DB Link批量转移数据.pdf" Oracle DB Link是一个非常重要的数据库链接工具,它可以将远程数据库的数据直接读取或修改,实现大批量数据的转移。今天,我们将讨论如何使用Oracle DB Link来批量转移数据。 ...
### DB Link 在 Oracle 数据库中的应用 #### 一、DB Link 概述 DB Link(数据库链接)是Oracle提供的一种跨数据库访问机制,允许用户在一个Oracle数据库实例中查询或更新另一个远程Oracle数据库实例中的数据。这为...
CREATE [PUBLIC] DATABASE LINK link_name CONNECT TO username IDENTIFIED BY password USING 'zytydic'; ``` 其中: - `link_name` 是要创建的数据库链接的名称。 - `username` 和 `password` 分别是用于...
在上述命令中,`db_link_name`是你为链接命名,`username`和`password`是远程数据库的登录凭据,`database_connection_string`是用于连接远程数据库的字符串,通常包含服务器名称、端口号和服务名。 Oracle9i PLSQL...
数据库链路的建立语法一般是:CREATE DATABASE LINK [db_link_name] CONNECT TO [user_name] IDENTIFIED BY [password] USING '[tns_name]'; 其中: * [DB_LINK_NAME]:是所要连接的数据库的服务名,也就是该数据库...
在Oracle数据库系统中,数据库链接(Database Link)是一种强大的特性,它允许用户在不同的数据库实例之间建立连接,实现数据的跨库查询和交互。本文将深入探讨Oracle数据库中创建数据库链接的方法及其应用。 首先...
Oracle DB Link 创建过程心得 Oracle DB Link 是一种数据库链接技术,允许用户从一台数据库服务器读取另一台数据库服务器下的数据。下面是创建 Oracle DB Link 过程的几点心得: 什么是 DB Link DB Link 是一种...
EXECSQL CONNECT :username IDENTIFIED BY :password AT db_link_name USING :db_name; ``` 3. **执行SQL语句**: - 可以通过在SQL语句前加上 `EXECSQL AT db_link_name` 来指定连接名。 ```c EXECSQL AT db_...
### ORACLE 建立 DB-LINK 详细讲解 #### 引言 在 Oracle 数据库管理中,DB-LINK(数据库链接)是一项重要的技术,它允许一个 Oracle 数据库实例访问另一个 Oracle 数据库实例中的数据。这在分布式数据库环境中非常...