Verschieben der MySQL-InnoDB-Datenbank auf eigenes Laufwerk

In meiner MySQL-installation habe ich eine InnoDB-Datenbank, die ich kenne, sehr groß, so habe ich beschlossen, verschieben Sie es auf Ihrer eigenen Festplatte. Ich hatte gehofft, dies durch verschieben der Dateien auf die andere Festplatte und erstellen Sie dann ein symlink, aber ich laufen in Fehler!

Dies ist, was ich getan habe:

1) In meinem.cnf habe ich

[mysqld]
innodb_file_per_table

(Das funktioniert, habe ich ein .ibd pro .frm in den Datenbank-Ordner.)

2)ich habe geprüft, ob symbolische Links sind ok mit SHOW VARIABLES LIKE "have_symlink";

(Ich weiß, dass die Dokumentation sagt:

Symlinks werden vollständig unterstützt, nur für
MyISAM-Tabellen. Für Dateien, die von
Tabellen für andere Speicher-engines, die Sie
kann merkwürdige Probleme, wenn Sie versuchen,
Verwendung von symbolischen links.

Aber ich brauche foreign keys...)

3) zog ich den Datenbank-Ordner und erstellt einen symlink.

4) mysql neu Gestartet und ausprobiert:

 mysql> USE db_name
 Database changed
 mysql> SHOW TABLES;
 ERROR 1018 (HY000): Can't read dir of './db_name/' (errno: 13)
 mysql> exit
 user@comp# perror 13
 OS error code  13:  Permission denied

symlink ist (wie erwartet) lrwxrwxrwx mysql mysql db_name -> /path-to/db_name/

Datenbank-Ordner-Berechtigungen drwx------ mysql mysql

alle Datei-Berechtigungen sind -rw-rw---- mysql mysql

Ich bin mit Ubuntu 10.04 Server mit MySQL 5.1.41 (Standard apt).

Haben Sie dies erfolgreich getan?

Einfachste Weg ist mysqldump und dann drop-schema-Konfiguration ändern und importieren Sie Sie, wenn Sie Ihre DB ist nicht wirklich groß.
Ich will, dass der rest der Datenbanken auf dem system-Laufwerk (für drupal und solche Dinge) und bewegen sich nur diese bestimmten aus dem Daten-Verzeichnis. Sorry, wenn dies nicht klar aus der Frage.
Das könnte sein, mehr geeignet, um serverfault.com - voting zu migrieren...
Jr : warum dun u erstellen Sie eine weitere Datenbank, und montieren Sie das Datenbank-Verzeichnis an Ihre gewünschte Festplatte ?
Wie meinst du das? Über eine separate MySQL-Instanz mit den Daten-Verzeichnis auf die neue Festplatte? Wäre das nicht sehr ordentlich... Mit einer einzigen MySQL-Instanz alle Datenbanken, die erstellt werden, erstellt die relativ zum data-Verzeichnis. Ich versuche, verschieben Sie eine von Ihnen aus dort...

InformationsquelleAutor Norling | 2010-11-15

Schreibe einen Kommentar