MySQL for Excel连接失败

时间:2018-05-08 17:28:57

标签: mysql excel authentication database-connection mysql-workbench

我在Windows 10上运行MySQL,我在我的本地计算机(版本8.0.11)上全新安装了MySQL for Windows,使用开发计算机配置完全安装。我可以在MySQL Workbench上登录我的服务器。我已经安装了MySQL for Excel插件。我还没有将任何表添加到数据库中,我计划通过Excel添加它们。

当我点击Excel中的MySQL for Excel选项卡并尝试以root身份连接到我的本地实例时,它会失败。

错误消息

  

任何可用插件都不支持身份验证方法'caching_sha2_password'。

阅读此版本的文档,似乎该插件应自动包含在下载中。

感谢你们给予的任何帮助。

3 个答案:

答案 0 :(得分:3)

  1. 转到搜索类型​​-> MySQL Installer-社区,然后输入。 然后打开对话框,按是。

  2. 在mysql服务器上选择“重新配置”;

  3. 在“身份验证方法”选项卡中,选择“使用旧式身份验证方法”

答案 1 :(得分:2)

我也有类似的问题。

这种方式可以解决您的问题:

  1. 执行安装文件;
  2. 在mysql服务器上选择“重新配置”;
  3. 在“身份验证方法”选项卡中,选择“使用旧版身份验证方法”

答案 2 :(得分:0)

MySQL 8

在MySQL 8.0.4中,他们将哈希算法从mysql_native_password更改为caching_sha2_password(SHA-256)。 MySQL插件,即使与MySQL 8捆绑在一起安装,也不能与SHA-256一起使用。因此,我们需要创建一个具有mysql_native_password,授予权限和刷新特权的用户。

最后一点,MySQL8用户名不是唯一的,并且可以通过两种方式使用两个用户名相同的用户来访问重叠资源(对个人使用授权而不使用新角色功能)以前。

  

MySQL由Oracle拥有,这与Oracle 12c数据库的工作方式更为相似。乍看起来似乎很麻烦,但是我认为该模型更好。

解决方案

只需创建一个专门用于通过插件进行连接的用户。运行以下命令

CREATE USER 'excel_plugin_user'@'%' IDENTIFIED WITH mysql_native_password BY 'P@ssw0rd1';
GRANT ALL PRIVILEGES ON * . * TO 'excel_plugin_user'@'%';
FLUSH PRIVILEGES;

然后将excel_plugin_user用于所有MySQL Excel插件连接。这只是最小可行的解决方法,但不一定是最佳实践。

  

我通常为此用户创建一个imp表空间,并将所有数据仅从localhost导入到该表空间(设置为默认值,否则将无法工作),并且通常会创建一个角色来咬我的关系数据。但是,我认为真正的DBA可以设置公钥/私钥(也受支持)

反解决方案

您也可以将以下行添加到my.cnf文件(或任何Windows称为)

[mysqld]
default_authentication_plugin=caching_sha2_password
  

如果希望它与会话相关,则可以设置一个命令行标志。我不知道在场