10 款最佳 Ping 掃描工具,協助您尋找網路上的設備
比較 10 款 ping 掃描工具,它們可用於快速發現區域網路、跨平台掃描和 IP 位址管理。了解掃描可以告訴您什麼,以及不能告訴您什麼。
可靠的 Synapse 復原始於一個可讀取的 PostgreSQL 轉儲檔案、一個乾淨的目標資料庫以及匹配的 homeserver 檔案。對於典型的單一資料庫安裝,Synapse 官方備份指南建議使用 PostgreSQL 的自訂轉儲格式,並排除 /etc/synapse.conf 檔案的內容e2e_one_time_keys_json。將資料還原到新建的空資料庫中;不要將轉儲檔案覆寫先前安裝遺留的資料表。然後確認 Synapse 可以從復原的資料庫啟動,且本機媒體和簽署金鑰都已存在。
本演練假設主機為 Linux,PostgreSQL 資料庫名稱為 `<database_name>` synapse,資料庫角色名稱為 `<database_role>` synapse_user。請根據您的部署環境取代資料庫、角色、備份路徑、服務名稱和配置路徑。 Docker Compose、Kubernetes、託管 PostgreSQL 和多資料庫 Synapse 部署需要針對其環境執行對應的命令。
pg_dump它會將一個 PostgreSQL 資料庫捕獲到一致的快照中,因此 PostgreSQL 和 Synapse 可以在轉儲運行時保持在線。-Fc可以使用 `synapse.txt` 指令檢查和還原自訂格式的歸檔pg_restore檔案。 Synapse 指南特別建議排除一次性金鑰表資料:復原舊的已使用金鑰可能會導致用戶端再次收到金鑰,從而導致訊息解密錯誤。表定義仍然可能出現在歸檔文件中;檢查歸檔清單時,請尋找表資料條目,而不是假設列出的表包含行。
僅備份資料庫並不完整。還應保留資料庫homeserver.yaml及其引用的所有檔案、伺服器簽署金鑰和媒體儲存目錄。 Synapse 的備份指南指出,本地上傳的媒體非常重要,因為家庭伺服器可能只會保存一份備份。如果您的設定使用了多個資料庫條目,請為 Synapse 使用的每個資料庫都建立備份。
pg_dump、、pg_restore和createdb是否psql已安裝並與您的 PostgreSQL 伺服器相容。media_store_path。備份金鑰,但不要將其暴露在 shell 歷史記錄、聊天記錄或日誌中。在自行管理的 PostgreSQL 主機上,以 PostgreSQL 管理員身分連接並檢查資料庫清單和關係。不要依賴從範例配置中複製的假定名稱。如果您的主伺服器使用遠端或託管資料庫,請使用其認可的連線方式,並驗證轉儲帳戶是否具有所需的讀取權限。

建立一個只有備份帳戶或管理員才能讀取的目錄。以下範例pg_dump以本機 PostgreSQL 作業系統帳戶身分執行,並寫入受保護的路徑。請將路徑變更為在您的環境中存在且可寫入的路徑。
sudo -u postgres pg_dump -Fc \
--exclude-table-data e2e_one_time_keys_json \
synapse -f /var/backups/synapse/synapse.dump
如果您的資料庫是遠端的,請使用您環境中允許的方式提供連接設置,例如透過受保護的.pgpass檔案或 libpq 環境變數。避免直接在命令列中輸入密碼。除非您有明確且有據可查的理由需要對一次性密鑰表進行特殊處理,否則請保留排除選項。

確認轉儲檔案存在、大小不為零且可以作為 PostgreSQL 歸檔檔案讀取。成功列出文件是一個有用的初步檢查,但這並不能證明恢復操作會完成,也不能證明整個主伺服器可以服務所有使用者。
sudo -u postgres pg_restore --list /var/backups/synapse/synapse.dump
sha256sum /var/backups/synapse/synapse.dump
將校驗和儲存在備份記錄旁邊,然後將備份檔案複製到單獨的系統或備份服務。複製後重新計算校驗和並比較結果。對於生產環境復原目標,應定期安排備份,保留多個備份版本,對其進行加密,並定期執行復原演練。
要進行恢復,請先停止 Synapse 服務,以防止在資料庫替換或測試期間它重新連接。以下服務名稱在某些軟體包安裝中很常見,但具體名稱可能有所不同;Docker 使用者應透過其 Compose 專案停止 Synapse 服務,而編排部門應使用其常規維護流程。 PostgreSQL 本身無需停止。

請使用全新的空資料庫進行復原。切勿覆寫現有的 Synapse 資料庫或已包含資料表的資料庫。如果需要保留目前資料庫以便回滾,請保持其完整,並使用臨時資料庫名稱進行恢復,然後在變更 Synapse 配置之前進行驗證。
sudo -u postgres createdb \
--encoding=UTF8 --locale=C --template=template0 \
--owner=synapse_user synapse
資料庫擁有者和區域設定應符合 Synapse 設定的要求。如果目標名稱已存在,請停止操作並確認您打算使用的資料庫;不要想當然地認為刪除它是安全的。請先建立所有必要的 PostgreSQL 角色。單一資料庫pg_dump不包含叢集範圍的角色,因此遷移到新 PostgreSQL 叢集的管理員可能還需要使用 . 工具建立單獨受保護的全域備份pg_dumpall --globals-only。

