It's always a good idea to keep storage away from the boot device. If you run out of space on the boot device the system will halt. If you make a new install it's easy enough to move your storage and you can do it from a cloud-init script like this:
- mkdir /var/db - chown -R mysql:mysql /var/db - sed -i 's:datadir=/var/lib/mysql:datadir=/var/db:g' /etc/my.cnf - service mysqld start
If the installation is all ready up and running you have to add steps for stopping the MySQL server and copy the database files:
mkdir /var/www/db service mysqld stop mv /var/lib/mysql/* /var/db chown -R mysql:mysql /var/db sed -i 's:datadir=/var/lib/mysql:datadir=/var/db:g' /etc/my.cnf service mysqld start
In these examples I have user /var/db where I mounted the second storage device. You can however use any location you see fit. Points of interest in the command sequence.
chown -R mysql:mysql /var/db
Make sure that the mysql deamon have access to the storage location.
sed -i 's:datadir=/var/lib/mysql:datadir=/var/db:g' /etc/my.cnf
sed is a simple tool for search and replace inside text/config files directly from the command line. Here it searches for the line specifying the MySQL datadir location and replaces it with the new value.