MySQL - import velkých souborů

15. 12 2011 | 21.24

mysqlZkoušeli jste už importovat větší soubor do MySQL databáze skrze PhpMyAdmina? V případě menších souborů to problém není, ale pokud máte databázi cca o 100 nebo 200 MB, tak už to problém je. V mém případě občas nepomohlo ani zabalení do zipu a přerušovaný import, který by phpmyadmin měl podporovat. Naštěstí ale existují další alternativy.

Adresář upload v PhpMyAdminovi

Pokud soubory nejsou příliš velké, mohlo by stačit, nastavit si upload adresář v PhpMyAdminovi. V konfiguračním souboru aplikace PhpMyAdmin si stačí nastavit proměnnou $cfg['UploadDir'] na určitý adresář (je pravděpodobné, že tato proměnná vůbec v konfiguračním souboru nebude - budete jí muset přidat).

Nyní, při kliknutí na import v PhpMyAdminovi, se vám pod kódováním zobrazí ještě jeden select box. A v něm budete mít na výběr všechny soubory, které jste nahráli do adresáře, nastaveného jako UploadDir. Stačí tedy zvolit tento soubor a importovat. Pro ne příliš velké soubory by tento postup měl stačit.

Zdroj: http://daipratt.co.uk/importing-large-files-into-mysql-with-phpmyadmin/

Příkaz SOURCE

Adresář upload v některých případech stále nestačil, ale tento postup mi prozatím vždycky vyšel. Pro tento postup budete potřebovat i příkazový řádek, ale není to nic složitého.

Přepněte se do adresáře, kde máte nainstalovanou databázi MySQL - já používám XAMPP, takže požadovaný adresář se mi nachází zde: c:\\xamppmysql. Přepněte se do adresáře bin a spusťte příkazový řádek (příkaz cmd) - alternativa je spustit příkazový řádek rovnou a postupně se do této adresářové struktury přepnout pomocí příkazu cd.

Nyní se připojte k databázi zadáním tohoto příkazu:

mysql -u root -p

Pokud připojení proběhne v pořádku, budete dotázáni na heslo. Heslo zadejte a připojíte se k databázi. Nyní se ještě musíte přepnout do databáze, do které chcete importovat - tu už musíte mít vytvořenou. Přepnutí provedete pomocí příkazu USE nazev_databaze.

Nyní už zbývá pouze poslední krok, napište příkaz SOURCE a za něj napište kompletní cestu k importovanému souboru, takže například:

SOURCE c:\\databaze.sql

Tím se spustí import, který může trvat hodně dlouho, pokud je soubor velký, takže to nechte spuštěné.

Zdroj: http://www.huntsvillepr.com/importing-large-files-in-mysql-using-source-code-406.html

Další možnosti

Skript BigDump

Náhodou jsem narazil ještě na jeden návod, který by se mohl hodit. Jde o použití skriptu BigDump, ale s ním nemám zkušenosti, takže vás pouze odkážu na zdroj.

Zdroj: http://blog.bronzi.cz/jak-importovat-velke-databaze-a-jake-muzete-mit-problemy/

Adminer

K práci s MySQL databázi už používám převážně Adminer, od Jakuba Vrány, ale v něm jsem prozatím import větších souborů nezkoušel. I když si myslím, že by si s tím mohl poradit lépe, než PhpMyAdmin.