Oracle 數據文件及其管理

1. 建立數據文件

  • 向 ORCL 數據庫的 USERS 表空間中添加一個大小爲 10M 的數據文件
SQL> ALTER TABLESPACE USERS ADD DATAFILE 'D:\APP\ORACLE\ORADATA\ORCL\USERS02.DBF' SIZE 10M;
  • 向 ORCL 數據庫的 TEMP 表空間中添加一個大小爲 5M 的數據文件
SQL> ALTER TABLESPACE TEMP ADD DATAFILE 'D:\APP\ORACLE\ORADATA\ORCL\TEMP02.DBF' SIZE 5M;

2. 修改數據文件的大小

  • 爲 ORCL 數據庫的 USERS 表空間添加一個自動增加的數據文件
SQL> ALTER TABLESPACE USERS ADD DATAFILE 'D:\APP\ORACLE\ORADATA\ORCL\USERS03.DBF' SIZE 10M AUTOEXTEND ON NEXT 512K MAXSIZE 50M;
  • 修改 ORCL 數據庫 USERS 表空間的數據文件 USERS02.DBF 爲自動增加方式
SQL> ALTER DATABASE DATAFILE 'D:\APP\ORACLE\ORADATA\ORCL\USERS02.DBF' AUTOEXTEND ON NEXT 512K MAXSIZE UNLIMITED;
  • 取消 ORCL 數據庫 USERS 表空間的數據文件 USERS02.DBF 的自動增加方式
SQL> ALTER DATABASE DATAFILE 'D:\APP\ORACLE\ORADATA\ORCL\USERS02.DBF' AUTOEXTEND OFF;
  • 將 ORCL 數據庫 USERS 表空間的數據文件 user02.DBF 大小設置爲 8MB
SQL> ALTER DATABASE DATAFILE 'D:\APP\ORACLE\ORADATA\ORCL\USERS02.DBF' RESIZE 8M;

3. 改變數據文件的可用性

  • 在數據庫歸檔模式下,將 ORCL 數據庫 USERS 表空間的數據庫文件 USERS02.DBF 脫機
SQL> SHUTDOWN IMMEDIATE
SQL> STARTUP MOUNT
SQL> ALTER DATABASE ARCHIVELOG;
SQL> ALTER DATABASE DATAFILE 'D:\APP\ORACLE\ORADATA\ORCL\USERS02.DBF' OFFLINE;
  • 將 ORCL 數據庫 USERS 表空間的數據文件 USERS02.DBF 聯機
SQL> ALTER DATABASE DATAFILE 'D:\APP\ORACLE\ORADATA\ORCL\USERS02.DBF' ONLINE;

在歸檔模式下,將數據文件聯機以前須要進行恢復操做。能夠使用 RECOVER DATAFILE 語句進行sql

SQL> RECOVER DATAFILE 'D:\APP\ORACLE\ORADATA\ORCL\USERS02.DBF';
  • 在歸檔模式下,將 USERS 表空間中全部的數據文件脫機,但 USERS 表空間不脫機,而後再將 USERS 表空間中全部的數據文件聯機
SQL> ALTER TABLESPACE USERS DATAFILE OFFLINE;
SQL> RECOVER TABLESPACE USERS;
SQL> ALTER TABLESPACE USERS DATAFILE ONLINE;

4. 改變數據文件的名稱或位置

改變同一表空間的數據文件名稱和位置數據庫

  • 更改 ORCL 數據庫 USERS 表空間的 USERS02.DBF 和 USERS03.DBF 文件名爲 USERS002.DBF 和 USERS003.DBF
SQL> ALTER TABLESPACE USERS OFFLINE;
SQL> ALTER TABLESPACE USERS RENAME DATAFILE
    'D:\APP\ORACLE\ORADATA\ORCL\USERS02.DBF',
    'D:\APP\ORACLE\ORADATA\ORCL\USERS03.DBF' TO
    'D:\APP\ORACLE\ORADATA\ORCL\USERS002.DBF',
    'D:\APP\ORACLE\ORADATA\ORCL\USERS003.DBF';
SQL> ALTER TABLESPACE USERS ONLINE;

改變屬於多個表空間的數據文件code

  • 更改屬於 ORCL 數據庫 USERS 表空間的 USERS002.DBF 的文件位置和修改 TOOLS 表空間中的 TOOLS01.DBF 文件名
-- 關閉數據庫
SQL> SHUTDOWN IMMEDIATE
SQL> STARTUP MOUNT
SQL> ALTER DATABASE RENAME FILE
    'D:\APP\ORACLE\ORADATA\ORCL\USERS002.DBF',
    'D:\APP\ORACLE\ORADATA\ORCL\tools01.DBF' TO
    'D:\APP\ORACLE\ORADATA\ORCL\USERS02.DBF',
    'D:\APP\ORACLE\ORADATA\ORCL\tools01.DBF';
-- 開啓數據庫
SQL> ALTER DATABASE OPEN

5. 刪除數據文件

  • 刪除 USERS 表空間中的數據文件 USERS03.DBF 和刪除 TEMP 臨時表空間中的臨時數據文件 TEMP03.DBF
-- 刪除 USERS 表空間中的數據文件 USERS03.DBF
SQL> ALTER TABLESPACE USERS DROP DATAFILE 'D:\APP\ORACLE\ORADATA\ORCL\USERS03.DBF';
-- 刪除 TEMP 臨時表空間中的臨時數據文件 TEMP03.DBF
SQL> ALTER TABLESPACE TEMP DROP TEMPFILE 'D:\APP\ORACLE\ORADATA\ORCL\TEMP03.DBF';
  • 查詢數據文件信息

DBA_DATA_FILES 包含數據庫中全部數據文件的信息
DBA_TEMP_FILES 包含數據庫中全部臨時數據文件的信息
V$DATAFILE 包含從控制文件中獲取的數據文件信息
V$TEMPFILE 包含全部臨時文件的基本信息class

相關文章
相關標籤/搜索