共計 3325 個字符,預計需要花費 9 分鐘才能閱讀完成。
這篇文章將為大家詳細講解有關 oracle 中 BTRFS 文件系統管理的示例分析,丸趣 TV 小編覺得挺實用的,因此分享給大家做個參考,希望大家閱讀完這篇文章后可以有所收獲。
btrfs 文件系統簡介
btrfs(通常念成 Butter FS),該文件系統為了滿足大型存儲子系統的可伸縮性需求擴張。是由 Oracle 于 2007 年宣布并進行中的 copy-on-write 文件系統,目標是取代 linux 目前的 ext3/ 4 文件系統的缺陷。
特點:
●創建可讀可寫的快照,可以回滾到文件系統之前狀態.
●支持 ext3/ 4 無縫升級到 btrfs,降級回到 ext3/4
●支持數據完整性校驗功能
●使用透明的壓縮技術可以節約磁盤空間
●使用碎片整理提高性能
●支持 riad0,raid1,raid5,raid10 等磁盤陣列
btrfs 不支持 swap
創建
可以使用 mkfs 或者 btrfs 自帶的命令集來部署一塊或多塊一個設備
常用命令
命令
功能
mkfs.btrfs block_device
創建單個 btrfs 文件系統;例如
mkfs.btrfs /dev/sdb1
mkfs.btrfs -L label block_device
創建卷標簽,可以使用 label 來掛載文件系統
mkfs.btrfs -L myvolume /dev/sdb2
mkfs.btrfs -m single block_device
在一塊設備上創建一個 btrfs 文件系統, 但不復制元數據;例如
mkfs.btrfs -m single /dev/sdc
mkfs.btrfs block_device1 block_device2 …
元數據保存在多塊設備上;
mkfs.btrfs /dev/sdd /dev/sde
mkfs.btrfs
-m raid0 block_device1 block_device2 …
條帶化數據保存在多塊設備 (raid0)
mkfs.btrfs -m raid0 /dev/sdd /dev/sde
mkfs.btrfs
-d raid1 block_device1 block_device2
鏡像數據在相關的設備 (raid1)
mkfs.btrfs -d raid1 /dev/sdd /dev/sde
mkfs.btrfs -d raid10 -m
raid10 block_device1block_device2 block_device3 block_device4
創建 raid10,至少四塊設備
mkfs.btrfs -d raid10 -m raid10 /dev/sdf \
/dev/sdg /dev/sdh /dev/sdi /dev/sdj /dev/sdk
# mkfs.btrfs -m single /dev/sdb /* 創建
Btrfs v3.16.2
See http://btrfs.wiki.kernel.org for more information.
Turning ON incompat feature extref : increased hardlink limit per file to 65536
fs created label (null) on /dev/sdb
nodesize 16384 leafsize 16384 sectorsize 4096 size 20.00GiB
# mount /dev/sdb /my-btrfs-mountpoint /* 掛載,掛載目錄是先存在。
# echo UUID= b7175cc5-2b21-4c73-827f-791d00e77658 /my-btrfs-mountpoint btrfs defaults 0 0 /etc/fstab // 開機自動掛載
查看 btrfs 相關信息
btrfs filesystem df 查看比 linux 自帶的 df 命令比較準確。
# btrfs filesystem df /my-btrfs-mountpoint
Data, single: total=8.00MiB, used=64.00KiB
System, single: total=4.00MiB, used=16.00KiB
Metadata, single: total=264.00MiB, used=112.00KiB
GlobalReserve, single: total=16.00MiB, used=0.00
顯示所有的 btrfs 文件系統信息
# btrfs filesystem show
Label: none uuid: a0518a90-7c44-497b-8d57-1c40af672fab
Total devices 1 FS bytes used 192.00KiB
devid 1 size 20.00GiB used 276.00MiB path /dev/sdb
Btrfs v3.16.2
擴容或者縮減
常用命令
btrfs device add devicemountpoint
擴容:添加一塊新的設備
btrfs device add /dev/sdd /my-btrfs-mountpoint
btrfs device delete device
刪除:刪除一塊現有設備 (刪前要做好數據容量規劃)
btrfs device delete /dev/sdd /my-btrfs-mountpoint
btrfs filesystem balance mountpoint
在新添加設備或者移除設備后,刷新文件系統使數據重新分配到可用的設備上。
壓縮以提高 I / O 性能
#btrfs filesystem defragment /my-btrfs-mountpoint /* 整理文件系統
# btrfs filesystem autodefrag /my-btrfs-mountpoint /* 大型數據庫不建議使用
調整文件系統大小
# btrfs filesystem resize +2g /my-btrfs-mountpoint /* 添加 2G 空間
Resize /my-btrfs-mountpoint of +2g
# btrfs filesystem resize -2g /my-btrfs-mountpoint /* 減少 2G 空間
Resize /my-btrfs-mountpoint of -2g
# btrfs filesystem resize 20g /my-btrfs-mountpoint /* 設置空間大小為 20G
Resize /my-btrfs-mountpoint of 20g
創建快照
# 快照必須在其子文件系統目錄下
# btrfs subvolume snapshot /my-btrfs-mountpoint/ /my-btrfs-mountpoint/snapshot1 /* 創建快照
Create a snapshot of /my-btrfs-mountpoint/ in /my-btrfs-mountpoint/snapshot1
# btrfs subvolume list /my-btrfs-mountpoint /* 查看快照
ID 257 gen 12 top level 5 path snapshot1
# btrfs subvolume delete /my-btrfs-mountpoint/snapshot1 /* 刪除快照
Transaction commit: none (default)
Delete subvolume /my-btrfs-mountpoint/snapshot1
替換壞的設備
# btrfs replace start /dev/sdc /dev/sde -r /my-btrfs-mountpoint /*/dev/sdc 已經有故障的設備,/dev/sde 新設備 /my-btrfs-mountpoint 文件系統掛載點
# btrfs replace status -1 /my-btrfs-mountpoint /* 查看更換后的狀態
Started on 29.Aug 14:49:22, finished on 29.Aug 14:49:22, 0 write errs, 0 uncorr. read errs
關于“oracle 中 BTRFS 文件系統管理的示例分析”這篇文章就分享到這里了,希望以上內容可以對大家有一定的幫助,使各位可以學到更多知識,如果覺得文章不錯,請把它分享出去讓更多的人看到。