当我尝试使用ssh中的mysqldump进行备份时,我在机器10.64.1.1上运行以下命令.它给出以下错误.
mysqldump --user=test -p=password --host=10.64.1.2 --tab=. databasename tablename
mysqldump: Got error: 1045: Access denied for user 'test'@'10.64.1.1' (using password: YES) 当试图连接
但是,我可以使用相同的用户和密码访问mysql.
mysql --user=test -p[password]
当前用户: test@10.64.1.1
SSL: Not in use
当前寻呼机: stdout
使用outfile: ''
使用分隔符: ;
服务器版本: 5.0.91-50-log Percona SQL Server, Revision 73 (GPL)
协议版本: 10
连接: 10.64.1.2 via TCP/IP
更新:
如果我执行以下mysql文档:--password[=password]或-p[password].
由于我的密码包含特殊符号@,因此Mysql无法正确检测用户.它抱怨说:
mysqldump: Got error: 1044: Access denied for user 'test'@'%' to database
小智 32
您必须以管理员身份运行CMD.EXE:
右键单击cmd.exe - >以管理员身份运行,然后键入命令:
mysqldump -u [username] -p [password] -h [ip或name] yourdatabasename> c:\ sqlfile.sql
它应该工作正常.
Spy*_*ros 19
我认为在使用-p或使用--password时你必须丢失=:
--password [=密码], - p [密码]
连接服务器时使用的密码.如果使用短选项表单(-p),则选项和密码之间不能有空格.如果在命令行上省略--password或-p选项后面的密码值,则会提示您输入密码值.在命令行上指定密码应该被认为是不安全的.请参见第6.6节"保持密码安全".
Ala*_*nD. 12
我知道话题很老,但我碰巧遇到了同样的问题.我发现问题只是密码中使用的特殊字符.实际上,它们必须--password=123\@456使用反斜杠进行转义:或使用引号引号--password='123@456'
在Windows中,我通过创建一个目录然后将*.sql文件转储到备份目录中来解决它.
C:\backup
命令没有问题:
删除[]方括号
mysqldump -u[username] -p[password] -h[ip] yourdb > C:\backup\sqlfile.sql
它对我有用:)
另一种可能的原因可能是您尝试创建转储的位置。写作mysqldump -u[username] -p yourdb > D:\backup\sqlfile.sql并没有mysqldump -u[username] -p yourdb > sqlfile.sql解决我的问题。
| 归档时间: |
|
| 查看次数: |
51391 次 |
| 最近记录: |