OpenWRT + SQLite

OpenWRT + SQLite

我有一個個人項目,在一個幾乎沒有任何空間(16Mb)的小型路由器中運行 Openwrt + Python + SQLite。為了儲存資料庫,我使用連接到路由器的 USB/SD 卡。

我想定期獲取資料庫條目並將它們儲存在遠端 MySQL Linux 伺服器中,這樣我就可以釋放一些空間。

這裡最好的解決方案是什麼?在路由器中實作 MySQL,以便 Linux 伺服器可以遠端連接到路由器並取出條目,或者只是下載 .db 檔案並定期在 Linux 伺服器中將其轉換為 MySQL?還有其他的IDE嗎?

答案1

試著估計或計算一下,你真的會使用整個空間嗎?出於某些行銷原因,我們認為 8Mb 可用空間確實很緊張(與 Tb 可用 HDD 相比)。我發現我的 GL-AR150 家庭自動化設備將保留未來 5 年的資料。

在某些路由器上,可以新增 SD 卡、外部 USB 記憶棒或 HDD。通常我會透過觸發器儲存監控網路攝影機的一些快照。為什麼不考慮將整個資料庫託管在外部儲存體上?

如果您的資料量較小(連續 2 天沒有以 100% 的速度載入寬頻),您可以透過 cron 安排資料上傳到 Linux 伺服器。基本上,該腳本正在呼叫一個遠端 php 文件,該文件從 sqlite 資料庫中獲取資料並插入到 mysql 中。之後,它為上傳的行設定一個標誌,這樣您下次就不會取得它。或者,如果您有 RTC,那麼該標誌可能是您的路由器 Linux 日期時間,您將其保存在 mysql 資料庫中。

相關內容