方法一:
在眼下絕大部分數據庫有分布式查詢的須要。以下簡單的介紹怎樣在oracle中配置實現跨庫訪問。
比方如今有2個數據庫服務器,安裝了2個數據庫。數據庫server A和B。如今來實如今A庫中訪問B的數據庫。
第一步、配置Aserver端的tnsnames.ora文件(TNSNAMES.ORA Network Configuration File),該文件存放的位置為:
$ORACLE_HOME/network/admin/tnsnames.ora
第二步、在Aserver的一個庫中建立B的一個數據的DBLINK。語法例如以下:
select * from?tabname@dcmdb?where 1=1;
方法二:
首先創建數據庫鏈接:
CREATE PUBLIC DATABASE LINK 數據鏈名稱 CONNECT TO 登陸username IDENTIFIED BY password USING '(DESCRIPTION =
???? (ADDRESS_LIST =
?????? (ADDRESS = (PROTOCOL = TCP)(HOST = 對方Oracleserver的IP地址)(PORT = port號))
???? )
???? (CONNECT_DATA =
(SERVICE_NAME = 對方Oracleserver服務名)
???? )
?? )'?
當中 數據鏈名稱 為加入到本地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名稱
Oraclepassword的問題:
SQL> CREATE USER AAA IDENTIFIED BY 1;
CREATE USER AAA IDENTIFIED BY 1
? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?*
ERROR 位于第 1 行:
ORA-00988: 缺少或無效口令
SQL> CREATE USER AAA IDENTIFIED BY"1";
用戶已創建
版權聲明:本文博客原創文章,博客,未經同意,不得轉載。