If that title doesn't make sense to you, please stop reading.  You're wasting your time. 

This is quite possibly one of the most complicated and confusing things I've ever done.  All I initially set out to do was find a way to periodically and automatically backup my website's database and email it to me.  The database is probably the most important part of my website, and Gmail gives me tons and tons of space, so it would be dumb to not do it.  It's a fairly simple task, but I wasn't able to find any reliable, well-explained information out there.  So I used information from a bunch of different places and finally developed something that works.  With web hosts that use cPanel, life is easy.  But with DreamHost, things are a bit different.  And since I know nothing about Linux/Unix, there was an unnecessarily large learning curve.  Here's what I finally ended up with:  A easily-customizable and fully-functional bash script that backs up, gzips, and emails a copy of the current website database then deletes the backup from the server.  That sounds easy, but here are my notes from this several-month task: 

Create a plain text file and put some stuff in it.  Replace the generic details with your specific ones. 
#!/bin/bash

DBNAME=something
DBUSER=username
DBPASS=password
DBHOST=server.com
EMAIL="user@mail.com"
DATE=`date +%Y%m%d`

mysqldump --opt -u$DBUSER -p$DBPASS -h $DBHOST $DBNAME > $DBNAME$DATE.sql
gzip $DBNAME$DATE.sql
mutt -a $DBNAME$DATE.sql.gz $EMAIL -s "$DBNAME Database Backup"
rm $DBNAME$DATE.sql.gz
After the initial configuration variables, the first line spits out a sql backup and gzips it.  The second line emails the file to the specified address.  The third line deletes the file so it doesn't waste space on your server. 

Save the file as "backup.sh" and put it in your server root.  The server root is above any usable file, directory, or domain.  It's not publicly accessible by anyone but the owner of the domain/server (that's you). 

Setup a crontab that executes the file at given times or intervals. 
  1. Setup shell access and login to your domain (PuTTY worked for me).
  2. Type "crontab -e" to get into the crontab editing screen.  Type "0 0 * * 2,4,6 /home/username/backup.sh", which will run the backup script every 2nd, 4th, and 6th day of the week (customize as desired).  Save the crontab and get back to the main shell screen.
  3. Enter "dos2unix backup.sh" to make the script readable as a Unix file (I read this somewhere), and then enter "chmod 777 backup.sh".
After many trials and failures, things finally worked.  If this information was helpful to anyone, please let me know.  I could use an ego boost. #technology