时间:2021-05-24
方法一:
在目前绝大部分数据库有分布式查询的需要。下面简单的介绍如何在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,
复制代码 代码如下:
MEDIADBLINK =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 10.0.0.1)(PORT = 1521))
)
(CONNECT_DATA =
(SERVICE_NAME = db)
)
)
第二步、在A服务器的一个库中建立B的一个数据的DBLINK。
语法如下:
执行如下查询语句,其中MEDIADB为database link名(可自定义),MEDIADBLINK为先前在tnsnames.ora中定义的连接名,
dbuser为用户名,password为密码
复制代码 代码如下:
-- Create database link
create database link MEDIADB
connect to dbuser identified by password
using 'MEDIADBLINK';
第三步.使用链接的数据库
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;
方法二:
首先创建数据库链接:
复制代码 代码如下:
CREATE PUBLIC DATABASE LINK 数据链名称 CONNECT TO 登陆用户名 IDENTIFIED BY 密码 USING '(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 对方Oracle服务器的IP地址)(PORT = 端口号))
)
(CONNECT_DATA =
(SERVICE_NAME = 对方Oracle服务器服务名)
)
)'
其中 数据链名称 为添加到本地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";
用户已创建
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
正在看的ORACLE教程是:Oracle数据库集复制方法浅议。前言 日益增长的分布式应用需求要求实现更好分布式的软件环境,不断推动着分布式技术的进步。Orac
数据存储区。AppEngine提供了一个强大的分布式数据存储服务,其中包含查询引擎和事务。就像分布式网络服务器随通信量增长一样,分布式数据存储区也随数据而增长。
创建链接服务器。链接服务器让用户可以对OLEDB数据源进行分布式异类查询。在使用sp_addlinkedserver创建链接服务器后,可对该服务器运行分布式查询
在接触公司一个系统时,公司使用的是SQLServer2008数据库,里面涉及到了多个数据库之间的查询,而且数据库是分布式的,数据库分布在多台服务器之间,并且各个
分布式锁一般有三种实现方式:1、数据库乐观锁;2、基于Redis的分布式锁;3、基于ZooKeeper的分布式锁。本文将介绍第二种方式,基于Redis实现分布式