แชร์ผ่าน


กู้คืนไฟล์ที่ถูกลบใน OneLake

OneLake ปกป้องข้อมูลของคุณโดยอัตโนมัติโดยใช้การลบแบบนุ่มนวล ซึ่งจะเก็บไฟล์ที่ถูกลบไว้เป็นเวลาเจ็ดวันก่อนที่จะลบออกอย่างถาวร การป้องกันในตัวนี้ช่วยให้คุณกู้คืนจากการลบโดยไม่ได้ตั้งใจหรือข้อผิดพลาดของผู้ใช้โดยไม่จําเป็นต้องกู้คืนจากการสํารองข้อมูล

หลังจากผ่านไป 7 วัน ไฟล์ที่ถูกลบแบบชั่วคราวจะถูกลบออกอย่างถาวรและไม่สามารถกู้คืนได้

คุณชําระค่าข้อมูลที่ถูกลบแบบชั่วคราวในอัตราเดียวกับข้อมูลที่ใช้งานอยู่

กู้คืนไฟล์ที่ถูกลบแบบชั่วคราว

คุณสามารถคืนค่าไฟล์ที่ถูกลบแบบชั่วคราวได้โดยใช้ Azure Storage Explorer, Azure PowerShell หรือ Azure Storage REST API คุณต้องมีสิทธิ์เขียนไฟล์เพื่อกู้คืน

คืนค่าไฟล์โดยใช้ Azure Storage Explorer

Azure Storage Explorer มีส่วนติดต่อแบบภาพเพื่อเรียกดูและคืนค่าไฟล์ที่ถูกลบแบบชั่วคราว

เมื่อต้องการคืนค่าไฟล์โดยใช้ Azure Storage Explorer ตรวจสอบให้แน่ใจว่าคุณมี:

ใช้ขั้นตอนต่อไปนี้เพื่อคืนค่าแฟ้ม:

  1. เปิด Azure Storage Explorer และเชื่อมต่อกับพื้นที่ทํางาน OneLake ของคุณ

  2. ไปที่เลคเฮาส์หรือรายการข้อมูลที่มีไฟล์ที่ถูกลบ

  3. เลือกปุ่มดรอปดาวน์ถัดจากแถบเส้นทาง แล้วเลือก Blobs ที่ใช้งานอยู่และถูกลบแบบชั่วคราว แทน Blobs ที่ ใช้งานอยู่ เริ่มต้น

  4. เรียกดูโฟลเดอร์ที่มีไฟล์ที่ถูกลบ

  5. คลิกขวาที่แฟ้มที่ถูกลบแบบชั่วคราว แล้วเลือก ยกเลิกการลบ

  6. ไฟล์จะถูกคืนค่าไปยังตําแหน่งเดิมและพร้อมใช้งานทันที

คืนค่าแฟ้มโดยใช้ PowerShell

ใช้ Azure PowerShell เพื่อแสดงรายการและคืนค่าไฟล์ที่ถูกลบแบบชั่วคราวโดยทางโปรแกรม

เมื่อต้องการคืนค่าแฟ้มโดยใช้ PowerShell ตรวจสอบให้แน่ใจว่าคุณมี:

ใช้สคริปต์ต่อไปนี้เพื่อแสดงรายการแฟ้มที่ถูกลบแบบชั่วคราวในเส้นทางเฉพาะ:

# Connect to OneLake
$ctx = New-AzStorageContext -StorageAccountName "onelake" -UseConnectedAccount -endpoint "fabric.microsoft.com"

# List soft-deleted blobs in a container (workspace)
$workspaceName = "your-workspace-name"
$path = "your-lakehouse.Lakehouse/Files/"

Get-AzStorageBlob -Container $workspaceName -Context $ctx -Prefix $path -IncludeDeleted | 
    Where-Object { $_.IsDeleted } |
    Select-Object Name, DeletedTime, RemainingDaysBeforePermanentDelete

ใช้สคริปต์ต่อไปนี้เพื่อคืนค่าแฟ้มที่ถูกลบแบบชั่วคราว:

# Connect to OneLake
$ctx = New-AzStorageContext -StorageAccountName "onelake" -UseConnectedAccount -endpoint "fabric.microsoft.com"

# Restore a specific blob
$workspaceName = "your-workspace-name"
$blobPath = "your-lakehouse.Lakehouse/Files/deleted-file.parquet"

Get-AzStorageBlob -Container $workspaceName -Context $ctx -Blob $blobPath -IncludeDeleted |
    Where-Object { $_.IsDeleted } |
    Restore-AzStorageBlob

สําหรับตัวอย่าง PowerShell เพิ่มเติม โปรดดู กู้คืน Blobs และไดเรกทอรีที่ถูกลบแบบชั่วคราวโดยใช้ PowerShell

กู้คืนไฟล์โดยใช้ REST API

คุณยังสามารถคืนค่าไฟล์ที่ถูกลบแบบชั่วคราวได้โดยใช้ Azure Blob Storage REST API และ SDK การดําเนินการยกเลิกการลบ Blob จะคืนค่าเนื้อหาและข้อมูลเมตาของ Blob ที่ถูกลบแบบชั่วคราว

สําหรับข้อมูลเพิ่มเติม โปรดดู ยกเลิกการลบ Blob REST API