无法连接到数据库服务器(mysql workbench)

23 浏览
0 Comments

无法连接到数据库服务器(mysql workbench)

你能帮我解决这个问题吗?

当我尝试在Mysql Workbench中的数据库菜单下点击“查询数据库”时,出现了一个错误:

无法连接到数据库服务器

您对服务器127.0.0.1上的用户'root'的连接尝试失败:无法连接到mysql服务器'127.0.0.1'(10061)

请:

  1. 检查mysql是否在127.0.0.1上运行
  2. 检查mysql是否在端口3306上运行(注意:3306是默认端口,但可以更改)
  3. 检查root是否有权利从您的地址连接到127.0.0.1(mysql权限定义了哪些客户端可以连接到服务器以及从哪些计算机连接)
  4. 确保您是否提供了密码(如果需要)并使用正确的密码来连接从您连接的主机地址到127.0.0.1
0
0 Comments

问题:无法连接到数据库服务器(mysql workbench)

原因:我的服务器配置为仅接受来自本地主机的连接。我通过按照这篇文章的步骤进行修复:How Do I Enable Remote Access To MySQL Database Server? 我的my.cnf文件中没有skip-networking行,所以我只需将下面这行代码:

bind-address = 127.0.0.1

更改为

bind-address = 0.0.0.0

这样可以允许来自任何IP的连接。

然后,我通过运行以下终端命令在我的客户端机器上创建了一个可以连接的MySQL用户:

# mysql -u root -p

mysql> CREATE USER 'username'@'1.2.3.4' IDENTIFIED BY 'password';

-> GRANT ALL PRIVILEGES ON *.* TO 'username'@'1.2.3.4' WITH GRANT OPTION;

-> \q

其中1.2.3.4是您要连接的客户端的IP地址。如果遇到问题,可以使用'%'代替'1.2.3.4',以允许用户从任何IP连接。

其他原因:详细列表请参见 Causes of Access-Denied Errors.

据我所知,创建用户是必要的,因为root用户只应用于管理员工作,并且合理地应该限制在本地主机上。除此之外,您可以根据自己的需要创建其他用户!

注意:Causes of Access-Denied Errors的链接已经失效。

我遇到了类似的问题,对我有用的是:

mysql> CREATE USER 'username'@'%' IDENTIFIED BY 'Password123#@!';

-> GRANT ALL PRIVILEGES ON *.* TO 'username'@'%' WITH GRANT OPTION;

-> \q

我不需要进行绑定操作,我的密码设置为中等强度,您可以使用"SHOW VARIABLES LIKE 'validate_password%';"进行检查。

备注:这是我的开发用Ubuntu设置。

0
0 Comments

在升级到Ubuntu 16.04时,默认情况下为root用户启用了套接字身份验证,当没有设置密码时可能会出现无法连接到数据库服务器(mysql workbench)的问题。

解决方法是回滚到本地密码身份验证。您可以通过使用套接字身份验证登录MySQL来执行此操作:

sudo mysql -u root

登录后执行以下操作:

ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'password';

这将恢复到本地(旧的默认)密码身份验证。

现在在MySQL中每当需要密码时,使用password作为密码。

这对我来说有效,我很惊讶,我已经在安装MySQL时配置了严格的密码,并且在给定的更改查询中使用了相同的严格密码。我很好奇为什么第一次尝试时它没有起作用。

非常感谢!这种行为是否只为了使Unix根用户在登录到MySQL时无需输入密码而创建的?

如何在Windows上执行此操作?在我设置了密码之后,我遇到了相同的问题。MySQL在设置密码后出现错误,就像他们不希望有人使用他们的数据库框架一样奇怪。

如果您使用snap来安装MySQL Workbench,请尝试以下操作:sudo snap connect mysql-workbench-community:password-manager-service :password-manager-service,以允许沙盒软件包访问密码服务。 askubuntu.com/a/1242777/1621549

我尝试在MariaDB 10.1.48上使用此命令并收到错误“您的SQL语法有误;”:/

0
0 Comments

无法连接到数据库服务器(mysql workbench)的原因可能是MySQL服务未启动或者没有以管理员身份运行。解决方法可以尝试手动启动MySQL服务,通过在开始菜单搜索框中打开services.msc,或者直接在运行框中输入services.msc。如果这些方法都不起作用,可以尝试从命令行中直接运行C:\Program Files\MySQL\MySQL Server 5.6\bin\mysqld.exe --console,注意在"mysql"和".exe"之间有一个"d"(在以管理员身份打开命令行时有效)。另外,也可以通过以sudo身份运行MySQL-Workbench来解决问题:sudo mysql-workbench,如果不知道如何找到services.msc,这个方法可能更方便。

0