sql >> Databáze >  >> RDS >> Mysql

Innodb; více datových adresářů

Jen pro aktualizaci tohoto příspěvku, pokud se s tím někdo někdy setká, InnoDB nyní podporuje datový adresář od verze 5.6. Žádný symbolický odkaz (nedoporučuje se) a funguje pro *nix i Windows.

Požadavky:

  1. MySQL 5.6 a vyšší
  2. je povolena funkce innodb_file_per_table

innodb_file_per_table = 1

Scénář 1 (vytvoření nových tabulek):

Je to stejně jednoduché jako zadání voleb DATA DIRECTORY při vytváření tabulky.

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

Scénář 2 (přesunutí existující tabulky na samostatný disk):

To zahrnuje několik dalších kroků (vyžaduje restart serveru MySQL), ale stále docela přímočaré. A nevyžaduje, aby tabulka měla při vytváření tabulky zadanou volbu DATA DIRECTORY.

  1. Zastavit server MySQL
  2. Přesuňte tabulku innodb název_tabulky .ibd k oddělení disku/svazku jednoduchým zkopírováním/přesunutím souboru
  3. Vytvořte textový soubor s příponou .isl, např. název_tabulky .isl
  4. Upravte soubor .isl a zadejte novou cestu k název_tabulky .ibd soubor, který jste přesunuli./alternative/directory/table_name.ibd
  5. Ujistěte se, že původní soubor .ibd ve staré cestě byl odstraněn
  6. Spusťte server MySQL

Nyní budou následující změny v přesunuté tabulce uloženy do souboru .ibd v nové cestě.

Odkaz naleznete v oficiálním dokumentu MySQL:http:// dev.mysql.com/doc/refman/5.6/en/tablespace-placing.html



  1. Bezpečnost vlákna MySQL Select Last_Insert_ID

  2. mysql_query() očekává, že parametr 2 bude zdrojem, zadaným řetězcem

  3. MySQL:Počet záznamů s po sobě jdoucími měsíci

  4. VLOŽENÍ MySQL ... PŘI AKTUALIZACI DUPLIKÁTNÍHO KLÍČE pomocí django 1.4 pro hromadné vkládání