Working with Ubuntu

Automatic database backup

Posted in git, xampp by nigelbabu on July 20, 2010

I use git extensively for version control.  Its nice to use git since it backs up the code, but the database still remains unversioned.  Well, thankfully, XAMPP has a script that does a database dump.  So, I wrote a script to do the dump and then commit it to git.

Big Ben by vgm8383 on flickr

Big Ben by vgm8383 on flickr. Used under Attribution-NonCommercial 2.0 Generic license

Step 1
Create a directory in the home directory for the database dump

~$ mkdir projectname-database
~$ cd projectname-database

Step 2
Initialize git in the directory

~$ git init

Step 3
Do a database dump for the initial commit

~$ /./opt/lampp/bin/mysqldump -u root database-name > database.sql

Step 4
Commit the database file

~$ git add .
~$ git commit -a -m "Initial database commit"

Step 5
Now we’ll write a script to do the database dump and add commits. Open your favorite text editor and write the following script. Save the file as probably “database-project” in your home folder

#!/bin/bash
/opt/lampp/bin/./mysqldump -u root database-name > /home/username/projectname-database/database.sql
cd /home/username/projectname-database/
git commit -a -m "Database dump at `date`"

Save the script so that you can run it via a cron.

Step 6
Open crontab with the following command

~$ crontab -e

Step 7
Add the following line

00,30 * * * * /home/username/./database-project

This cron will run the script every 30 minutes.

Basically what happens here is the database dump will be taken every 30 minutes and the change will be committed to a git repository allowing you to keep track of the overwriting. I’ve found it quite useful and I hope you will too.

Tagged with: , , , ,

Baking on Ubuntu while using xampp

Posted in cakephp, xampp by nigelbabu on July 19, 2010

xampp logoSo, I’m a web developer working on Ubuntu.  Since I don’t want to get into complications like pinning to have earlier versions of PHP (useful when developing on Drupal), I use XAMPP.  Its a bit of a work to get php ready to bake while using XAMPP on Ubuntu.  These instructions are probably generic to any bash shell, but tested and working on Ubuntu.  Also note, I assume you install XAMPP in the expected directory at /opt/lampp

Step 1:  Add an alias for php in .bashrc.  Open the ~/.bashrc file and add the following line
alias php='/opt/lampp/bin/php'

Step 2: When running the bake script, run it as follows
php cake.php bake

Tagged with: , , , , ,
Follow

Get every new post delivered to your Inbox.