Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/68.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
mysqldump错误1045访问被拒绝,尽管密码正确等_Mysql_Localhost_Access Denied_Mysql Error 1045_Windows Xp Sp3 - Fatal编程技术网

mysqldump错误1045访问被拒绝,尽管密码正确等

mysqldump错误1045访问被拒绝,尽管密码正确等,mysql,localhost,access-denied,mysql-error-1045,windows-xp-sp3,Mysql,Localhost,Access Denied,Mysql Error 1045,Windows Xp Sp3,这是一个棘手的问题,我有以下输出: mysqldump:获取错误:1045:尝试连接时拒绝用户“root”@“localhost”(使用密码:YES)的访问 在Windows XP上尝试使用mysqldump导出我的数据库时。用户名为root,密码正确且仅包含字母数字字符。我尝试过不同的情况,有/没有引号,使用-u和-p指定,使用--user=和--password=指定,以及其他指定用户/密码的方法等,指定主机(都是本地的),甚至使用--databases指定数据库,而不仅仅是空的。使用密码时

这是一个棘手的问题,我有以下输出:

mysqldump:获取错误:1045:尝试连接时拒绝用户“root”@“localhost”(使用密码:YES)的访问


在Windows XP上尝试使用
mysqldump
导出我的数据库时。用户名为root,密码正确且仅包含字母数字字符。我尝试过不同的情况,有/没有引号,使用
-u
-p
指定,使用
--user=
--password=
指定,以及其他指定用户/密码的方法等,指定主机(都是本地的),甚至使用
--databases
指定数据库,而不仅仅是空的。使用密码时,错误总是相同的,没有密码时,除了“否”消息外,错误总是相同的。我尝试了许多通过搜索找到的修复方法,但没有成功。一个修复建议检查mysql.conf,但Windows版本似乎没有。凭据(实际上还有命令行参数)与mysql.exe配合使用非常好-此问题似乎只影响mysqldump.exe。

授予权限:

将mydb.*上的所有权限授予由“密码”标识的“用户名”@“%”;
这对我很有效

mysqldump -u root -p mydbscheme > mydbscheme_dump.sql
发出命令后,它要求输入密码:

Enter password:

输入密码将生成转储文件。

我刚刚在新安装MySQL 5.6.16后遇到了这个问题

奇怪的是,它在没有指定或标记密码的情况下工作:


mysqldump-u root myschema mytable>dump.sql

在管理员模式下运行命令提示符时解决了访问问题

转到
Start->All Programs->Accessories
右键单击
命令提示符
单击
运行身份..
选择
以下用户
从选择选项中选择
管理员用户名
如果有密码,请输入密码单击
确定
按钮

示例1:使用命令提示符在mysql中进行整个数据库备份

在Windows 7和8中

C:\Program Files <x86>>\MySQL\MySQL Server 5.5\bin>mysqldump test -u root -p >testDB.sql
Enter Password: *********
C:\Program Files <x86>>\MySQL\MySQL Server 5.5\bin>mysqldump test -u root -p images>testDB_Images.sql
Enter Password: *********
它要求输入凭证的密码输入密码并单击“输入”按钮

示例2:使用命令提示符在mysql中进行特定的表备份/转储

在Windows 7和8中

C:\Program Files <x86>>\MySQL\MySQL Server 5.5\bin>mysqldump test -u root -p >testDB.sql
Enter Password: *********
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 >testDB.sql
Enter Password: *********
C:\Program Files\MySQL\MySQL Server 5.5\bin>mysqldump test -u root -p images>testDB_Images.sql
Enter Password: *********
C:\Program Files\MySQL\MySQL Server 5.5\bin
在windows 7和8中

C:\Program Files <x86>>\MySQL\MySQL Server 5.5\bin>mysqldump test -u root -p >testDB.sql
Enter Password: *********
C:\Program Files <x86>>\MySQL\MySQL Server 5.5\bin>mysqldump test -u root -p images>testDB_Images.sql
Enter Password: *********
C:\ProgramFiles(x86)\MySQL\MySQL服务器5.5\bin


注意:在命令提示符下运行时,检查Windows 7、8中的MySQL安装文件夹。如果
MySQLWorkbench
是32位版本,则它安装在
程序文件(x86)
文件夹其他
程序文件
文件夹中。

被拒绝的访问可能是Windows文件系统,而不是MySQL数据库;尝试将输出文件重定向到允许您的帐户创建文件的位置。

过去,在我从MS Word文件复制mysqldump语句后,我也遇到了同样的问题

但是当直接输入语句时,一切都正常

在十六进制编辑器中,not working语句的“-”由unicode字符E280 93()表示


在排序中,直接键入密码并检查复制粘贴代码,因为uni代码(或其他编码)字符串可能会导致问题。

不要使用命令输入密码。进来吧

mysqldump -u <username> -p <db_name> > <backup_file>.sql
mysqldump-u-p>.sql

然后会提示您输入密码。

如果您能够使用mysql连接到数据库,但mysqldump出现错误,那么问题可能是您缺少锁定表的权限

在这种情况下,请尝试--single transaction选项

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

mysqldump-h hostname-u username-p port-B数据库——无创建信息-p>output.sql

我认为您应该将args

mysqldump-u(user)-p(passwd)-h(host\u或\u IP)数据库指定为\u backup>backup\u file.sql

例如:

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


这将为服务器10.0.10.10上的记帐数据库创建sql备份文件。当localhost不在配置中时,有时会看到错误。指定服务器的ip可能会有所帮助。

您需要在密码中添加反斜杠,其中包含shell元字符,例如!#'“`&

我必须删除密码标志后的单个记号:

--password=mypassword
不是

--password='mypassword'

转到开始->所有程序->附件在命令提示符上单击鼠标右键单击以管理员身份运行

在命令提示符下,使用CD命令转到MySQL-bin文件夹并运行以下命令

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


它将在bin文件夹中创建dumps.sql文件。

我在过去两天中遇到了相同的错误。尝试了很多方法。没有任何效果。
但这确实奏效了:
创建另一个用户。授予它一切。

mysqldump-u new\u user db\u name>db\u name.sql
//无错误

我发现一个正在运行的apache进程访问MYSQL导致此错误。因此我建议确保所有可能与db交互的进程都提前关闭。

在使用-p选项时尝试删除空间。这适用于我的OSX和Linux mysqldu议员:

mysqldump -u user -ppassword ...

不使用
-u
-p
对我来说很有效(当我以root用户身份登录时):


当Mysql帐户已启用
REQUIRE SSL
时,Mysql以正确的凭据答复拒绝访问

必须在连接参数中提供
ssl\u ca
文件(至少)

可能需要其他ssl参数,并记录在此处:



也发布在这里

我遇到了一个问题,即有些视图的“定义者”不好,即定义视图的用户。视图中使用的定义者在不久前已被删除