如何查找SQLite數據庫中單個表的磁盤使用情況,而不將其複製到新的空數據庫中?SQLite表磁盤使用情況
47
A
回答
70
您可以使用http://www.sqlite.org/download.html的sqlite3_analyzer。
這是一個非常酷的工具。它顯示了每個帶有或不帶索引的表使用的頁數(默認情況下,每個頁都是1024字節)。
這是Northwind數據庫樣本sqlite3_analyzer輸出:
*** Page counts for all tables with their indices ********************
EMPLOYEES............................. 200 34.4%
ORDERS................................ 152 26.2%
CATEGORIES............................ 90 15.5%
ORDER DETAILS......................... 81 13.9%
CUSTOMERS............................. 17 2.9%
SQLITE_MASTER......................... 11 1.9%
PRODUCTS.............................. 7 1.2%
SUPPLIERS............................. 7 1.2%
TERRITORIES........................... 6 1.0%
CUSTOMERCUSTOMERDEMO.................. 2 0.34%
CUSTOMERDEMOGRAPHICS.................. 2 0.34%
EMPLOYEETERRITORIES................... 2 0.34%
REGION................................ 2 0.34%
SHIPPERS.............................. 2 0.34%
它還生成可用於創建使用情況統計,然後你就可以分析數據庫的SQL語句。
3
我知道這個答案完全違背了問題的精神,但它確實讓你的大小,而不複製文件...
$ ls -lh db.sqlite
-rw-r--r-- 1 dude bros 44M Jan 11 18:44 db.sqlite
$ sqlite3 db.sqlite
sqlite> drop table my_table;
sqlite> vacuum;
sqlite> ^D
$ ls -lh db.sqlite
-rw-r--r-- 1 dude bros 23M Jan 11 18:44 db.sqlite
+0
這是鬼鬼祟祟!我建議在代碼的上面添加註釋,以解釋代碼段的作用,它花了我一些時間。 – Moot 2018-01-24 22:49:27
相關問題
- 1. 如何知道未安裝磁盤的磁盤使用情況?
- 2. VB.NET:監控磁盤使用情況
- 3. 碼頭磁盤使用情況
- 4. netbeans優化磁盤使用情況
- 5. cassandra磁盤空間使用情況
- 6. 表磁盤空間使用情況的文件組,分區MSSQLSERVER
- 7. 如何使用hazelcast處理分佈式磁盤到磁盤的各種情況?
- 8. 在Linux中使用CLI生成磁盤使用情況圖表/圖表
- 9. 安卓應用程序磁盤使用情況
- 10. Windows XP中應用程序的磁盤使用情況
- 11. 可可API用於磁盤空間使用情況分解
- 12. 監控ASP.NET應用程序內存和磁盤使用情況
- 13. 獲取iPhone應用程序的磁盤使用情況
- 14. RabbitMQ的隊列磁盤空間使用情況
- 15. Shell腳本查找目錄的磁盤使用情況
- 16. 在Ubuntu中進程的磁盤空間使用情況12.04
- 17. Google Cloud Stackdriver監視器計算引擎磁盤使用情況
- 18. 查找磁盤中某個目錄的使用情況%
- 19. 如何通過PHP顯示磁盤使用情況?
- 20. 如何讀取C變量中的磁盤使用情況(du)
- 21. SQL Server:查找數據庫磁盤空間使用情況
- 22. 獲取Linux進程資源使用情況(CPU,磁盤,網絡)
- 23. Linux服務器不能正確顯示磁盤使用情況
- 24. ElasticSearch查找磁盤空間使用情況
- 25. 如何監視kubernetes持久卷的磁盤使用情況?
- 26. 從SoftLayer API獲取磁盤使用情況
- 27. 計算並顯示磁盤使用情況
- 28. DataDog中的容器磁盤使用情況
- 29. 如何查找結果集的磁盤使用情況?
- 30. sqlite3查詢磁盤空間使用情況
非常感謝你!只是我正在尋找... – MrMage 2012-07-29 15:13:21
請注意,sqlite3_analyze需要很長時間才能運行。 – alecco 2013-05-29 20:22:12
哈哈!所以這就是'sqlite3_analyzer'的功能! – 2013-06-03 13:33:46