濮阳杆衣贸易有限公司

主頁 > 知識庫 > Oracle如何更改表空間的數(shù)據(jù)文件位置詳解

Oracle如何更改表空間的數(shù)據(jù)文件位置詳解

熱門標簽:海南400電話哪里辦理 南寧人工智能電銷機器人費用 圖像地圖標注 貴陽電話外呼系統(tǒng)哪家好 400電話是不是免費申請 濟南地圖標注公司 分布式呼叫中心 呼倫貝爾智能手機地圖標注 安陽外呼系統(tǒng)免費

表空間概述

Oracle的表空間屬于Oracle中的存儲結構,是一種用于存儲數(shù)據(jù)庫對象(如:數(shù)據(jù)文件)的邏輯空間,是Oracle中信息存儲的最大邏輯單元,其下還包含有段、區(qū)、數(shù)據(jù)塊等邏輯數(shù)據(jù)類型。表空間是在數(shù)據(jù)庫中開辟的一個空間,用于存放數(shù)據(jù)庫的對象,一個數(shù)據(jù)庫可以由多個表空間組成。可以通過表空間來實現(xiàn)對Oracle的調優(yōu)。(Oracle數(shù)據(jù)庫獨特的高級應用)

表空間的分類

永久表空間:存儲數(shù)據(jù)庫中需要永久化存儲的對象,比如二維表、視圖、存儲過程、索引。

臨時表空間:存儲數(shù)據(jù)庫的中間執(zhí)行過程,如:保存order by數(shù)據(jù)庫排序,分組時產生的臨時數(shù)據(jù)。操作完成后存儲的內容會被自動釋放。臨時表空間是通用的,所的用戶都使用TEMP作為臨時表空間。一般只有tmp一個臨時表空間,如果還需要別的臨時表空間時,可以自己創(chuàng)建。

UNDO表空間:保存數(shù)據(jù)修改前的副本。存儲事務所修改的舊址,即被修改之前的數(shù)據(jù)。當我們對一張表中的數(shù)據(jù)進行修改的同時會對修改之前的信息進行保存,為了對數(shù)據(jù)執(zhí)行回滾、恢復、撤銷的操作。

引言

Oracle數(shù)據(jù)庫的數(shù)據(jù)文件的位置和信息都被記錄在控制文件中,rm或cp命令是不會也不可能更改控制文件記錄的,這時必須通過alter操作去更改刷新數(shù)據(jù)庫控制文件中數(shù)據(jù)文件的相關信息,以此確保數(shù)據(jù)庫能夠正常運行。

操作方法

1. 方法1

主要步驟:

      1、offline表空間:alter tablespace tablespace_name offline;

      2、復制數(shù)據(jù)文件到新的目錄;

      3、rename修改表空間,并修改控制文件;

      4、online表空間;

offline表空間

SQL> alter tablespace cifdb offline;

復制數(shù)據(jù)文件到新的目錄

cp /u01/app/oracle/oradata/cifdb.dbf /u01/app/oracle/oradata/CIFDB/cifdb.dbf

rename修改表空間

SQL> alter tablespace cifdb rename datafile '/u01/app/oracle/oradata/cifdb.dbf' to '/u01/app/oracle/oradata/CIFDB/cifdb.dbf';

online表空間

SQL> alter tablespace cifdb online;

檢查數(shù)據(jù)文件

SQL> select name from v$datafile;

或者

SQL> select file_name, tablespace_name from dba_data_files where tablespace_name='cifdb';

2. 方法2

主要步驟:

      1、關閉數(shù)據(jù)庫;

      2、復制數(shù)據(jù)文件到新的位置;

      3、啟動數(shù)據(jù)庫到mount狀態(tài);

      4、通過SQL修改數(shù)據(jù)文件位置;

      5、打開數(shù)據(jù)庫;

關閉數(shù)據(jù)庫

SQL> shutdown immediate;

復制數(shù)據(jù)文件到新的位置

cp /u01/app/oracle/oradata/cifdb.dbf /u01/app/oracle/oradata/CIFDB/cifdb.dbf

啟動數(shù)據(jù)庫到mount狀態(tài)

SQL> startup mount;

修改數(shù)據(jù)文件位置

SQL> alter database rename file '/u01/app/oracle/oradata/cifdb.dbf' to '/u01/app/oracle/oradata/CIFDB/cifdb.dbf';

打開數(shù)據(jù)庫

SQL> alter database open;

檢查數(shù)據(jù)文件

SQL> select name from v$datafile;

或者

SQL> select file_name, tablespace_name from dba_data_files where tablespace_name='cifdb';

總結

以上就是這篇文章的全部內容了,希望本文的內容對大家的學習或者工作具有一定的參考學習價值,如果有疑問大家可以留言交流,謝謝大家對腳本之家的支持。

您可能感興趣的文章:
  • Oracle表空間數(shù)據(jù)文件移動的方法
  • Oracle7.X 回滾表空間數(shù)據(jù)文件誤刪除處理方法
  • Oracle7.X 回滾表空間數(shù)據(jù)文件誤刪除處理方法
  • Oracle7.X 回滾表空間數(shù)據(jù)文件誤刪除處理方法
  • Oracle如何設置表空間數(shù)據(jù)文件大小

標簽:南充 合肥 許昌 滁州 郴州 遼源 涼山 焦作

巨人網(wǎng)絡通訊聲明:本文標題《Oracle如何更改表空間的數(shù)據(jù)文件位置詳解》,本文關鍵詞  Oracle,如何,更改,表空,間的,;如發(fā)現(xiàn)本文內容存在版權問題,煩請?zhí)峁┫嚓P信息告之我們,我們將及時溝通與處理。本站內容系統(tǒng)采集于網(wǎng)絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《Oracle如何更改表空間的數(shù)據(jù)文件位置詳解》相關的同類信息!
  • 本頁收集關于Oracle如何更改表空間的數(shù)據(jù)文件位置詳解的相關信息資訊供網(wǎng)民參考!
  • 推薦文章
    石门县| 巨鹿县| 临夏市| 五峰| 乌恰县| 天津市| 辽宁省| 新和县| 青田县| 砚山县| 寿光市| 遂昌县| 略阳县| 含山县| 湖口县| 鹿泉市| 高安市| 凌海市| 阆中市| 中江县| 内乡县| 肇源县| 郁南县| 广平县| 蒙城县| 永年县| 罗山县| 伊宁县| 伊金霍洛旗| 田东县| 呈贡县| 秀山| 凌海市| 东乡族自治县| 卢氏县| 吴江市| 游戏| 平山县| 泰来县| 红河县| 乌拉特中旗|