首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫

Oracle 用戶/表空間/導入導出命令速查手冊

     編輯:Oracle 資料庫相關知識

核心物件建立與授權標準流程

1. 建立表空間(先於用戶)

-- 臨時表空間
CREATE TEMPORARY TABLESPACE zfmi_temp
  TEMPFILE 'D:\oracle\oradata\zfmi\zfmi_temp.dbf'
  SIZE 100M AUTOEXTEND ON NEXT 32M MAXSIZE 2048M
  EXTENT MANAGEMENT LOCAL;

-- 永久表空間
CREATE TABLESPACE zfmi
  DATAFILE 'D:\oracle\oradata\zfmi\zfmi.dbf'
  SIZE 100M AUTOEXTEND ON NEXT 32M MAXSIZE 2048M
  EXTENT MANAGEMENT LOCAL;

2. 建用戶並指定預設/臨時表空間

CREATE USER zfmi IDENTIFIED BY zfmi
  DEFAULT TABLESPACE zfmi
  TEMPORARY TABLESPACE zfmi_temp;

3. 授權最小權限原則

-- 基礎連線與開發權限
GRANT CREATE SESSION, CREATE TABLE, CREATE VIEW, CREATE SEQUENCE, CREATE PROCEDURE TO zfmi;
-- 配額授權(避免無限制佔用 SYSTEM 表空間)
ALTER USER zfmi QUOTA UNLIMITED ON zfmi;
-- 生產環境嚴禁直接 GRANT DBA TO user;

刪除用戶與表空間(級聯清理)

-- 刪用戶及其所有物件
DROP USER zfmi CASCADE;

-- 刪表空間含內容、資料檔、外鍵約束
DROP TABLESPACE zfmi INCLUDING CONTENTS AND DATAFILES CASCADE CONSTRAINTS;

誤刪資料檔後的表空間清理急救

SQLPLUS / AS SYSDBA
SHUTDOWN ABORT
STARTUP MOUNT
ALTER DATABASE DATAFILE '缺失檔路徑' OFFLINE DROP;
ALTER DATABASE OPEN;
DROP TABLESPACE 表空間名 INCLUDING CONTENTS;

EXP/IMP 經典導出導入速查

場景導出 (EXP)導入 (IMP)
全庫 exp system/pwd@db FULL=Y FILE=full.dmp imp system/pwd@db FULL=Y FILE=full.dmp IGNORE=Y
指定用戶 exp system/pwd@db OWNER=scott FILE=scott.dmp imp system/pwd@db FROMUSER=scott TOUSER=scott FILE=scott.dmp IGNORE=Y
指定表 exp user/pwd@db TABLES=emp,dept FILE=tabs.dmp imp user/pwd@db TABLES=emp FILE=tabs.dmp IGNORE=Y
條件導出 exp user/pwd@db TABLES=emp QUERY="WHERE deptno=10" FILE=qry.dmp --
壓縮導出 exp ... COMPRESS=Y (僅壓縮 extent,建議 OS 壓縮 .dmp) --

關鍵參數說明

  • IGNORE=Y:導入時忽略「物件已存在」錯誤,繼續載入資料
  • FROMUSER/TOUSER:跨 Schema 遷移利器
  • BUFFER:調大緩衝區加速導入(如 409600)
  • LOG:記錄導入過程,便於審計

Parfile 參數檔範例(跨 Schema 遷移)

-- import.par
FROMUSER=OLD_SCHEMA
TOUSER=NEW_SCHEMA
ROWS=Y
INDEXES=Y
GRANTS=Y
CONSTRAINTS=Y
BUFFER=409600
FILE=/backup/exp.dmp
LOG=/backup/imp.log

-- 執行
imp parfile=import.par

連線測試與權限授予腳本

-- 測試連線
TNSPING ORCL

-- 授予導入導出完整權限
GRANT CREATE SESSION, CREATE TABLE, CREATE VIEW, CREATE ANY DIRECTORY,
      EXP_FULL_DATABASE, IMP_FULL_DATABASE, DBA TO target_user;

現代替代方案:Oracle 10g+ 強烈建議改用 Data Pump (EXPDP/IMPDP),支援並行、網路模式、細粒度過濾、壓縮加密,效能與功能全面超越 EXP/IMP。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved