dbhash (或 Windows 上的 dbhash.exe) 實用程式是一個命令列程式,用於計算 SQLite 資料庫的架構和內容的 SHA1 雜湊。
Dbhash 會忽略不必要的格式化詳細資料,只對資料庫架構和內容進行雜湊。因此,即使資料庫檔案因下列原因而修改,雜湊值仍會保持不變:
上述操作可能會對原始資料庫檔案造成大幅變更,因此導致檔案層級的 SHA1 雜湊值截然不同。但由於這些操作並未變更資料庫檔案中所呈現的內容,因此 dbhash 計算出的雜湊值也不會變更。
Dbhash 可用於比較兩個資料庫,以確認它們是等效的,即使它們在磁碟上的表示方式截然不同。Dbhash 也可用於驗證遠端資料庫的內容,而無需透過速度較慢的連結傳輸整個遠端資料庫的內容。
Dbhash 是命令列實用程式。若要執行它,請在命令列提示字元輸入「dbhash」,後接一個或多個要進行雜湊的 SQLite 資料庫檔案名稱。資料庫雜湊值將顯示在標準輸出上。例如:
drh@bella:~/sqlite/bld$ dbhash ~/Fossils/sqlite.fossil 8d3da9ff87196312aaa33076627ccb7943ef79e3 /home/drh/Fossils/sqlite.fossil
Dbhash 支援命令列選項,可限制要雜湊的資料庫檔案的資料表,或限制雜湊僅限於內容或僅限於架構。執行「dbhash --help」以取得更多資訊。
若要在 unix 上建置 dbhash 實用程式副本,請取得 SQLite 正規原始碼副本,然後輸入
./configure make dbhash
在 Windows 上,輸入
nmake /f makefile.msc dbhash.exe
dbhash 程式是由稱為 dbhash.c 的單一 C 程式碼檔案所實作。若要手動建置 dbhash 程式,只需編譯 dbhash.c 原始碼檔案,並將其連結至 SQLite 函式庫即可。
此頁面最後修改於 2022-01-08 05:02:57 UTC