Esto puede deberse a los permisos de usuario de mysql.
Como se indica aquí https://dba.stackexchange.com/questions/17029/cannot-output-mysql-data-to-file
Para otorgarse el privilegio de ARCHIVO, haga lo siguiente:
service mysql restart --skip-networking --skip-grant-tables
mysql <hit enter>
UPDATE mysql.user SET File_priv = 'Y' WHERE user='lea' AND host='localhost';
exit
service mysql restart
El usuario de Linux puede escribir un archivo. Pero apparmor puede bloquear el servicio mysql.
Revisa este archivo:/etc/apparmor.d/usr.sbin.mysqld
.
Agregue su carpeta de proyecto allí:
/usr/sbin/mysqld {
[...]
/home/datam/xfers/online/ r,
/home/datam/xfers/online/* rw
[...]
}
Finalmente, haz un
sudo /etc/init.d/apparmor reload
En los sistemas modernos, mariaDB y mysql se instalan con soporte systemd. Entre otras cosas, tiene esta configuración en /etc/systemd/system/mysql.service:
Impedir el acceso a /home, /root y /run/user
ProtectHome=verdadero
Eso es lo que impide que escriba en /home.