SQLite是一個類似于Access 的文件型數據庫,本博客對其功能與用法都作了比較詳細的介紹。這里談到的是SQLiteManager的遠程維護的問題。
首先是一般的日程維護,比如查看結構、修改某些記錄等。你也許會覺得,文件型數據庫只能下載到本地才能維護,那完全不是這么回事,因為我們有一個很好的管理工具SQLiteManager,這個工具我在之前的文章也介紹過。
在正式講如何遠程維護之前,我們明白SQLiteManager對數據庫維護的機制。在初用 SQLiteManager的時候,我們一般是通過絕對路徑來維護對數據庫的連接的。在本地的話,這個路徑是可以用的,但是在虛擬主機上,這種方式就失效 了,因為你本機上的鏈接跟你在虛擬主機上的連接肯定不太一樣,甚至操作系統都可能不一樣。我們仔細研究就會發現,SQLiteManager是通過一個在 include目錄下的名為config.db的文件來保存這些配置的,這本身就是一個SQLite數據庫,我們就會想,我們有沒有可能用相對路徑來解決 這個問題呢?結論是肯定的。
首先我們在本地解壓SQLiteManager,將config.db本身用SQLiteManager管理起來。只有這樣,我們才能自如地進行后面的控 制。然后用SQLiteManager瀏覽config.db下面的database表,將含有config.db的這條記錄的location 字段值由原來的絕對路徑改為include/config.db。然后就可以把SQLiteManager整個傳入遠程虛擬主機。
在虛擬主機上,我們就可以運行SQLiteManager了。然后在config.db下面database表中加入你要管理的數據庫的一條記錄,這條記錄的location請用相對路徑。如果是上一級目錄下的請用..來回退。
這樣的話,你的遠程SQLite數據庫就可以很方便地管理了。這 里值得注意的是,你不要把你的鏈接暴露出來。也就是說,你自己要訪問的話,直接在瀏覽器的地址欄中輸入,而不要在你的頁面上做任何到 SQLiteManager的鏈接,也建議你把SQLiteManager的目錄改一個名字,以免好事之徒嘗試。否則會帶來很大的安全隱患。
第二個問題是平常數據庫要經常備份,備份很簡單,你下載到本地就行了。因為虛擬主 機提供商的某個調整、黑客的某次攻擊,都可能會導致你的數據庫不可用。這里一個很值得注意的是數據庫的恢復的問題。你以為直接把備份的數據庫傳上去就可以 了。其實這是不可行的,因為在你恢復的過程中,會有人不斷地訪問你的站點,這時候會導致你的數據庫毀壞,從而恢復不成功。有兩個辦法可以解決這個問題,一 是關閉站點,二是用一個不同于你原數據庫的名字上傳,然后傳完之后,把原有數據庫刪除,再改名。后者應該是最好的。
好了,這也是本人幾個月來的一點心得,現在拿出來跟大家分享,希望能對大家有所幫助。
新聞熱點
疑難解答