Reputation: 490183
After a huge MySQL blunder on a production server (my fault, and yes I have learned), I am now looking at creating a dump of the MySQL database before I do a critical operation (about 15 queries to the db, insert/update/selects). I know phpMyAdmin can 'dump' the database to SQL queries, but I think this may be a feature of it, not a feature of MySQL?
So, is there a way to do this using MySQL, and if not (which I suspect), what would be the best way to dump the db to a file on the server on command? Preferably as a tarball of the whole DB in ready to import SQL format.
Thank You!
Upvotes: 0
Views: 222
Reputation:
Another good route is to use something like sqlyog to automate backups. I run this on a local Windows machine I have to do backups of all my remote servers.
Upvotes: 0
Reputation: 1862
I've used this for a few years now, why re-create the wheel :)
http://worldcommunity.com/opensource
Upvotes: 0
Reputation: 4463
MySQL dump will do it, and you can pipe it to gzip so it stores better:
mysqldump --opt -Q -h[server] -u[username] -p[password] [dbname] | gzip > [file].sql.gz
And to restore you unzip it and:
mysql -h[server] -u[username] -p[password] [dbname] < [file].sql
Upvotes: 2
Reputation: 488394
You are looking for the mysqldump function, I believe:
mysqldump my_database > database.dump
Upvotes: 6