mysqldump错误1045访问被拒绝,尽pipe正确的密码等
这是一个棘手的,我有以下输出:
mysqldump:出现错误:1045:尝试连接时拒绝用户“root”@“localhost”(使用密码:YES)
在Windows XP上尝试使用mysqldump
导出我的数据库时。 用户名是root,密码是正确的,只包含字母数字字符。 我已经尝试了不同的情况,使用/不使用引号,指定使用-u
和-p
,指定使用--user=
和--password=
和其他指定用户/密码等方法,指定主机(全部是本地),甚至用--databases
指定数据库而不是空白。 使用密码时的错误总是相同的,除非“否”,否则总是一样的。 我尝试了许多通过searchfind的修复,但没有成功。 一个修复build议检查mysql.conf,但Windows版本似乎没有。 证书(甚至是命令行参数)与mysql.exe完全兼容 – 这个问题似乎只是影响了mysqldump.exe。
非常感谢您的帮助。
这对我有效
mysqldump -u root -p mydbscheme > mydbscheme_dump.sql
发出命令后,它要求input密码:
Enter password:
input密码将生成转储文件。
如果你能够使用mysql连接到数据库,但是你得到mysqldump的错误,那么问题可能是你没有权限来locking表。
在这种情况下试试 – 单一事务选项。
mysqldump -h database.example.com -u mydbuser -p mydatabase --single-transaction > /home/mylinuxuser/mydatabase.sql
被拒绝的访问可能是Windows文件系统而不是MySQL数据库; 尝试将输出文件redirect到允许您的帐户创build文件的位置。
尝试使用-p选项时删除空间。 这适用于我的OSX和Linux mysqldump:
mysqldump -u user -ppassword ...
放弃GRANT
特权:
GRANT ALL PRIVILEGES ON mydb.* TO 'username'@'%' IDENTIFIED BY 'password';
mysqldump -h主机名-u用户名-P端口-B数据库-no-create-info -p> output.sql
我想你应该指定参数
在Administrator
模式下运行命令提示符时,解决了访问问题。
转到Start-> All Programs -> Accessories
右键单击Command Prompt
单击Run as..
selectThe Following User
从selectselectinput密码administrator username
,如果任何单击OK
button。
示例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: *********
它要求密码input密码,然后单击inputbutton。
示例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文件将在文件夹下创build
在Windows XP中
C:\Program Files\MySQL\MySQL Server 5.5\bin
在Windows 7和8
C:\Program Files (x86)\MySQL\MySQL Server 5.5\bin
注意:在命令提示符运行时检查Windows 7,8中的MySQL安装文件夹。 如果MySQLWorkbench
是32位版本,则将其安装在Program Files (x86)
文件夹中的其他智能Program Files
夹中。
不要用命令input密码。 只要input,
mysqldump -u(用户名)-p(db_name)>(backup_file).sql
然后你会得到一个提示input密码。
做没有-u
和-p
为我工作(当我login作为根):
mysqldump --opt mydbname > mydbname.sql
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
这将为服务器10.0.10.10上的记帐数据库创buildsql备份文件。 有时候你的错误是在localhost不在config的时候看到的。 指定服务器的ip可能有帮助。
您需要在包含shell元字符的密码中放置反斜杠,例如!#'“`&
我刚刚安装了MySQL 5.6.16后就遇到了这个问题。
奇怪的是,它没有指定或标记的密码工作:
mysqldump -u root myschema mytable > dump.sql
在过去,我从MS Word文件中复制了mysqldump语句后,发生了同样的问题。
但直接input语句时,一切正常。
在hex编辑器中,不工作语句的“ – ”由unicode char e2 80 93表示( http://www.fileformat.info/info/unicode/char/2013/index.htm )
在sorting中,直接input密码,并检查复制粘贴代码作为uni代码(或其他编码)string可能会导致问题..
密码标志后,我不得不删除单个滴答声:
--password=mypassword
而不是
--password='mypassword'
我在过去的2天里有同样的错误。 尝试了一堆东西。 没有工作。
但是这确实奏效了:
创build另一个用户。 授予一切。
mysqldump -u new_user db_name > db_name.sql
//没有错误
我发现一个正在运行的apache进程访问MYSQL导致这个错误。 所以我build议确保所有可能与数据库交互的进程都被closures。
当mysql帐户有REQUIRE SSL
时,Mysql使用正确的凭据回答Access Denied
必须在连接参数中提供ssl_ca
文件(至less)。
其他ssl参数可能是必需的,这里logging: http : //dev.mysql.com/doc/refman/5.7/en/secure-connection-options.html
转到开始 – >所有程序 – >附件右键单击命令提示符单击以pipe理员身份运行
在命令提示符下使用CD命令转到MySQL bin文件夹并运行以下命令
mysqldump –user root –password = root –all-databases> dumps.sql
它会在bin文件夹本身中创builddumps.sql文件。