將自訂歸檔檔案載入到該空目標位置。顯式錯誤選項會在遇到錯誤時停止還原過程,而不是繼續進行並留下容易被忽略的不完整結果。
sudo -u postgres pg_restore --exit-on-error \
--dbname=synapse /var/backups/synapse/synapse.dump
如果您的備份檔案未排除該表e2e_one_time_keys_json,請連接到已還原的資料庫,並在啟動 Synapse 之前截斷該表。這是 Synapse 針對包含這些行的備份檔案所提供的復原保障措施。請勿隨意對運行中的資料庫執行此命令:它會刪除該表中的所有行。


sudo -u postgres psql -d synapse \
-c 'TRUNCATE e2e_one_time_keys_json;'
如果使用了建議的排除項,則復原作業不會包含舊的一次性鍵行,因此無需執行此截斷步驟。表條目pg_restore --list可以表示不包含資料的表定義。TABLE DATA查看歸檔內容時,請檢查是否存在此類條目;最安全的操作記錄是所使用的確切轉儲命令。
重新啟動前,請確保復原的配置指向目標資料庫,且 Synapse 進程可以存取所需的簽署金鑰和媒體儲存。如果您使用臨時資料庫名稱進行恢復,請安全地更新資料庫設置,驗證文件,然後使用常規部署流程啟動它。在新的實例通過檢查之前,請保留舊資料庫和先前的配置。
使用適合您部署環境的命令啟動服務。在 systemd 主機上,檢查服務狀態和最近的日誌。在容器中,檢查容器的運作狀況和日誌。進程正在運行只是一個初始訊號,並不代表使用者可以閱讀聊天室、發送訊息或檢索附件。

即使缺少媒體檔案、引用的配置或角色,恢復操作在技術上也可能成功。如果使用者發現附件缺失,請驗證已設定的媒體儲存空間並還原對應的本機媒體備份。如果 Synapse 無法連接,請比較已復原的資料庫擁有者、憑證、主機、資料庫名稱、區域設定和活動設定檔。
| 訊號 | 接下來要檢查什麼 |
|---|---|
pg_restore報告現有關係或所有權錯誤 | 確認目標資料庫為空且所需角色存在。恢復到全新資料庫;不要將--clean其用作快捷方式,因為您需要保留現有資料庫的內容。 |
| dump 指令傳回非零值或產生不可讀文件 | 檢查客戶端/伺服器相容性、權限、磁碟空間、目標權限以及 PostgreSQL 日誌。產生一個新的轉儲文件,並在使用前進行驗證。 |
| Synapse 啟動了,但舊的一次性金鑰仍然包含在內。 | 在允許 Synapse 為用戶端提供服務之前,請先停止 Synapse 並依照文件中記錄的截斷程序進行操作。 |
| 房間功能正常,但本地附件缺失 | 恢復匹配的本地媒體儲存和配置;PostgreSQL 轉儲不包含已上傳的媒體檔案。 |
| 復原時間或資料庫大小超出可接受範圍。 | 根據您的復原點和復原時間目標,評估 PostgreSQL 的其他備份方法,例如基本備份和使用 WAL 歸檔的時間點復原。 |
對於許多中小型部署來說,邏輯轉儲便攜且操作簡便,但隨著資料庫規模的成長,復原速度可能會變慢。對於大型或高可用性服務,請參考 PostgreSQL 的最新備份文檔,並制定經過測試的實體備份或時間點復原方案。如果邏輯轉儲有其他便攜性或審計需求,則應將其單獨保留。除非單獨備份,否則這兩種方法都無法保護儲存在 PostgreSQL 外部的檔案。

pg_restore --list且其校驗和與外部主機副本相符。文件已於 2026 年 10 月 6 日審核。指令名稱和服務管理方式會因作業系統、容器映像、PostgreSQL 版本和 Synapse 部署方式而有所不同。請根據您執行的版本和打包方式,對照文件確認相關說明。
比較 10 款 ping 掃描工具,它們可用於快速發現區域網路、跨平台掃描和 IP 位址管理。了解掃描可以告訴您什麼,以及不能告訴您什麼。
比較六款網路管理工具的效能監控功能,包括 SNMP 覆蓋範圍、映射、警報、部署模型和成本權衡。
比較適用於 Windows、iPhone 和 Android 的 Wi-Fi 分析器,包括頻道擁塞、訊號覆蓋範圍、熱圖和網路故障排除工具。
比較七款免費開源的 ping 監視器,從完整的網路套件到專注於延遲探測的工具,選擇最適合可用性、丟包率和歷史記錄的工具。
了解 QoS 在網路中的意義,DSCP 標記和流量佇列如何對語音、視訊和業務應用程式進行優先排序,以及 QoS 無法解決的問題。
比較適用於 Windows 和 Linux 的可靠 SFTP 伺服器軟體,包括 OpenSSH、Bitvise、SolarWinds 和 SFTPGo。尋找最適合您的安全性和文件傳輸需求的軟體。
比較七款 IP 位址管理工具,包括子網路發現、DNS 和 DHCP 協調、網路清單和開源 IPAM。
建置實用的網路監控,提供清晰的設備覆蓋範圍、有用的效能指標、可操作的警報,並對 SolarWinds NPM、PRTG 和 OpManager 進行比較。
比較網路掃描工具,以實現快速設備發現、跨平台 IP 掃描和企業級 IPAM,並指導如何將每個選項與您的網路相符。
使用 Nmap 的 --traceroute 選項將躍點對應到授權主機,了解躍點和 RTT 輸出,並在不進行過度掃描的情況下排查缺失的回應。