| Backing
Things Up
Most
websites these days use one or more databases
to organize pages, maintain an ecommerce
shopping cart, or even have a dealer locator
system.
With
a content management system or a database-driven
site, the database is the critical component
that stores your information. Most web servers
will do a backup of the whole system each
day, but sometimes it can be difficult to
extract or recover the mySQL database. Plus,
most of these backup systems are often attached
directly to the server. If the server fails
or the datacenter has an outage, your data
can't be easily accessed.
With
PHP, one of the things you can easily do
is create an automated script that each
day (or even more frequently) takes a copy
of the database and backs it up to another
webserver.
How
does this work from a technical perspective?
PHP
can create a backup of a database (or just
selected tables) in three easy steps:
- A
cron task tells the script to execute
(perhaps once a day at a set time of the
day).
Here's a copy of the how the database
looks on the web server:
- The
PHP script creates what is called a mySQL
dump file. Essentially, this is a text
file that makes it very easy to recreate
the database.
Here's a sample of a mySQL dump file:

- The
php system then opens a secure FTP (file
transport protocol) connection to the
other server, and uploads this backup
file to a folder. The system can also
sends a confirmation email, usually by
connecting to sendmail, that lets you
know that the system was backed up properly.
Here's a copy of a sample confirmation
email from our system:
Why
should I bother using PHP to back up databases
from my website?
Once
it's in place, it gives you peace of mind
knowing that your data is safe and secure
on a remote server.
|