Ubuntu 16.04 (FÁCIL):descubre dónde puedes escribir
mysql> SELECT @@GLOBAL.secure_file_priv;
+---------------------------+
| @@GLOBAL.secure_file_priv |
+---------------------------+
| /var/lib/mysql-files/ |
+---------------------------+
1 row in set (0.00 sec)
Entonces, solo escribe allí
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 instalado a través de MAMP
Averigua dónde puedes escribir
mysql> SELECT @@GLOBAL.secure_file_priv;
+---------------------------+
| @@GLOBAL.secure_file_priv |
+---------------------------+
| NULL |
+---------------------------+
1 row in set (0.00 sec)
NULL significa que estás jodido, así que tienes que crear el archivo "~/.my.cnf"
Habilitar lectura/escritura para MySQL instalado a través de MAMP (en Mac):
- abrir "MAMP" usar foco
- haga clic en "Detener servidores"
-
edite ~/.my.cnf (usando vi o su editor favorito) y agregue las siguientes líneas:
$ vi ~/.mi.cnf
[mysqld_safe] [mysqld] secure_file_priv="/Users/russian_spy/"
- haga clic en "Iniciar servidores" (en la ventana MAMP)
Ahora comprueba si funciona:
una. inicie mysql (el usuario predeterminado de MAMP es root, la contraseña también es root)
$ /Applications/MAMP/Library/bin/mysql -u root -p
b. en mysql mire las rutas incluidas en la lista blanca
mysql> SELECT @@GLOBAL.secure_file_priv;
+---------------------------+
| @@GLOBAL.secure_file_priv |
+---------------------------+
| /Users/russian_spy/ |
+---------------------------+
1 row in set (0.00 sec)
C. Finalmente, pruebe exportando una tabla train
en un archivo CSV
mysql> SELECT * FROM train INTO OUTFILE '/Users/russian_spy/test.csv' FIELDS TERMINATED BY ',';
Query OK, 992931 rows affected (1.65 sec)
mysql>