作者fowei (小維)
看板PHP
標題Re: [請益] 二個網路空間的備援方式
時間Fri Mar 7 18:15:53 2014
※ 引述《fowei (小維)》之銘言:
: 今天BOSS問我, 如果你去度蜜月了. 公司主機出問題. 怎麼辦?
: 這是一個我本來就有在思考的問題. 也是找不太好很好的解決方式.
: 先列舉目前的環境好了.
: 公司在 智邦(A). 匯智(B). 都有租用linux主機. 用來放 php+mysql
: 我自己是 用 yii framework 寫公司的EIP .. 目前還OK.
: 手邊的備援方式是. 在B上面. 用PHPMYADMIN匯出. 再到A匯入.
: 而提供同仁2個連結. 1個是目前的(B). 另1個則是當備援(連到A)
: 而這個作業方式. 相當依賴你懂一點MYSQL. 因為匯入匯出有語系要注意.
: 而資料量太大. 在匯出.匯入時可能有檔案太大的問題...
: 所以個人想法是. 寫一支PHP. 可以把資料庫匯出成EXCEL. 或匯入.
: 這樣即使我不在. 也可以有人進行備份的動作. 即使不懂的人. 匯出匯入應該OK.
: 甚至也可以把這個匯入在公司內部主機做第三個備援.
: 不知道有沒有更方便的方法呢. 因為PHP匯成EXCEL再匯入. 用phpEXCEL好像會爆.
: 還是存成CSV. 自己再parser呢? ..
最近有想到2個方法. 提出來看大家有沒有什麼建議
方法A:
[B主機] --> 每週1.3.5 早上9:00 ~9:30 維護. 備份成一堆 CSV
--> 存在公司做備份 --> [A主機] 匯入CSV
當 [B主機] 有問題時, 依最近的備份日期.
請同仁登入 [A主機]. 將未登打的部份輸入. 即可進行備援. 並切換到[A主機]
至此, [B主機] --> 進入備援機制.
優點: 比較笨. 容易做到.
缺點: 要由人員排班執行備份.
方法B:
寫一支php程式. 進行備份. (開一個網頁, 一直倒數計時, 每天晚上11點執行)
將資料庫. 存在[B主機]某目錄. 如 backup_temp
利用定時啟動 FTP. 去把目錄的東西下載下來. (網路有免費FTP定時程式)
再定時把下載的東西上傳到[A主機]. 如 backup_upload
再寫一支php程式. 進行匯入. (開一個網頁, 一直倒數計時, 每天早上3點執行)
優點: 可以自動執行
缺點: 很麻煩. 要配合一堆有的沒的.
因為2台都是虛擬主機.. 實在是沒學過這方面的. 有沒有人有更好的建議呢?
有大概GOOGLE了. 還是找不到什麼"正常點"的方式 Q.Q ...
先謝謝版友了..
--
生活的藝術. 大概是只有被創造的人才能體會吧
http://www.wretch.cc/album/fowei
☑電影 ☑單車 ☑遊戲 ☑墮落
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 60.249.143.208
1F:推 yanli2:為什麼不用 MySQL Replication = = 這樣就能每秒100%同步了 03/07 18:42
2F:推 yanli2:兩台電腦用一模樣的資料, 出問題時隨時切換阿 03/07 18:45
3F:→ noxhsu:虛擬主機商通常不允許開port,可以用sql的方式匯入指定檔案 03/07 20:05
4F:→ noxhsu:語法可以查一下,基本上語法簡單也不會有上傳限制(ftp傳檔 03/07 20:06
5F:→ noxhsu:然後用php抓指定路徑的檔案把資料塞回去 03/07 20:07
6F:→ noxhsu:至於備份請主機商開cron去設定就好,csh 直接執行mysql語法 03/07 20:09
7F:→ danny8376:一樓沒看到是虛擬主機嗎 你去找哪家能搞replication的 03/07 21:50
8F:推 yanli2:沒看到 03/07 22:12
9F:→ gname:前提是db倒出來的資料夠少...否則就科科了~ 03/08 00:17
10F:→ alog:..多請一個人來輪班XD 03/08 03:36
11F:→ alog:已經回原本的討論串惹 請樓主過目~ 03/08 03:44
12F:→ fowei:我回在那邊了. 那回去上面的討論串再討論吧 03/08 10:56
13F:→ dlikeayu:aws ec2,rds表示: 03/09 09:41
14F:→ fowei:剛看了一下. 其實還是不太懂計價方式. 及方案. .. = = 03/10 15:47
15F:→ fowei:應該是 EC2 + S3 的樣子 ..這部份等後面再來規劃好了 =.= 03/10 15:47