Centos script automatically backs up databases
Write scripts
[Plain] view plaincopy
- [Root @ iZ232s4zbqvZservice] # vimysql_dump.sh
- #! /Bin/sh
- Echo "mysqldumpstart ..."
- DB_NAME = "imms_core"
- DB_USER = "root"
- DB_PASS = "smithhuang"
- BIN_DIR = "/usr/bin"
- YEAR = 'date + % y'
- BCK_DIR = "/data/mysql_dump/" $ YEAR/
- DATE = 'date + % Y % m % d _ % H % M % s'
- Mkdir-p $ BCK_DIR
- $ BIN_DIR/mysqldump-u $ DB_USER-p $ DB_PASS $ DB_NAME | gzip> $ BCK_DIR/mongodb_name.dump_1_date. SQL .gz
- Sleep1
- #####
- DB_NAME = "imms_app"
- $ BIN_DIR/mysqldump-u $ DB_USER-p $ DB_PASS $ DB_NAME | gzip> $ BCK_DIR/mongodb_name.dump_1_date. SQL .gz
- Echo "mysqldumpendat" $ DATE
Note:
Directory/data/mysql_dump/and directory/data/logs/mysql should have www user permissions, and it is best to change it to 777 permissions.
Add the script to the scheduled task (last line) (executed at every day)
Switch to the www user first
[Plain] view plaincopy
- [Www @ iZ232s4zbqvZ ~] $ Crontab-e
- # Immsmysqldump
- 0101 ***/usr/local/service/mysql_dump.sh>/data/logs/mysql/mysqldump. log
Use gunzip to decompress the archive before restoration.
For example:
[Root @ iZ232s4zbqvZ 2015] # gunzip imms_core.dump_20150211_133301. SQL .gz