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这个服务名的定义。所以不能分解服务名。
分享到:
相关推荐
羽Oracle DB Link批量转移数据.pdf
Oracle DB优化总结
在两台oracle数据库之间测试,数据交换
ORACLE通过ODBC数据源链接DB2
Oracle之dblink的配置 Oracle之dblink的配置 Oracle之dblink的配置 Oracle之dblink的配置
Oracle数据库如何创建Database Link呢?本文我们主要就介绍一下这部分内容,Oracle数据库创建Database Link有两种方式,一种是通过菜单,一种是通过SQL
db link的查看创建与删除,db link的查看创建与删除
本文档是在开发oracle过程中总结出来的,希望对想了解oracle db link的人有帮助
这套技术,如果你能用心掌握,足可以帮助你在任何一家互联网大公司站稳脚跟!
su - oracle -c "exp system/manager full=y inctype=complete file=/oracle/export/db_comp$rq.dmp" 累计备份的SH文件:exp_cumu.sh rq=` date +"%m%d" ` su - oracle -c "exp system/manager full=y inctype=...
Report Link Designer 620 Reporting 623 Toad Control Files 623 Dependencies 624 ER Diagrams 624 Explain Plans 631 Code Road Map 636 HTML Schema Doc Generator 641 Master/Detail Browser 643 Reports ...
ORACLE用户是学习ORACLE数据库中的基础知识,下面就介绍下类系统常用的默认ORACLE用户: 1. sys用户:超级用户,完全是个SYSDBA(管理数据库的人)。拥有dba,sysdba,sysoper等角色或权限。是oracle权限最高的用户,...
docker run -it --rm --volumes-from ${DB_CONTAINER_NAME} --link ${DB_CONTAINER_NAME}:oracle-database quay.io/maksymbilenko/docker-oracle-apex:5.1.2 install #In that case build woud be with default ...
ORACLE透明网关for MSSQL的产品名称为Oracle Transparent Gateway for SQL Server。使用该产品后,对于Oracle数据库而言,屏蔽了...通过透明网关在出口退税审核系统和综合管理系统建立DB Link,可实现数据的定时抽取...
ORACLE透明网关for MSSQL的产品名称为Oracle Transparent Gateway for SQL Server。使用该产品后,对于Oracle数据库而言,屏蔽了...通过透明网关在出口退税审核系统和综合管理系统建立DB Link,可实现数据的定时抽取...
DB-link:oralce与mysql数据库的链接,共享数据数据
本人五年的SQL开发经验和存储过程开发样例、以及SQL优化要点,数据库DB_LINK,数据库审计等,绝对物超所值,欢迎大家下载。
现在的解决方法 小表:采用了snapshot的方法 大表:KHTKHXL0和KHTXLJG0 采用了通过dblink插入...db_link_xx分别是不同的服务器,每个服务器的连接有2M带宽的限制。 目前串行运行 所有的表没有进行Statistics Collection
create public database link dblink1 connect to db1 identified by \"123*456\" using \'db11\' 20.oracle8中扩充了group by rollup和cube的操作。有时候省了你好多功夫的。 下面的语句可以进行总计 select ...
class Oracle_db{ public $link; public function __construct(){ $this->link=$this->connect(); if(!$this->link){ echo "连接失败"; exit; } } public function connect(){ return oci_connect('demo',...