Moving from staging (MAMP) to live production server
Everything looks good to go more or less, but #4 can be improved upon by creating a multi-environment config file.  This way, instead of having to change your site urls and base path (for assets) in the event you want to overwrite your local db with your live site db to sync it up, you just use a variable in the CMS like {siteUrl} or {basePath} that's set in your config file.

nystudio107 has a great article walking you through setting up a great multi-environment.

If you're feeling even more adventurous, I also highly suggest his Database &amp; Asset Syncing article that allows you to run a command from your terminal to instantly pull down and import a copy of your database/assets from any environment you want into your local.