T30*_*000 5 mysql localhost mysqldump
MySQL数据库是使用Localhost:3307设置的。我正在尝试使用mysqldump命令备份我的同事的所有数据。我这样编写命令行:mysqldump -u root -h 3307 -p数据库>“ path_to_dumpfile \ database.sql”。然后,系统提示我输入密码(打开工作台时不再要求输入密码)。问题是,我收到以下错误消息:“ mysqldump:得到错误:2005:尝试连接时未知的mysql服务器主机'3307'<2>”我做错了吗?还是我没有遵循的步骤?
谢谢你的帮助。
Pis*_*isu 10
我遇到了同样的问题,也使用了 --port 参数,我使用serverfault 答案中的这个建议解决了:
当给出 localhost 参数时,MySQL 使用套接字。请改用 127.0.0.1。
小智 10
尝试添加--port=port_num到您的命令行而不是-h(或者-P port_num如果前者不起作用)像这样:
mysqldump -u root --port=3307 -p database > ..\path_to_dumpfile\database.sql
我建议您查看 MySQL 手册以了解该mysqldump命令的其他可能参数,链接如下。
来源:https : //dev.mysql.com/doc/refman/8.0/en/mysqldump.html
正如其他人所建议的,问题可能是使用 localhost/127.0.0.1 时使用了错误的协议。\n所以除了--port=3307还添加协议之外。
尝试:
\n--protocol=TCP --port=3307\nRun Code Online (Sandbox Code Playgroud)\n从man mysqldump:
\n\n--protocol={TCP|套接字|管道|内存}
\n用于连接到服务器的连接协议。当其他连接参数通常会导致使用与您想要的协议不同的协议时,它很有用。有关允许值的详细信息,请参见第 4.2.2 节,\xe2\x80\x9c连接到 MySQL 服务器\xe2\x80\x9d。
\n
我有一个类似的问题,因为我的服务器上运行着两个 mysql 实例,一个在端口 3306 上,一个在 3307 上。看起来 mysqldump 尽管我将端口指定为 3307,但正在连接到 3306 处的实例。我的解决方法是关闭在 3306 上运行的实例。我只能假设这是 mysqldump 如何识别正在运行的实例的错误。
| 归档时间: |
|
| 查看次数: |
20946 次 |
| 最近记录: |