Bare for at opdatere dette indlæg, hvis nogen nogensinde støder på dette, understøtter InnoDB nu datakatalog siden version 5.6. Intet symbollink (anbefales ikke), og virker til både *nix og Windows.
Krav:
- MySQL 5.6 og nyere
- innodb_file_per_table er aktiveret
innodb_file_per_table = 1
Scenario 1 (opret nye tabeller):
Det er så simpelt som at specificere DATA DIRECTORY mulighederne under oprettelse af tabellen.
CREATE TABLE t1 (c1 INT PRIMARY KEY) DATA DIRECTORY = '/alternative/directory';
Scenario 2 (flytning af eksisterende tabel til separat disk):
Dette involverer få flere trin (MySQL-servergenstart påkrævet), men stadig ret ligetil. Og det kræver ikke, at tabellen har DATA DIRECTORY-indstillingen angivet under oprettelsen af tabellen.
- Stop MySQL-server
- Flyt innodb-tabellen tabelnavn .ibd-fil for at adskille disk/volumen ved simpel filkopiering/filflytning
- Opret en tekstfil med filtypenavnet .isl, f.eks. tabelnavn .isl
- Rediger .isl-filen, og indtast den nye sti til tabelnavn .ibd-fil, som du har flyttet.
/alternative/directory/table_name.ibd
- Sørg for, at den originale .ibd-fil i den gamle sti blev fjernet
- Start MySQL-server
Nu vil efterfølgende ændringer af den flyttede tabel blive gemt i .ibd-fil i ny sti.
For reference henvises til MySQL officielle dokument:http:// dev.mysql.com/doc/refman/5.6/en/tablespace-placing.html