一、 Database Backup和恢複策略
a) 直接拷貝檔案
直接將/usr/share/TSMIS/mysql/test 檔案夾拷貝到其他地方。
mysqlhotcopy db_name /path/to/some/dir
只適合MyISAM表,實際上是複製表檔案(.frm, ,MYI, .MYD)
缺點:會鎖表。只能恢複到上一次備份的狀態。
優點:速度快。45萬條資料花了17s。
b) Mysqldump
i. mysqldump --tab=/path/to/some/dir --opt db_name
ii.
1. 開啟二進位日誌,重啟服務。
在my.cnf中的mysqld段中,增加:
在相應目錄下會產生mysql-bin.000001 mysql-bin.index檔案。對這個資料進行update、insert、delete操作的時候,響應的操作就會被記錄到mysql-bin.xxxxxx 檔案中。
2. 使用mysqldump 備份的時候,加上 --flush-logs --delete-master-log 選項,備份之後,會刪除以前的二進位記錄檔。
3. 恢複的時候,需要先將mysqldump 備份的檔案恢複。之後,使用mysqlbinlog 工具,將二進位日誌轉換成sql 重新匯入。
mysqlbinlog hostname-bin.[0-9]* > test_bk.sql
優點:可以完全備份。
缺點:備份速度稍慢。45萬條資料30s左右。日誌占空間。
c) 通過程式進行同步
i. 建立一個備份資料庫test_bak,定時執行一個任務,將test中的資料轉存到test_bak中。當test出問題的時候,將test_bak中的資料重新轉存到test中。
ii.
二、 資料庫表結構整理
a) 將過車資訊表合并,刪除無用的表,刪除無用的預存程序。
i. 刪除brand、subbrand、uploadqueue相關表。
ii. 合并幾表vehicleinfo, vehiclelicense, vehicletype, bodycolor, picture為ehicleinfo,刪除其中的:colorname, 增加:colorcode
iii. 刪除預存程序,只保留inserttrafficdata和deletehistorydata。
iv. 視圖vehicle是否保留?
v. 其他的表:role相關的表也刪除。
vi. 增加字典表,全域配置表,曆史狀態表,動作記錄表。
b) 其他要修改的地方
c) 視頻電警表整理問題
i.
10.67.51.151