Я пытался вывести свою таблицу mysql, используя приведенную ниже команду
mysqldump --tab=/home/username/Desktop/basic/ --user myusername -p mysql user;
, но она вернула ошибку:
mysqldump: Got error: 1: Can't create/write to file '/home/username/Desktop/basic/user.txt' (Errcode: 13) when executing 'SELECT INTO OUTFILE'
Я использую Ubuntu 14.04. Я попытался отключить apparmor, как объяснено здесь . Но все же ошибка существует. Любые другие решения?
Редактировать
Я получаю файл .sql, но не файл .txt
Сначала удостоверьтесь, что mysql
может записать в /home/username/Desktop/basic/
; если бы Вы планируете сделать несколько дампов в том же каталоге, довольно очевидный способ, чтобы сделать это должен был бы установить владение папки к mysql
и установить разрешение SGID на папке (благодаря muru для этого предложения): этот путь mysqldump
сможет записать в папку, но новые файлы наследуют группу от родительского каталога; это имеет преимущество отъезда к Вашему пользовательскому чтению, запишите и выполните полномочия на дампах.
sudo chown mysql /home/username/Desktop/basic/ && sudo chmod g+s /home/username/Desktop/basic/
Кроме того, удостоверяются, что нет никакого файла, названного user.sql
или user.txt
существующего в целевом каталоге прежде, чем дать команду; если или mysql
не может записать в целевой каталог или файл с тем же названием одного из ожидаемых выходных файлов, существует прежде, чем дать команду, mysqldump
собирается перестать работать.