sql >> Database >  >> RDS >> Mysql

innodb; meerdere gegevensmappen

Om dit bericht bij te werken als iemand dit ooit tegenkomt, ondersteunt InnoDB nu de datadirectory sinds versie 5.6. Geen symbolische link (niet aanbevolen) en werkt voor zowel *nix als Windows.

Vereisten:

  1. MySQL 5.6 en hoger
  2. innodb_file_per_table is ingeschakeld

innodb_file_per_table = 1

Scenario 1 (nieuwe tabellen maken):

Het is zo simpel als het specificeren van de DATA DIRECTORY opties tijdens het aanmaken van de tabel.

  1. CREATE TABLE t1 (c1 INT PRIMARY KEY) DATA DIRECTORY = '/alternative/directory';

Scenario 2 (bestaande tabel verplaatsen naar aparte schijf):

Dit omvat nog een paar stappen (opnieuw opstarten van de MySQL-server vereist) maar nog steeds vrij eenvoudig. En het vereist niet dat de tabel de optie DATA DIRECTORY heeft opgegeven tijdens het maken van de tabel.

  1. Stop MySQL-server
  2. Verplaats de innodb-tabel table_name .ibd-bestand om schijf/volume te scheiden door eenvoudig bestand te kopiëren/bestand te verplaatsen
  3. Maak een tekstbestand met de extensie .isl, b.v. tabelnaam .isl
  4. Bewerk het .isl-bestand en typ het nieuwe pad naar de tabelnaam .ibd-bestand dat u hebt verplaatst./alternative/directory/table_name.ibd
  5. Zorg ervoor dat het originele .ibd-bestand in het oude pad is verwijderd
  6. Start MySQL-server

Nu zullen volgende wijzigingen aan de verplaatste tabel worden opgeslagen in het .ibd-bestand in een nieuw pad.

Raadpleeg voor referentie het officiële MySQL-document:http:// dev.mysql.com/doc/refman/5.6/en/tablespace-placement.html



  1. SET versus SELECT bij het toekennen van variabelen?

  2. MySqlDb gooit Operand moet 1 kolom(men) bevatten bij insert negeer statement

  3. Inleiding tot SQL Server-identiteit

  4. Django ConnectionAbortedError:[WinError 10053] Een tot stand gebrachte verbinding is afgebroken door de software op uw hostcomputer