ERROR 2003(HY000):无法连接到localhost上的MySQL服务器(10061)

时间:2013-07-02 12:47:37

标签: mysql

我使用noinstall Zip Archive在Microsoft Windows 8上安装了MySQL。但是当我通过在Windows提示符下执行以下命令进行测试时,出现了上述错误。

C:\> "C:\MySQL\bin\mysqlshow" 

C:\> "C:\MySQL\bin\mysql" test

请帮帮我。

28 个答案:

答案 0 :(得分:47)

您无需重新启动Windows。实现这一目标的最简单方法是

  1. 转到/ bin /
  2. 运行mysqld(service)
  3. 关闭cmd提示
  4. 运行mysql.exe或更好的方法是将位置添加到PATH环境变量
  5. 由于

答案 1 :(得分:14)

转到运行类型services.msc。检查MySQL服务是否正在运行。如果没有,请手动启动它。启动后,键入mysqlshow以测试服务。

答案 2 :(得分:8)

我也面临同样的问题。试试吧

  1. 转到bin目录复制路径并将其设置为环境变量。
  2. 以admin身份运行命令提示符并cd到bin目录:
  3. 运行命令:mysqld -install
  4. 现在服务已成功安装
  5. 在os
  6. 的服务窗口中启动服务
  7. 键入mysql并转到

答案 3 :(得分:5)

虽然这是一个老问题,但我在其中添加了答案,因为在Windows 7上作为管理员用户使用的解决方案在答案中缺失了。名单。虽然我的解决方案是安装MySQL,但我会把它放在那些搜索此错误消息的解决方案的人身上。这是:

  1. 单击Windows 7开始按钮,然后在搜索栏中输入taskmgr
  2. 右键单击taskmgr程序图标,然后选择Run as administrator
  3. 在“任务管理器”窗口中,转到Services标签
  4. 右键点击MySQL服务,然后点击Start Service
  5. Step 1 and 2 Step 3 and 4

答案 4 :(得分:3)

我有一台Windows 8.1机器,即使尝试启动没有错误日志的mysqld,mysql也根本没有运行。这个解决方案对我有用:

  1. 以管理员模式启动cmd
  2. 输入" net start mysql"
  3. 关闭当前cmd窗口并打开新的cmd窗口
  4. 输入" mysql"
  5. mysqld服务现在应该可用。

答案 5 :(得分:2)

测试服务器是否正在运行。你可以使用netstat。见https://serverfault.com/questions/260239/unable-to-connect-to-mysql-through-port-3306

如果它正在运行,它可能是防火墙。您可以将其关闭以测试是否存在问题。

请参阅以下手册以将Mysql作为服务安装:https://dev.mysql.com/doc/refman/5.5/en/windows-start-service.html

答案 6 :(得分:2)

嘿,这不是一个大问题,你需要做的是......

1. Run your cmd as administrator.

2.What you will see is like this
c:\windows\system32>

3.Go to your bin location by using cd..
like C:\mysql\bin(my location of bin in my computer is what you are seeing so chose yours correctly)

4.C:\mysql\bin>mysql --install
  Service successfully installed.

5.C:\mysql\bin>NET START MySql
 The MySql service is starting
 The MySql service was started successfully

然后最后一步是

6.C:\mysql\bin>mysql -u root - p admin
It will ask for password don't enter anything first time because it will use blank, n just press enter you are done.

N以后你也可以设置密码......:)

答案 7 :(得分:1)

我有同样的问题。 我的服务器运行良好。我发现它是端口,因此您需要指定端口。

mysql -u user -p --port 0000

答案 8 :(得分:1)

确保你的mysql运行在默认端口(3306),如果你运行的是不同端口的mysql(例如:3307),你必须在连接服务器时指定端口号。

如果您的端口与默认端口不同,请尝试使用此命令。

mysql -u -p --port

例如:mysql -u root -p --port 3307

答案 9 :(得分:1)

首先,您需要确保服务器在其上运行的端口号。然后您可以运行

mysql -u username -p --port portNumber 在命令行上

答案 10 :(得分:1)

在Windows 10和MySQL 8中出现此问题。已通过以下步骤解决: 搜索栏(左下)>任务管理器>以管理员身份运行>服务> MySQL80

答案 11 :(得分:1)

那可能有一些原因。

第一个是MySQL服务器/服务未启动。

