Quick Site Backup (files and database) Via the Command Line

If you do any sort of web development, it is more than likely that CPANEL and phpMyAdmin are good friends of yours…and you depend on them. Even though those are extremely handy to create/modify databases and create backups, it is extremely helpful to know how to do the same thing by using only SSH and command line utilities.

To backup (export) a database using the command line interface (CLI):

mysqldump -p --user=username --add-drop-table database > backup.sql

You will then need to provide your database password and the exported data will go into a file called “backup.sql” which is located in the directory that you are currently in. (more mysqldump documentation

To backup your files:

tar -cvzf backup.tgz directoryname

The command will create an archive of all your files so you can easily move or store one file (the archive). More tar documentation.

command line to the rescue…again.

While upgrading a client’s web site to XOOPS 2.0.14 I ran into some issues with the XOOPS 2.0.14 package file (a tar.gz file). Stuffit Expander would only extract a few folders, then report an error and quit. After a few attempts, and all failures, I had to chose to turn to the command line and bingo, no problems! So, if you ever have any issues with Stuffit Expander and need to uncompress a .tar.gz file, the following commands will come in handy:

  • To uncompress a gz file: gunzip file.gz
  • To uncompress a tar file:
    tar [tar options (usually xvf)] file.tar
  • To uncompress a .tar.gz file: tar xzvf file.tar.gz

Questions? Check out the man pages for tar and gunzip.
[tags]XOOPS, gunzip, tar[/tags]