簡體   English   中英

如何在 oracle 中建立聯合存儲引擎連接

[英]how can I make federated storage engine connection in oracle

我目前正在將我的項目數據庫從 mySQL 切換到 oracle,而且我是 oracle 的新手。

以前,mySQL 查詢看起來像這樣:

CREATE TABLE log_remote (
    log_no NUMBER(11) NOT NULL AUTO_INCREMENT,
    dttm DATETIME(3) NOT NULL,
    log_code VARCHAR2(20) NOT NULL,
    log_type VARCHAR2(255) NOT NULL,
    product VARCHAR2(64) NOT NULL,
    detail VARCHAR2(2048) NULL DEFAULT NULL,
    hmac VARCHAR2(64) NOT NULL',
    PRIMARY KEY (log_no, dttm)
    ) COLLATE='utf8_general_ci' ENGINE=FEDERATED
    CONNECTION='mysql://dblink:project!dblink@${Ip}:3306/cli/cli_log'

問題是,我不知道如何進行此查詢

CONNECTION='mysql://dblink:project!dblink@${Ip}:3306/cli/cli_log'

在 oracle SQL 中。 我聽說我不能在 oracle 中使用聯合存儲引擎連接,但我找不到如何在 oracle 中進行等效查詢。

有人可以幫我嗎? 謝謝:)

我不知道 MySQL 所以我用谷歌搜索。 它說

FEDERATED 存儲引擎允許您從遠程 MySQL 數據庫訪問數據...

如果是這樣,在 Oracle 中,您將使用數據庫鏈接 然后通過數據庫鏈接訪問位於另一個數據庫中的表。

這是一個例子。 用戶 - 創建數據庫鏈接 - 必須具有該特權,這意味着特權用戶(例如擁有數據庫的 SYS)必須授予它:

SQL> grant create database link to scott;

Grant succeeded.

然后, scott用戶將創建指向用戶hr的 DB 鏈接:

SQL> connect scott/tiger
Connected.
SQL> create database link dbl_hr
  2  connect to hr
  3  identified by hr
  4  using 'xe';

Database link created.

它有效嗎?

SQL> select * from dual@dbl_hr;

D
-
X

SQL>

是的,它有效。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM