Frédéric Olivier :: Développeur Web

3 février 2010 Comment déplacer le datadir de MySQL dans Ubuntu

Cet article de chez Simple Thoughts Blog explique en quelques étapes comment déplacer le datadir de MySQL sur Ubuntu.

Process

  1. Open the terminal
  2. Stop MySQL with the command
    sudo /etc/init.d/mysql stop
  3. Copy the existing data directory (which is located in /var/lib/mysql) using the command
    sudo cp -R -p /var/lib/mysql /path/to/new/datadir
  4. All you need are the data files. Delete the others with the command
    sudo rm /path/to/new/datadir
    (You will get a message about not being able to delete some directories, but do not care about them)
  5. Edit the MySQL configuration file with the command
    gksu gedit /etc/mysql/my.cnf
  6. Find the entry for datadir, change the path to the new data directory.
  7. But there is a trick involved here. Ubuntu uses some security software called AppArmor that specifies the areas of your filesystem applications are allowed to access. Unless you modify the AppArmor profile for MySQL, you'll never be able to restart MySQL with the new datadir location.
    • In the terminal, enter the command
      sudo gedit /etc/apparmor.d/usr.sbin.mysqld
    • Copy the lines beginning with /var/lib/mysql
    • Comment out the originals with hash marks (#), and paste the lines below the originals.
    • Now change /var/lib/mysql in the two new lines with /path/to/new/datadir. Save and close the file.
    • Reload the AppArmor profiles with the command
      sudo /etc/init.d/apparmor reload
    • Restart MySQL with the command
      sudo /etc/init.d/mysql restart
  8. MySQL should now start without any errors and your data will be stored in the new location. If an error finds you do check the process carefully again.

Contact

Communiquer avec moi par courriel à l'adresse folivier « A commercial » f0.ca

Veille Techno


Cadouri de Craciun