Platinum Partner
cloud,mysql,architecture,ec2,aws

Stretching your Disk Space on Amazon's MySQL Server

If you deal with large databases, you will probably need more than the provisioned storage of the default Amazon AMI (8GB).

The following 10 steps guide will help you expand your disk meet your business needs:
  1. Create a new storage volume at the Amazon console (or using AWS API). Make sure it is big enough to accommodate storage, log files, bin files and future growth. Notice! verify the new drive is in the same availability zone as the target instance.


  2. Write down the mount name you chosen. For example: /dev/sdf.


  3. Mount the disk to your system according to Chris Dean post:

    1. sudo mkfs.ext3 /dev/sdf where /dev/sdf is the mount name you chose.


  4. Shutdown the MySQL daemon: sudo /etc/init.d/mysql stop


  5. Move your current MySQL data directory to a temporary directory: sudo mv /var/lib/mysql  /var/lib/mysql.old


  6. Recreate the MySQL data directory and provide the needed permissions:

    1. sudo mkdir /var/lib/mysql

    2. sudo chown mysql:mysql  /var/lib/mysql


  7. Mount the new disk to the new directory:

    1. Add another line to /etc/fstab (sudo vi /etc/fstab): /dev/sdf /var/lib/mysql ext3 defaults 1 2

    2. Mount the disk: sudo mount /var/lib/mysql

    3. Verify everything is Okay with df


  8. Move the files from the temporary directory back to the new data directory sudo mv /var/lib/mysql.old/* /var/lib/mysql


  9. Remove the old directory: sudo rmdir  /var/lib/mysql.old


  10. Restart you MySQL: sudo /etc/init.d/mysql start

Bottom Line
A combination of cloud knowledge, Linux sysadmin, MySQL expertise and careful work will help you go through the scale and growth challenges.
 
{{ tag }}, {{tag}},

{{ parent.title || parent.header.title}}

{{ parent.tldr }}

{{ parent.urlSource.name }}
{{ parent.authors[0].realName || parent.author}}

{{ parent.authors[0].tagline || parent.tagline }}

{{ parent.views }} ViewsClicks
Tweet

{{parent.nComments}}