更新时间:2022-06-02 11:32
数据库链接允许Oracle数据库引用存储在本地数据库外部的对象。命令create database link创建远程数据库的路径,从而可以通过该路径访问远程数据库的对象。数据库链接包装了如下内容:远程数据库的名称、连接到远程数据库的方法、用于验证远程数据库连接的用户名/密码的组合。在某些方面,数据库链接类似于数据库同义词:数据库链接可以为公有或私有,并且它提供方便快捷的方法来访问另一个资源集。主要的区别在于,资源在数据库外部而不是相同数据库中,因此需要更多的信息来解决引用问题。另一个区别在于,同义词是对特定对象的引用,而数据库链接则是定义的路径,用于访问远程数据库中任意数量的对象。
为了在分布式环境中的多个数据库之间建立链接,域中每个数据库的全局数据库名必须都不相同。因此,重要的是正确分配初始参数DB NAME和DB DOMAIN。
为了使数据库链接的使用更为容易,可以将同义词赋给数据库链接,从而使表访问更为透明,用户并不知道同义词访问的是本地对象还是分布式数据库上的对象。对象可以移动到不同的远程数据库,也可以在本地数据库中移动,只要同义词名称保持相同,就可以使对象访问对用户保持透明。
远程数据库与本地数据库
本地数据库位于本地磁盘或局域网上。如果有几个用户同时访问数据库.本地数据库采取攘于文件的锁定策略。因此,本地数据库亦叫基于文件的数据库。
由于本地数据库往往与数据库应用程序在同一个系统中。因此,访问本地数据库的速度比访问远程数据库的速度要快。
典型的本地数据库有Paradox、dBASE、FoxPro和ACCCSS。
远程数据库通常位于远程计算机上。用户通过SQL(Structured Query Language)来访问远程数据库巾的数据。正是基于这个原闪,远程数据库有时候也叫SQL服务器或者叫RDMS(Remote Database Management System)。
远程数据库非常适合于几个用户同时访问。与那些基于文件锁定策略的本地数据库不同的是,远程数据库提供了基于事务的多用户支持。
远程数据库所能存储的数据也比本地数据库多得多。甚至有时候数据并不在一个服务器上,而是分布在几个服务器上。
因为数据库和应用程序位于彼此不依赖的系统(层)中.使用远程数据库的应用程序称为两层或多层应用程序。典型的SQI。服务器有Interbase、Oracle、Sybase、Informix、Microsoft SQL Server和DB2。