2
A
回答
2
這是火鳥的許多痛苦之一。備份/使用gbak
1
火鳥偶爾會運行一個掃刪除索引等記錄還原數據庫,並恢復用於其他用途的空間 - 要做到這一點 最佳和唯一有效和正確途徑。換句話說,只要掃描已經運行,您將具有與數據庫文件較小相同的性能。如果您正在嘗試這樣做,您可以強制立即掃描。
但是,無論如何,實際數據庫的大小不會縮小,除非執行備份和還原。如果size是一個問題,使用-USE_ALL_SPACE參數爲gbak,它將阻止爲未來的記錄保留空間,這將產生一個較小的數據庫。
0
許多用戶不知道爲什麼他們沒有得到他們的磁盤空間,回來的時候,他們 從數據庫中刪除了很多紀錄。
原因是這是一個昂貴的操作,它需要大量的磁盤寫入和內存 - 就像對硬盤分區進行碎片整理一樣。 這些數據所使用的數據庫(頁面)部分被標記爲空,並且Firebird將在下次需要寫入新數據時重新使用它們 。
如果磁盤空間對您很重要,您可以通過 進行備份和恢復。由於您正在執行備份到 立即恢復,所以使用「禁止垃圾回收」 或「不使用垃圾回收」開關(gbak中的-G)是明智的做法,這將使 備份成爲一個LOT FASTER 。垃圾收集用於清理數據庫,由於它是一項維護任務,它通常與 一起進行備份(因爲備份必須通過整個數據庫)。 但是,您很快就會丟棄該數據庫文件,並且沒有需要清理它的 。
相關問題
- 1. 如何一次刪除多條記錄?
- 2. 刪除多條記錄與子表
- 3. 在軌道中刪除多條記錄
- 4. 無法刪除多條記錄
- 5. 多刪除記錄
- 6. 優化刪除引用多個表
- 7. 如何刪除最後一個記錄
- 8. 如何優化包含LIKE'%abc%'查詢的160多萬條記錄的MySQL表
- 9. 最後一個連接表的記錄(如何優化)
- 10. 我應該重置表索引/刪除多行後優化嗎?
- 11. 如何優化從多個表中獲取記錄
- 12. 如何使用CakePHP和AJAX從表中的多條記錄中刪除單條記錄
- 13. 刪除功能刪除表中的最後一條記錄。 js jquery.updated
- 14. 優化刪除
- 15. Algolia:從儀表板刪除多條記錄
- 16. 使用HQL語句刪除ID列表中的多條記錄
- 17. 刪除多個記錄相關表
- 18. 從多個Access表中刪除記錄
- 19. 如何從兩個表中刪除兩條記錄?
- 20. 如何從具有特定條件的表中刪除記錄
- 21. 如何刪除表中的記錄?
- 22. 如何刪除記錄從連接表
- 23. 我如何刪除表中的記錄?
- 24. 如何刪除使用PDO插入到MySQL表中的最後一條記錄?
- 25. 在C#中優化HTML標記刪除
- 26. Subsonic刪除多個記錄
- 27. 如何刪除記錄?
- 28. 如何刪除「子」記錄?
- 29. 如何刪除未知號碼的最後一條記錄(條件)?
- 30. SQL Server最後25條記錄查詢優化