Assuming you are a superuser, create a new database:
mysqladmin -p create db_name
mysql -p db_name < db_name.sql
Dump the db:
mysqldump -p –opt db_name > db_name.sql
Here’s a script called db_backup (make the file executable with chmod a+x filename):
# dumb the dbs
mysqldump -u$db_user -p$db_pass –opt asterisk > $path/asterisk.sql
mysqldump -u$db_user -p$db_pass –opt gallery2 > $path/gallery2.sql
mysqldump -u$db_user -p$db_pass –opt wordpress > $path/wordpress.sql
# create an archive, cleanup
tar -P -zcf $path/$filename $path/*.sql
rm -f $path/*.sql
Edit the crontab with crontab -e and add the following line (which runs every day at 11 pm and logs to the file specified):
0 23 * * * /backup/db_backup.sh >> /var/log/db_backup.log
Alternately you can backup all databases with one command:
mysqldump –all-databases -p > mysqlbackup.sql
Or backup the database files directly from /var/lib/mysql/. You don’t have to be a guru to administer your databases (though some knowledge of relational databases & SQL definitely helps). PHPMyAdmin is a handy tool that you should setup if you haven’t already.
Benjamin has been associated with computer technology starting from a very early age, and has contributed to the success of many businesses and enterprises since 2001.
He loves to crush pow at Keystone, play acoustic guitar, climb rocks, and ascend mountains on his road bike.
Benjamin is an Avalanche fan and currently resides in Boulder, Colorado.