Ubuntu 16.04 (EASY):Zjistěte, kam smíte psát
mysql> SELECT @@GLOBAL.secure_file_priv;
+---------------------------+
| @@GLOBAL.secure_file_priv |
+---------------------------+
| /var/lib/mysql-files/ |
+---------------------------+
1 row in set (0.00 sec)
Pak tam stačí napsat
mysql> SELECT * FROM train INTO OUTFILE '/var/lib/mysql-files/test.csv' FIELDS TERMINATED BY ',';
Query OK, 992931 rows affected (1.65 sec)
mysql>
Mac OSX:Mysql nainstalovaný přes MAMP
Zjistěte, kam smíte psát
mysql> SELECT @@GLOBAL.secure_file_priv;
+---------------------------+
| @@GLOBAL.secure_file_priv |
+---------------------------+
| NULL |
+---------------------------+
1 row in set (0.00 sec)
NULL znamená, že jste v prdeli, takže musíte vytvořit soubor "~/.my.cnf"
Povolit čtení/zápis pro MySQL nainstalovanou přes MAMP (na Macu):
- otevřít "MAMP" pomocí reflektoru
- klikněte na "Zastavit servery"
-
upravte ~/.my.cnf (pomocí vi nebo vašeho oblíbeného editoru) a přidejte následující řádky:
$ vi ~/.my.cnf
[mysqld_safe] [mysqld] secure_file_priv="/Users/russian_spy/"
- klikněte na "Spustit servery" (v okně MAMP)
Nyní zkontrolujte, zda to funguje:
A. spustit mysql (výchozí uživatel MAMP je root, heslo je také root)
$ /Applications/MAMP/Library/bin/mysql -u root -p
b. v mysql se podívejte na bílé cesty
mysql> SELECT @@GLOBAL.secure_file_priv;
+---------------------------+
| @@GLOBAL.secure_file_priv |
+---------------------------+
| /Users/russian_spy/ |
+---------------------------+
1 row in set (0.00 sec)
C. Nakonec otestujte exportem tabulky train
do souboru CSV
mysql> SELECT * FROM train INTO OUTFILE '/Users/russian_spy/test.csv' FIELDS TERMINATED BY ',';
Query OK, 992931 rows affected (1.65 sec)
mysql>