GaussDB T 運維基礎:如何刪除表空間中的數據文件

      網友投稿 1155 2025-04-01

      GaussDB T 運維基礎:如何刪除表空間中的數據文件


      在 GaussDB T中,可以通過 DROP DATAFILE 命令刪除表空間中的空數據文件。

      通過 V$DATAFILE 可以查看數據文件的基本信息:

      SQL>?desc?v$datafile; Name????????????????????????????????Null?????Type???????????????????????????????? -----------------------------------?--------?------------------------------------ ID??????????????????????????????????NOT?NULL?BINARY_INTEGER?????????????????????? TABLESPACE_ID????????????????????????????NOT?NULL?BINARY_INTEGER?????????????????????? STATUS???????????????????????????????NOT?NULL?VARCHAR(20?BYTE)???????????????????? TYPE????????????????????????????????NOT?NULL?VARCHAR(20?BYTE)???????????????????? FILE_NAME??????????????????????????????NOT?NULL?VARCHAR(256?BYTE)??????????????????? BYTES????????????????????????????????NOT?NULL?BINARY_BIGINT??????????????????????? AUTO_EXTEND?????????????????????????????NOT?NULL?VARCHAR(20?BYTE)???????????????????? AUTO_EXTEND_SIZE??????????????????????????NOT?NULL?BINARY_BIGINT??????????????????????? MAX_SIZE??????????????????????????????NOT?NULL?BINARY_BIGINT??????????????????????? HIGH_WATER_MARK???????????????????????????NOT?NULL?BINARY_INTEGER

      通過 DBA_TABLESPACES 可以查詢表空間信息:

      SQL>?desc?dba_tablespaces; Name????????????????????????????????Null?????Type???????????????????????????????? -----------------------------------?--------?------------------------------------ TABLESPACE_NAME?????????????????????NOT?NULL?VARCHAR(64?BYTE)???????????????????? PAGE_SIZE????????????????????????????????????BINARY_BIGINT??????????????????????? EXTENT_PAGES???????????????????????NOT?NULL?BINARY_INTEGER?????????????????????? DATAFILE_COUNT??????????????????????NOT?NULL?BINARY_INTEGER?????????????????????? TOTAL_SIZE????????????????????????????????????BINARY_BIGINT??????????????????????? USED_SIZE????????????????????????????????????BINARY_BIGINT??????????????????????? STATUS???????????????????????????NOT?NULL?VARCHAR(8?BYTE)????????????????????? IN_MEMORY?????????????????????????NOT?NULL?VARCHAR(8?BYTE)????????????????????? CONTENTS?????????????????????????????????????CHAR(9?BYTE)???????????????????????? LOGGING??????????????????????????????????????CHAR(1?BYTE)???????????????????????? BIGFILE??????????????????????????????????????CHAR(1?BYTE)

      測試數據庫的表空間和數據文件基本信息如下:

      SQL>?col?tablespace_name?for?a15 SQL>?select?tablespace_name,page_size?from?dba_tablespaces; TABLESPACE_NAME?PAGE_SIZE??????????? ---------------?-------------------- SYSTEM??????????8192???????????????? TEMP???????????8192???????????????? UNDO???????????8192???????????????? USERS???????????8192???????????????? TEMP2???????????8192???????????????? TEMP2_UNDO????????8192???????????????? SYSAUX??????????8192???????????????? 7?rows?fetched. SQL>?select?id,file_name?from?v$datafile; ID???????????FILE_NAME??????????????????????????????????????????????????????? ------------?---------------------------------------------------------------- 0????????????/gaussdb/gaussdata/data/system?????????????????????????????????? 1????????????/gaussdb/gaussdata/data/temp1_01???????????????????????????????? 2????????????/gaussdb/gaussdata/data/temp1_02???????????????????????????????? 3????????????/gaussdb/gaussdata/data/undo???????????????????????????????????? 4????????????/gaussdb/gaussdata/data/user1??????????????????????????????????? 5????????????/gaussdb/gaussdata/data/user2??????????????????????????????????? 6????????????/gaussdb/gaussdata/data/user3??????????????????????????????????? 7????????????/gaussdb/gaussdata/data/user4??????????????????????????????????? 8????????????/gaussdb/gaussdata/data/user5??????????????????????????????????? 9????????????/gaussdb/gaussdata/data/temp2_01???????????????????????????????? 10????????????/gaussdb/gaussdata/data/temp2_02???????????????????????????????? 11????????????/gaussdb/gaussdata/data/temp2_undo?????????????????????????????? 12????????????/gaussdb/gaussdata/data/sysaux?????????????????????????????????? ? 13?rows?fetched.

      以下依次刪除了初始創建的 USERS 表空間中的空余文件:

      SQL>?alter?tablespace?users?drop?datafile?'/gaussdb/gaussdata/data/user5'; Succeed. SQL>?alter?tablespace?users?drop?datafile?'/gaussdb/gaussdata/data/user4'; Succeed. SQL>?alter?tablespace?users?drop?datafile?'/gaussdb/gaussdata/data/user3'; Succeed. SQL>?alter?tablespace?users?drop?datafile?'/gaussdb/gaussdata/data/user2'; Succeed.

      刪除之后,數據文件會自動被清理掉:

      SQL>?select?id,file_name?from?v$datafile; ID???????????FILE_NAME??????????????????????????????????????????????????????? ------------?---------------------------------------------------------------- 0????????????/gaussdb/gaussdata/data/system?????????????????????????????????? 1????????????/gaussdb/gaussdata/data/temp1_01???????????????????????????????? 2????????????/gaussdb/gaussdata/data/temp1_02???????????????????????????????? 3????????????/gaussdb/gaussdata/data/undo???????????????????????????????????? 4????????????/gaussdb/gaussdata/data/user1??????????????????????????????????? 9????????????/gaussdb/gaussdata/data/temp2_01???????????????????????????????? 10????????????/gaussdb/gaussdata/data/temp2_02???????????????????????????????? 11????????????/gaussdb/gaussdata/data/temp2_undo?????????????????????????????? 12????????????/gaussdb/gaussdata/data/sysaux?????????????????????????????????? 9?rows?fetched. SQL>?exit [eygle@enmodb1?~]$?cd?/gaussdb/gaussdata/data/ [eygle@enmodb1?data]$?ls?-l total?6014984 -rw-------?1?eygle?enmotech???10485760?Jan?11?23:42?cntl1 -rw-------?1?eygle?enmotech???10485760?Jan?11?23:42?cntl2 -rw-------?1?eygle?enmotech???10485760?Jan?11?23:42?cntl3 -rw-------?1?eygle?enmotech??268435456?Jan??4?23:55?log1 -rw-------?1?eygle?enmotech??268435456?Jan??9?02:37?log3 -rw-------?1?eygle?enmotech??268435456?Jan?11?23:46?log4 -rw-------?1?eygle?enmotech??335544320?Jan?11?23:42?sysaux -rw-------?1?eygle?enmotech??1073741824?Jan?11?23:42?system -rw-------?1?eygle?enmotech??167772160?Dec?26?14:53?temp1_01 -rw-------?1?eygle?enmotech??167772160?Dec?26?14:53?temp1_02 -rw-------?1?eygle?enmotech??167772160?Dec?26?14:53?temp2_01 -rw-------?1?eygle?enmotech??167772160?Dec?26?14:53?temp2_02 -rw-------?1?eygle?enmotech??1073741824?Dec?26?14:53?temp2_undo -rw-------?1?eygle?enmotech??1073741824?Jan?11?23:42?undo -rw-------?1?eygle?enmotech??1073741824?Jan?11?23:42?user1

      官方文檔內容介紹如下:

      ALTER?TABLESPACE 功能描述 修改tablespace。 注意事項 執行該語句的用戶需要有ALTER?TABLESPACE系統權限。 增加數據文件、刪除數據文件,修改AUTOEXTEND屬性及重命名表空間,需在數據庫open狀態下執行。 修改數據文件名稱,需要在數據庫mount狀態下執行。 只能對用戶表空間設置AUTOOFFLINE。 語法格式 ALTER?TABLESPACE?tablespace_name ???{???datafile_tempfile_clauses ?????|?RENAME?TO?new_tablespace_name? ?????|?SHRINK?SPACE?KEEP?integer?[?K?|?M?|?G?|?T?] ?????|?AUTOOFFLINE?[?ON?|?OFF?] ???} datafile_tempfile_clauses?子句: {???ADD?DATAFILE?{datafile_tempfile_spec?[?,?...?]} ??|?DROP?DATAFILE?‘file_name’? ??|?RENAME?DATAFILE?'old_file_name'??TO?'new_file_name'? ??|?autoextend_clause ??|?OFFLINE?DATAFILE?'file_name'?[?,?...?]? } autoextend_clause?子句: AUTOEXTEND?{???OFF? ?????????????|?ON?[?NEXT?integer?[?K?|?M?|?G]?]? ???????????}? ???????????[?MAXSIZE?{???integer?[?K?|?M?|?G]? ???????????????????????|?UNLIMITED? ?????????????????????}? ???????????] datafile_tempfile_spec?子句: file_name?SIZE?integer?[?K?|?M?|?G?]?[?autoextend_clause?] 參數說明 tablespace_name 待修改表空間的名稱,當表空間不存在時報錯。 ADD?DATAFILE 向表空間添加數據文件。 DROP?DATAFILE 向表空間刪除數據文件,數據文件必須是沒有使用過的(hwms為0)才可以被刪除。 autoextend_clause 修改表空間AUTOEXTEND屬性。 RENAME?DATAFILE 修改表空間中的數據文件名稱,只有在MOUNT模式下執行,由于修改文件名需要暫時關閉文件,目前不支持等待數據庫處于恢復狀態。 AUTOOFFLINE 設置表空間是否開啟自動離線。AUTOOFFLINE為ON時,開啟自動離線的用戶表空間,在數據庫啟動過程中存在文件打開失敗的問題時,會自動離線該用戶表空間;若用戶表空間在數據庫啟動成功后出現問題,則不會自動離線。 某些用戶表空間發生損壞或其他故障時,如果已通過“ALTER?TABLESPACE?tablespace_name?AUTOOFFLINE?ON;”將該表空間設置為損壞后離線,那么在啟動數據庫時可以將數據庫加載到MOUNT狀態,否則將報錯,且數據庫啟動失敗。 OFFLINE?DATAFILE 將損壞的datafile離線,只有在MOUNT模式下執行,之后若被離線的數據文件不為空,則該表空間被離線。 datafile_tempfile_spec 表空間數據文件,可以用逗號分隔多個數據文件,數據文件中暫時不支持中文。 file_name 新生成的數據文件在操作系統下的路徑+新數據文件名。指定文件名為相對路徑時,默認保存在數據目錄的data目錄下。 SIZE?integer[?K?|?M?|?G?] 數據文件大小。 K:單位KB M:單位MB G:單位GB undo表空間的取值范圍:[1M,32G),其它表空間的取值范圍:[1M,?8TB]。 autoextend_clause 表空間的AUTOEXTEND為on時,可以手動指定每次擴展的大小。 “NEXT”指定自動擴展的大小。若用戶未指定時,默認值為16MB “MAXSIZE”指定數據文件自動擴展的上限。 若用戶未指定或指定為?"UNLIMITED"?時,undo表空間的上限大小為32GB,其它表空間的上限大小為?8TB。 若用戶指定了上限值,則undo表空間指定的上限值不可大于32GB,其它表空間指定的上限值不可大于?8TB。 若用戶既指定了上限值也通過“NEXT”指定了自動擴展大小,則指定的上限值不得小于用戶指定的自動擴展值。 不指定AUTOEXTEND字句,默認不自動擴展。 指定AUTOEXTEND?OFF;默認不自動擴展。 指定AUTOEXTEND?ON時,可設置的屬性如下: RENAME?TO?new_tablespace_name 修改表空間名字。 SHRINK?SPACE?KEEP?integer?[?K?|?M?|?G?|?T?] 收縮表空間,在RESTRICTED模式下支持收縮臨時表空間和undo表空間。 若需收縮undo表空間,則必須保證事務無殘留。 K:單位KB M:單位MB G:單位GB T:單位TB 表空間的取值范圍:[1M,?8000T]。 示例 向表空間tbs_human中添加數據文件。 --創建表空間tbs_human。 CREATE?TABLESPACE?tbs_human?DATAFILE?'dfile_tbs_01'?SIZE?32M?AUTOEXTEND?ON?NEXT?10M; --向表空間tbs_human中添加數據文件privilege_dfile(大小是32M),manager_dfile(大小是32M)和section_dfile(大小是32M)。 ALTER?TABLESPACE?tbs_human?ADD?DATAFILE?'privilege_dfile'?SIZE?32M,?'manager_dfile'?SIZE?32M,?'section_dfile'?SIZE?32M; 刪除表空間tbs_human中的數據文件manager_dfile。 ALTER?TABLESPACE?tbs_human?DROP?DATAFILE?'manager_dfile'; mount狀態下將表空間tbs_human中的數據文件privilege_dfile重命名為new_privilege_dfile。 --mount狀態下將數據文件privilege_dfile重命名為new_privilege_dfile。 ALTER?TABLESPACE?tbs_human?RENAME?DATAFILE?'privilege_dfile'?TO?'new_privilege_dfile'; --修改數據庫狀態為OPEN. ALTER?DATABASE?OPEN; mount狀態下將表空間tbs_human中損壞的數據文件section_dfile離線。 --mount狀態下將表空間tbs_human中損壞的數據文件section_dfile離線。 ALTER?TABLESPACE?tbs_human?OFFLINE?DATAFILE?'section_dfile'; --修改數據庫狀態為OPEN. ALTER?DATABASE?OPEN; 修改表空間tbs_human為自動擴展,數據插滿時,表空間自動擴展,可手動指定每次擴展大小。 ALTER?TABLESPACE?tbs_human?AUTOEXTEND?ON?NEXT?5M; 將表空間名稱tbs_human修改為data_tbs_human: ALTER?TABLESPACE?tbs_human?RENAME?TO?data_tbs_human;

      轉自墨天輪

      GaussDB

      版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。

      版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。

      上一篇:如何在ERP系統實施中部署變更管理
      下一篇:excel表格強大而美妙的數組公式
      相關文章
      亚洲午夜精品在线| 亚洲丁香色婷婷综合欲色啪| 亚洲电影在线播放| 亚洲天堂中文字幕| 久久久久亚洲精品美女| 久久久久亚洲av无码尤物| 亚洲成AV人片在线观看无码| 亚洲精品二区国产综合野狼 | 亚洲精品无码mv在线观看网站 | 亚洲尤码不卡AV麻豆| 亚洲午夜激情视频| 国产亚洲?V无码?V男人的天堂| 亚洲色一色噜一噜噜噜| 亚洲精品国产V片在线观看| 亚洲男人av香蕉爽爽爽爽| 国产亚洲精品精品国产亚洲综合 | 亚洲avav天堂av在线网爱情| 亚洲精品午夜国产va久久| 日韩亚洲人成在线| 亚洲成熟丰满熟妇高潮XXXXX| 亚洲精品无码不卡在线播放| 国产亚洲综合视频| 亚洲性在线看高清h片| 亚洲午夜久久久久久久久电影网| 亚洲色无码专区在线观看| 亚洲国产成人片在线观看无码| 国产亚洲综合网曝门系列| 久久久亚洲欧洲日产国码农村| 亚洲午夜精品一区二区| 亚洲成a人片在线网站| 亚洲最大福利视频| 亚洲a∨国产av综合av下载| 亚洲国产91精品无码专区| 久久久无码精品亚洲日韩软件| 亚洲精品~无码抽插| 亚洲一区二区成人| 亚洲va成无码人在线观看| 亚洲国产一区二区三区在线观看| 亚洲成AV人在线观看网址| 亚洲色偷拍另类无码专区| 亚洲bt加勒比一区二区|