Я хочу экспортировать данные таблицы в файл csv с помощью mysqldump.
Я хочу сделать что-то вроде:
mysqldump --compact --no_create_info --tab=testing --fields-enclosed-by=\" --fields-terminated-by=, -uroot -proot mydatabase mytable
но я продолжаю получать эту ошибку:
(Errcode: 13) when executing 'SELECT INTO OUTFILE'
Я сделал свою тестовую папку доступной для записи (я использую Ubuntu как enviornment). Может ли объяснить, как экспортировать таблицу в файл CSV или как изменить мою командную оболочку для работы? Благодаря!
Проблема со всеми этими INTO OUTFILE
или --tab=tmpfile
заключается в том, что для этого требуется запустить mysqldump на том же сервере, что и сервер MySQL.
Моим решением было просто использовать mysql
(NOT mysqldump
) с параметром -B
, включить инструкцию SELECT с -e
, а затем массировать вывод ASCII с помощью sed
и завершить работу с CSV, включая строку поля заголовка:
Пример:
mysql -B -u username -ppassword database -h dbhost -e "SELECT * FROM accounts;" |sed "s/'/\'/;s/\t/\",\"/g;s/^/\"/;s/$/\"/;s/\n//g"
«id», «login», «password», «folder», «email» «8», «mariana», «57d40c8a954bc9e65f401592062019b1457be359», «mariana», «« 3 »,« squaredesign »,« b01134fac01dab765bcb55ab0ca33f9ec2885a7b », «5», «Sarko», «480225f1ac707031bae300f3f5b06dbf79ed390e», «Sarko», «Sarko», «Sarko», «Sarko», «Sarko», «Sarko», «Sarko», «Sarko», «Sarko», «Sarko», «Sarko», «Sarko», " "6"," Logitrans Польша», "9033b6b3c4acbb27418d8b0b26f4c880ea6dea22", "LogitransPoland", "" "7", "Амос", "50f5604164db2d5ff0e984f973d2202d5358b6a6", "Амос", "" "9", "Аннабель", "07e832cb64e66fa03c13498a26a5f8e3bdebddf1", «Anabelle», «11», «Brandfathers and Sons», «f08b194668249e4cb81fbb92df846e90569f5c01», «BrandfathersAndSons», «« 12 »,« Imagine Group »,« e86f1645504c7d5a45ed41d16ecc39ed19181773 »,« ImagineGroup »,« «13», EduSquare.pl "," 80c3c099f4ecc043a19f1527400d63588567a0ad "," EduSquare.pl "," "" 101 "," tmp "," b01134fac01dab765bcb55ab0ca33f9ec2885a7b "," _ "," WOBC-14.squaredesign.atlassian.net@yoMama.com "
Добавьте > outfile.csv
в конце этого однострочного файла, чтобы получить файл CSV.
Проверьте эту ссылку. Он показывает альтернативу для экспорта вашей таблицы в файл csv.
Экспорт CSV непосредственно из MySQL
Я надеюсь, что это будет полезно.