Moving MySQL Database files on Ubuntu Hardy

I wanted to move my /var/lib/mysql directory to /data/mysql (a new partition). So I copied copied them and made the appropriate change in /etc/my.cnf. On restarting mysql with /etc/init.d/mysql start, I got a failure. 

On looking in the /var/log/messages file, I found:

Nov 23 17:48:46 carpenomen kernel: [ 2714.258037] audit(1227462526.718:13): type=1503 operation=”inode_create” requested_mask=”w::” denied_mask=”w::” name=”/data/mysql/carpenomen.lower-test” pid=19659 profile=”/usr/sbin/mysqld” namespace=”default”
Nov 23 17:48:46 carpenomen kernel: [ 2714.310572] audit(1227462526.770:14): type=1503 operation=”inode_permission” requested_mask=”rw::” denied_mask=”rw::” name=”/data/mysql/ibdata1″ pid=19659 profile=”/usr/sbin/mysqld” namespace=”default”

A lot of head scratching and a search on google led me to this article:

http://www.ubuntu-howto.info/howto/how-to-move-mysql-databases-to-another-location-partition-or-hard-drive

The most important last ‘trick’ is to update and restart apparmor:

vi /etc/apparmor.d/usr.sbin.mysqld

and change the lines which mention the mysql datafile and then restart apparmor and mysql…

# /etc/init.d/apparmor restart
Reloading AppArmor profiles : done.
# /etc/init.d/mysql start
 * Starting MySQL database server mysqld                                 [ OK ]
 * Checking for corrupt, not cleanly closed and upgrade needing tables.

 

2 Responses to "Moving MySQL Database files on Ubuntu Hardy"

  • dkerschner says:
  • smaddox says:
Leave a Comment