如果他已经开始你应该检查日志文件,并确保没有问题。

您也可以卸载MySQL服务并安装XAMPP。 使用XAMPP可以更轻松地管理这些服务。

答案 12 :(得分:1)

我已经尝试了上述所有选项但无法找到解决此问题的方法。然后我得到了解决方案.... 当我们尝试打开mysql而不说明服务时,会出现此错误。 按照下面提到的步骤进行操作。
第1步
打开cmd提示

启动服务类型
mysqld --console 这将启动mysql服务
enter image description here
第2步 不要关闭这个cmd提示
现在打开新的cmd提示符 键入
mysql -u root -p
然后输入您的密码为enter image description here

答案 13 :(得分:1)

我因为感觉像是永恒而被困在同一个问题上。

我的问题是:我在端口8889上从MAMP运行mysql,但是当我尝试从命令行连接到mysql时,它正在使用端口3306.我的想法已经用完了,所以我试过了:

<%@ Page Title="" Language="C#" MasterPageFile="~/Admin/Staff.master" AutoEventWireup="true" CodeFile="Staff.aspx.cs" Inherits="Admin_Staff" %> <asp:Content ID="Content1" ContentPlaceHolderID="StaffContent" Runat="Server"> </asp:Content> <asp:Content ID="Content2" ContentPlaceHolderID="MainContent1" Runat="Server"> </asp:Content>

随后幸福快乐:

mysql --port 8889

答案 14 :(得分:1)

这也发生在我身上!但是我意外地发现了执行&#39; mysqld&#39;命令可以解决您的问题。

我的SQL版本是5.7。希望这对你有用。

答案 15 :(得分:1)

检查Mysqld.exe文件是否在bin文件夹中。如果它不存在,只需从任何其他计算机复​​制该文件并将其粘贴到您的bin文件夹。只需双击。然后运行mysql.its解决了

答案 16 :(得分:1)

如果您使用的是无安装zip,则需要先执行mysqld.exe以启动该服务,然后执行mysql.exe以打开您的连接。

没有安装很好,但如果您打算对MySQL进行任何认真的工作,您可能需要考虑使用MSI进行正确的安装,或者如果您正在进行Web开发工作,请尝试使用XAMPP。

答案 17 :(得分:0)

我遇到了同样的问题。我尝试了上面的所有答案(以及其他一些网站的答案)。最后,我的问题是我的缓存没有配置。我在错误日志中找到了这些信息,并通过更改文件中的行来修复它:

C:\ MAMP \ BIN \阿帕奇\ CONF \额外\ HTTP-ssl.conf中

在那里我从行中删除了双引号:

SSLSessionCache&#34; shmcb:/ some / example / path / ssl_scache(512000)&#34;

为:

SSLSessionCache shmcb:/ some / example / path / ssl_scache(512000)

并使用Ctrl + S保存并关闭文件。

这是帮助我的链接: https://wiki.apache.org/httpd/SSLSessionCache

答案 18 :(得分:0)

我几次遇到相同的问题,每次的原因都不相同:

  • 第一次起作用的解决方案是“ Abhishek Oza”的解决方案,与“ amey91”的解决方案相同(见上文)
  • 第二次,我的服务器使用的端口号与默认端口号不同(3036),所以我无法连接。所以我必须指定 明确建立连接的端口号 只需编写:“ mysql --host = 127.0.0.1 --port = 8081(指定您的 端口号)mysql -u root -p

答案 19 :(得分:0)

就我而言,这是使用.zip文件的手动安装。 我通过在my.ini中指定非标准的MySQL和Data安装位置来解决此问题。 https://dev.mysql.com/doc/refman/8.0/en/windows-create-option-file.html

然后,我需要运行数据目录初始化命令: https://dev.mysql.com/doc/refman/8.0/en/data-directory-initialization-mysqld.html

然后运行: 净启动mysql

答案 20 :(得分:0)

您的MYSQL安装可能已损坏。最好的办法是在系统上搜索MYSQL INSTALLER,然后再次运行。

它不会再次下载mysql服务器,只会帮助您进行设置。

然后,编辑您的environment variables路径,并将mysql的bin文件夹添加到其中。

现在,它应该可以工作了。

答案 21 :(得分:0)

转到运行类型services.msc。检查MySQL服务是否正在运行。如果没有,请手动启动。

