Oracle 架構中 沒有 MySQL 意義上的「多個數據庫」。一個 Oracle 實例 = 一個數據庫。你在 DBCA 創建的 A、B、C、D 其實是 不同的表空間 或 不同的用戶 Schema。
-- 1. 以系統管理員創建用戶並指定表空間
CREATE USER user_a IDENTIFIED BY pwd_a DEFAULT TABLESPACE ts_a QUOTA UNLIMITED ON ts_a;
GRANT CONNECT, RESOURCE TO user_a;
-- 2. 客戶端連接時直接指定用戶
sqlplus user_a/pwd_a@//host:1521/service_name
-- 或在 JDBC URL 中指定
jdbc:oracle:thin:user_a/pwd_a@//host:1521/service_name
連上哪個用戶,就在那個用戶的 Schema 下工作,天然隔離,無需額外「切換數據庫」命令。
ALTER SESSION SET CURRENT_SCHEMA = user_b;CONNECT user_b/pwd_b 在 SQL*Plus 中