演员潘军,赛尔号艾斯德克,歌曲库
方法一:
在目前绝大部分数据库有分布式查询的需要。下面简单的介绍如何在oracle中配置实现跨库访问。
比如现在有2个数据库服务器,安装了2个数据库。数据库server a和b。现在来实现在a库中访问b的数据库。
第一步、配置a服务器端的tnsnames.ora文件(tnsnames.ora network configuration file),该文件存放的位置为:
$oracle_home/network/admin/tnsnames.ora
添加如下行,其中dblink为连接名(可自定义),host和port为数据库侦听的ip及端口,service_name为数据库的sid,
第二步、在a服务器的一个库中建立b的一个数据的dblink。
语法如下:
执行如下查询语句,其中mediadb为database link名(可自定义),mediadblink为先前在tnsnames.ora中定义的连接名,
dbuser为用户名,password为密码
第三步.使用链接的数据库
3.1 查询、删除和插入数据和操作本地的数据库是一样的,只不过表名需要写成“表名@database link名”,如
select * from table_name@mediadb ;
3.2 也可以为这个表创建一个同义词
create synonym aaa for table_name@mediadb ;
如下语句的效果和3.1中的一样
select * from aaa;
删除同义词的语句为
drop synonym aaa;
select * from tabname@dcmdb where 1=1;
方法二:
首先创建数据库链接:
其中 数据链名称 为添加到本地oracle数据库控制台(oracle enterprise manager console)树节点的服务名
要查询对方数据库的表tablename语句如下:
select 字段名 from tablename@数据链名称;
复制表数据:
insert into 表名(字段名) (select 字段名 from tablename@数据链名称);
查看dblink:
select owner, db_link from dba_db_links;
删除:
drop database link dblink名称
drop public database link dblink名称
oracle密码的问题:
sql> create user aaa identified by 1;
create user aaa identified by 1
*
error 位于第 1 行:
ora-00988: 缺少或无效口令
sql> create user aaa identified by"1";
用户已创建
如对本文有疑问,请在下面进行留言讨论,广大热心网友会与你互动!! 点击进行留言回复
Oracle字符串函数length、upper、lower、initcap、 concat、instr、replace
安装jdk,tomcat,oracle,PL/SQL的一些问题
网友评论