Подтвердить что ты не робот

Mysqldump Ошибка 1045 Доступ запрещен, несмотря на правильные пароли и т.д.

Это сложный вопрос, у меня есть следующий вывод:

mysqldump: получена ошибка: 1045: при попытке подключения

запрещен доступ для пользователя 'root' @'localhost' (с использованием пароля: YES)

При попытке экспортировать мою базу данных с помощью mysqldump в Windows XP. Имя пользователя - root, пароль правильный и содержит только буквенно-цифровые символы. Я пробовал разные случаи с кавычками/без кавычек, указав с помощью -u и -p, указав с помощью --user= и --password= и другие методы указания пользователей/паролей и т.д., Указав хост (все локально) и даже указав базу данных, используя --databases, а не просто пустую. При использовании пароля ошибка всегда одинакова, но при этом все сообщения остаются без уведомления. Я пробовал множество исправлений, найденных с помощью поисковых запросов, без каких-либо успехов. Одно исправление предложило проверить mysql.conf, но сборка Windows, похоже, не имеет этого. Учетные данные (и, действительно, параметры командной строки) отлично работают с mysql.exe - эта проблема только влияет на mysqldump.exe.

Большое спасибо за вашу помощь.

4b9b3361

Ответ 1

Это сработало для меня

mysqldump -u root -p mydbscheme > mydbscheme_dump.sql

после выдачи команды запрашивает пароль:

Enter password:

ввод пароля сделает файл дампа.

Ответ 2

Если вы можете подключиться к базе данных с помощью mysql, но вы получите сообщение об ошибке для mysqldump, проблема может заключаться в том, что вам не хватает привилегий для блокировки таблицы.

Попробуйте опцию --single-transaction в этом случае.

mysqldump -h database.example.com -u mydbuser -p mydatabase --single-transaction  > /home/mylinuxuser/mydatabase.sql

Ответ 3

Запрет доступа, вероятно, относится к файловой системе Windows не к базе данных MySQL; попробуйте перенаправить выходной файл в место, где вашей учетной записи разрешено создавать файлы.

Ответ 4

Попробуйте удалить пробел при использовании -p-option. Это работает для моего OSX и Linux mysqldump:

mysqldump -u user -ppassword ...

Ответ 5

Поместите привилегии GRANT:

GRANT ALL PRIVILEGES ON mydb.* TO 'username'@'%' IDENTIFIED BY 'password';

Ответ 6

Решение проблемы с доступом, разрешенное при запуске командной строки в Administrator режиме.

Перейдите к Start-> All Programs -> Accessories щелкните правой кнопкой мыши по Command Prompt clickc on Run as.. Выберите The Following User выберите administrator username из опции выбора, введите пароль, если есть кнопка OK.

Пример 1: Для полной резервной копии базы данных в mysql с помощью командной строки.

В Windows 7 и 8

C:\Program Files <x86>>\MySQL\MySQL Server 5.5\bin>mysqldump test -u root -p >testDB.sql
Enter Password: *********

В Windows xp

C:\Program Files\MySQL\MySQL Server 5.5\bin>mysqldump test -u root -p >testDB.sql
Enter Password: *********

Он запрашивает пароль для учетных данных, введите пароль и нажмите кнопку "Enter".

Пример 2: Для конкретной резервной копии/дампа таблицы в mysql с помощью командной строки.

В Windows 7 и 8

C:\Program Files <x86>>\MySQL\MySQL Server 5.5\bin>mysqldump test -u root -p images>testDB_Images.sql
Enter Password: *********

В Windows xp

C:\Program Files\MySQL\MySQL Server 5.5\bin>mysqldump test -u root -p images>testDB_Images.sql
Enter Password: *********

Файл Dumpt будет создан в папке

В окнах xp

C:\Program Files\MySQL\MySQL Server 5.5\bin

В окнах 7 и 8

C:\Program Files (x86)\MySQL\MySQL Server 5.5\bin

Примечание. Проверьте папку установки MySQL в Windows 7, 8 во время выполнения командной строки. Если MySQLWorkbench - 32-битная версия, она устанавливается в папку Program Files (x86) другой мудрой Program Files.

Ответ 7

mysqldump -h имя хоста -u имя пользователя -P порт -B база данных --no-create-info -p > output.sql

Я думаю, вы должны указать args

Ответ 8

Не вводите пароль с помощью команды. Просто введите

mysqldump -u (имя пользователя) -p (db_name) > (backup_file).sql

Затем вы получите приглашение ввести пароль.

Ответ 9

Выполнение без -u и -p работало для меня (когда я был зарегистрирован как пользователь root):

mysqldump --opt mydbname > mydbname.sql

Ответ 10

mysqldump -u (пользователь) -p (passwd) -h (host_or_IP) database_to_backup > backup_file.sql

Пример:

mysqldump -u god -pheaven -h 10.0.10.10 accounting > accounting_20141209.sql

это создаст резервный файл sql для базы данных учета на сервере 10.0.10.10. Иногда ваша ошибка возникает, когда localhost не находится в config. Назначение ip сервера может помочь.

Ответ 11

Вам нужно поместить обратные косые черты в свой пароль, содержащие метасимволы оболочки, такие как! # '"` &;

Ответ 12

Я просто столкнулся с этим после новой установки MySQL 5.6.16.

Как ни странно, он работает без указанного или отмеченного пароля:

mysqldump -u root myschema mytable > dump.sql

Ответ 13

В прошлом же проблема возникла после того, как я скопировал оператор mysqldump из файла MS Word.

Но при прямом вводе утверждения все работало нормально.

В шестнадцатеричном редакторе "-" нерабочего оператора был представлен unicode char e2 80 93 (http://www.fileformat.info/info/unicode/char/2013/index.htm)

В сортировке введите пароль напрямую и проверьте код вставки копии, поскольку строки uni-code (или другие кодировки) могут вызвать проблему.

Ответ 14

Мне нужно было удалить одиночные тики после флага пароля:

--password=mypassword

и НЕ

--password='mypassword'

Ответ 15

У меня была такая же ошибка за последние 2 дня. Пробовал кучу вещей. Ничего не получилось. Но это действительно работало:
Создайте другого пользователя. Предоставьте все это.
mysqldump -u new_user db_name > db_name.sql//no error

Ответ 16

Я обнаружил, что запущенный процесс apache прервал MYSQL, вызвав эту ошибку. Поэтому я предлагаю, чтобы все процессы, которые могли бы взаимодействовать с БД, были завершены заранее.

Ответ 17

Mysql отвечает с Access Denied с правильными учетными данными, когда учетная запись mysql имеет REQUIRE SSL on

Файл ssl_ca (как минимум) должен быть указан в параметрах соединения.

Дополнительные параметры ssl могут потребоваться и описаны здесь: http://dev.mysql.com/doc/refman/5.7/en/secure-connection-options.html


Также опубликовано здесь fooobar.com/questions/144083/...

Ответ 18

Перейдите в меню "Пуск" - "Все программы" → "Аксессуары", щелкните правой кнопкой мыши "Командная строка", нажмите "Запуск от имени администратора"

В командной строке с помощью команды CD Перейдите в папку bin bin и запустите следующую команду

mysqldump --user root --password = root --all-databases > dumps.sql

он создаст файл dumps.sql в самой папке bin.