Unter Unix erstellen Sie eine symbolische Verknüpfung mit einer Datenbank, indem Sie zuerst ein Verzeichnis auf einer Festplatte erstellen, auf der sich genug freier Speicher befindet, und dann eine symbolische Verknüpfung zu diesem Verzeichnis aus dem MySQL-Datenverzeichnis einrichten.
shell>mkdir /dr1/databases/test
shell>ln -s /dr1/databases/test
/path/to/datadir
MySQL unterstützt Verknüpfungen von einem Verzeichnis auf
mehrere Datenbanken nicht. Das Ersetzen eines
Datenbankverzeichnisses durch eine symbolische Verknüpfung
funktioniert, solange Sie keine symbolischen Verknüpfungen
zwischen Datenbanken erstellen. Angenommen, Sie haben eine
Datenbank db1
im MySQL-Datenverzeichnis und
erstellen dann eine symbolische Verknüpfung
db2
, die auf db1
zeigt:
shell>cd
shell>/path/to/datadir
ln -s db1 db2
Im Ergebnis scheint für jede Tabelle tbl_a
in db1
offenbar auch eine Tabelle
tbl_a
in db2
vorhanden
zu sein. Wenn ein Client db1.tbl_a
und ein
anderer Client db2.tbl_a
aktualisiert, sind
Probleme vorprogrammiert.
Wenn Sie dies aber wirklich tun müssen, ist es möglich,
indem Sie die Quelldatei
mysys/my_symlink.c
ändern. Suchen Sie
dort nach folgender Anweisung:
if (!(MyFlags & MY_RESOLVE_LINK) || (!lstat(filename,&stat_buff) && S_ISLNK(stat_buff.st_mode)))
Ändern Sie diese wie folgt ab:
if (1)
Dies ist eine Übersetzung des MySQL-Referenzhandbuchs, das sich auf dev.mysql.com befindet. Das ursprüngliche Referenzhandbuch ist auf Englisch, und diese Übersetzung ist nicht notwendigerweise so aktuell wie die englische Ausgabe. Das vorliegende deutschsprachige Handbuch behandelt MySQL bis zur Version 5.1.