答案 22 :(得分:0)

我对大多数这些解决方案都有疑问。我在c驱动器中找不到bin文件夹的事实。我尝试了此处提供的解决方案“ react-router”和vwala“欢迎使用mysql监视器....”

答案 23 :(得分:0)

在我的情况下,我在Windows OS中有2个不同版本的mysql,并通过最底层的步骤解决了我的问题:

首先停止所有mysql服务。

我在C:\ mysqldata.cnf中使用底部数据创建一个配置文件(我的mysql在“ C:/mysql-5.0.96-winx64”目录中):

zstd

然后我在cmd中运行bottom命令:

[mysqld]
datadir = C:/mysql-5.0.96-winx64/data
port = 3307

above step reference

然后我在C:\ resetpass.txt中使用底部数据创建txt文件:

C:\mysql-5.0.96-winx64\bin\mysqld --defaults-file=C:\mysqldata.cnf --console

然后使用底部命令运行mysqld:

UPDATE mysql.user SET password=PASSWORD('ttt') WHERE user='root';

完成这些步骤后,您将获得一个比使用3307端口运行的mysql服务(名称为mysql2)。

我有2个版本的mysql具有不同的用户管理表(在5.0.96版中,用户表与5.5版有所不同,因为我必须在第一步中更改表文件夹)

您现在可以使用其他端口运行其他mysql服务(您可以再次使用不同的datadir,服务名称和端口运行此步骤)

答案 24 :(得分:0)

  1. 首先请确保已安装MYsql + Sqlyog(如果正在使用)。

    • 启动注册表编辑器(Regedt32.exe)。
  • 在注册表中找到以下项:

    HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Services \ Tcpip \ Parameters 在“编辑”菜单上,单击“添加值”,然后添加以下注册表值:

       Value Name: MaxUserPort
       Data Type: REG_DWORD
       Value: 65534
    

    这可设置任何用户可用的临时端口数。有效范围是 在5000到65534之间(十进制)。默认值为0x1388(十进制5000)。

    在“编辑”菜单上,单击“添加值”,然后添加以下注册表值:

       Value Name: TcpTimedWaitDelay
       Data Type: REG_DWORD
       Value: 30
    

    这将设置将TCP端口连接保持在TIME_WAIT状态之前的秒数 关闭。有效范围是十进制的30到300,尽管您可能希望检查 与Microsoft取得最新的允许值。默认值为0x78(十进制120)。

    Quit Registry Editor.
    
    Reboot the machine.
    

答案 25 :(得分:0)

最适合我的解决方案是:

  1. 下载了mysql-8.0.22-winx64.zip文件
  2. 提取了zip文件
  3. 将提取的文件夹移动到C:/ Program Files
  4. 以管理员身份打开cmd.exe
  5. 导航到目录cd C:\Program Files\mysql-8.0.22\mysql-8.0.22-winx64\bin
  6. mysqld -install(服务已成功安装)
  7. mysqld --initialize(无提示)
  8. 打开的services.msc
  9. 找到了MySQL
  10. 右键单击并开始

让我知道是否有帮助!

答案 26 :(得分:0)

我建议先检查一下my.ini是否存在于c驱动器的mysql文件夹或Windows文件夹中 mysqld -install(服务已成功安装) mysqld --initialize(无提示) 另一个建议是不要使用mysql 8,因为它与wordpress或任何其他开源软件都不兼容,因此版本5和版本8之间会有很多更改,因此,如果您使用的是mysql,请使用版本5.x。 >

答案 27 :(得分:0)

解决问题的步骤 ->

  1. 转到命令提示符和 c 的根目录(如果设置了环境变量路径,则为 c:\) 输入 -> c:\>mysqld -install
  2. 然后输入 -> c:\mysqld --initialize
  3. 现在在 mysql 的根目录下创建一个 .txt 文件(在我们的示例中我们使用 init.txt)(可能因您的目录而异)->c:\MySQL\init.txt
  4. 现在打开那个.txt文件(init.txt)并写入-> enter image description here

5.打开运行控制台并写入 -> Services.msc

6.然后会打开服务窗口,在那里选择MYSQL,双击它并按开始

7.最后打开新的命令提示符窗口并在 c (c:) 的根目录输入 ->c:\>mysqlsh 由于此 shell 将执行,您已准备好开始......