AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / ubuntu / 问题 / 773446
Accepted
Jonathan
Jonathan
Asked: 2016-05-17 15:34:26 +0800 CST2016-05-17 15:34:26 +0800 CST 2016-05-17 15:34:26 +0800 CST

无法通过 MySQL Workbench 连接到 Ubuntu 16.04 中的本地主机(无密码根)

  • 772

Oracle 网站似乎暗示它仅适用于 15 和 14。 http://dev.mysql.com/downloads/workbench/

我的两台 Ubuntu 16.04 机器似乎也无法连接(root 访问被拒绝错误)

图片

它安装正常。它打开正常。但它不会连接到本地主机。

有人有运气吗?

16.04
  • 11 11 个回答
  • 129336 Views

11 个回答

  • Voted
  1. Mike M
    2016-06-03T17:46:12+08:002016-06-03T17:46:12+08:00

    该问题可能是由于在升级到 16.04 期间未设置密码时默认为 root 用户启用了套接字身份验证。这个重要的警告记录在 16.04发行说明中:

    MySQL root 密码为空时的密码行为已更改。打包现在在 MySQL root 密码为空时启用套接字身份验证。这意味着非 root 用户无法以空密码的 MySQL root 用户身份登录。

    无论出于何种原因,16.04 附带的 MySQL Workbench 不能与 MySQL 服务器一起使用,至少对我来说是这样。我尝试使用“本地套接字/管道”以多种不同的方式进行连接,但无济于事。

    解决方案是恢复到本机密码身份验证。您可以通过执行以下操作使用套接字身份验证登录 MySQL 来做到这一点:

    sudo mysql -u root

    登录后:

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

    这将恢复到本机(旧默认)密码身份验证。如果您尝试了其他方法来解决此问题,您需要确保 mysql.user 中的“plugin”字段设置为“auth_token”,这可能需要使用 mysqld_safe 登录 MySQL一直在摆弄东西,就像我一样。

    此解决方案归功于Miguel Nieto 的博客文章。

    • 51
  2. Best Answer
    Jonathan
    2016-07-02T13:55:47+08:002016-07-02T13:55:47+08:00

    MySQL 5.7 及更高版本不支持以“root”身份连接,mysql-workbench因此您必须创建一个普通用户并通过该用户进行连接。

    sudo mysql -u root -p
    

    创建一个名为“admin”的用户并使用它来连接mysql-workbench.

    CREATE USER 'admin'@'localhost' IDENTIFIED BY 'password';
    GRANT ALL PRIVILEGES ON *.* TO 'admin'@'localhost' WITH GRANT OPTION;
    
    • 41
  3. George Tasker
    2018-09-27T06:36:06+08:002018-09-27T06:36:06+08:00

    这个问题可能已经有两年了,但我今晚与 mysql-workbench 的合作似乎给了我答案。

    root 用户现在默认使用 auth_socket 身份验证。root 获得访问权限的唯一方法是以 root 身份登录。

    mysql -u root我通过同时作为 root 用户和标准用户运行发现了这一点 。

    它不会在标准用户下工作。

    所以我的下一个问题是——mysql-workbench 以什么用户身份运行。原来它默认以标准用户身份运行。要让它以 root 用户身份运行,它必须从 root 运行。所以我进入 root 用户 CLI 并输入“mysql-workbench”。

    然后我必须进入 root 用户的设置,如此处所示。该文件位置对 ubuntu 18.04 安装有效。

    根连接设置mysql-workbench。

    如果该套接字位置无效,那么您需要从 root 或 sudo 进入 mysql CLI 并运行以下命令。

    MySQL CLI 命令来查找套接字。

    设置正确后,测试连接。它应该是成功的,你准备好了。

    • 7
  4. David
    2018-08-19T20:31:45+08:002018-08-19T20:31:45+08:00

    创建一个具有适当管理权限的用户帐户,该帐户可以使用 auth_socket 插件通过 mysql 工作台进行连接。请注意,这不适用于与 mysql 服务器的 root 连接。

    从终端会话登录 mysql:

    $sudo mysql
    

    如果您能够执行此操作,则启用 auth_socket 插件,并且 root 帐户正在使用此插件进行身份验证。请注意,这是在运行安全安装脚本后在 ubuntu 上安装 mysql 时的默认设置。

    首先为您的帐户“valerie”创建一个 mysql 用户:

    mysql> CREATE USER 'valerie'@'localhost' IDENTIFIED WITH auth_socket;
    

    为帐户启用管理权限:

    mysql> GRANT ALL PRIVILEGES ON *.* TO 'valerie'@'localhost' WITH GRANT OPTION;
    

    退出外壳:

    mysql> exit
    

    然后在mysql工作台中:

    1. 创建新连接
    2. 选择连接方式为Local Socket/Pipe
    3. 将 Socket/Pipe 路径设置为:/var/run/mysqld/mysqld.sock(注意这是 Debian / Ubuntu 系统的路径,其他 Linux 版本的更改)
    4. 设置用户名(本例中为“valerie”)

    然后,您应该能够使用此连接连接到 mysql 服务器。

    • 3
  5. URI
    2019-07-22T12:25:02+08:002019-07-22T12:25:02+08:00

    尝试这个

    select mysql database
    
    use mysql;
    UPDATE user set plugin='mysql_native_password' where User='root';
    flush privileges;
    exit;
    

    然后

    sudo service mysql restart
    
    • 3
  6. Rinzwind
    2016-05-19T12:01:21+08:002016-05-19T12:01:21+08:00

    对我来说很好,我没有做任何特别的事情。mysql-server-5.7从命令行安装和工作台,并使用密码设置用户并设置普通数据库权限(也使用普通方法)。

    在此处输入图像描述

    并使用数据库和表:

    在此处输入图像描述

    • 2
  7. Tanmoy Bhowmick
    2020-04-18T08:52:05+08:002020-04-18T08:52:05+08:00

    如果您在 Workbench 中收到此错误,请按照以下步骤操作。

    首先只需使用您当前的密码登录:

    sudo mysql -u root -p
    

    然后更改密码,因为密码强度低有时会出错。

    ALTER USER 'root'@'localhost' IDENTIFIED BY 'new-strong-password';
    
    FLUSH PRIVILEGES;
    

    然后只需退出并使用您的新密码再次登录:

    quit
    
    sudo mysql -u root -p
    

    成功登录后,键入命令:

    use mysql;
    

    它应该显示类似“数据库已更改”的消息,然后键入:

    UPDATE user SET plugin='mysql_native_password' WHERE User='root';
    

    在该类型之后:

    UPDATE mysql.user set authentication_string=PASSWORD('new-strong-password') where user='root';
    

    然后输入:

    FLUSH PRIVILEGES;
    

    然后简单地退出:

    quit
    

    现在尝试在您的 WORKBENCH 中使用您的新密码登录。希望它会奏效。谢谢你。

    • 2
  8. Keith John Smith
    2021-10-13T02:43:46+08:002021-10-13T02:43:46+08:00

    在尝试了所有这些不太奏效的方法后,我在新安装的 21.04 Ubuntu 上遇到了同样的问题。

    我试图进入设置并允许所有权限,但由于某种原因它起作用了。

    mysql设置截图

    • 1
  9. Daxesh Prajapati
    2022-06-21T09:45:08+08:002022-06-21T09:45:08+08:00

    打开您的 ubuntu 系统的终端并输入以下代码,

    在我的 ubuntu 20.04 操作系统系统中,它工作正常,能够输入密码并且工作台工作正常。

    sudo snap connect mysql-workbench-community:password-manager-service :password-manager-service
    
    • 1
  10. Usman Suleman
    2017-03-04T23:22:30+08:002017-03-04T23:22:30+08:00

    运行 Ubuntu 16.04 的 AWS 主机上的 MySQL 服务器;Ubuntu 16.04 笔记本电脑上的 mysql-workbench;使用 KeyPair 连接。

    设置测试数据库连接后正常工作。但实际连接总是失败,并出现一条类似于 Jonathan Leaders 发布的消息。检查日志~/.mysql/workbench/log并发现一些“权限被拒绝”消息。

    现在我可以使用 mysql-workbench 了: sudo mysql-workbench

    稍后我可以去chmod需要许可的目录。

    • 0

相关问题

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    如何运行 .sh 脚本?

    • 16 个回答
  • Marko Smith

    如何安装 .tar.gz(或 .tar.bz2)文件?

    • 14 个回答
  • Marko Smith

    如何列出所有已安装的软件包

    • 24 个回答
  • Marko Smith

    无法锁定管理目录 (/var/lib/dpkg/) 是另一个进程在使用它吗?

    • 25 个回答
  • Martin Hope
    Flimm 如何在没有 sudo 的情况下使用 docker? 2014-06-07 00:17:43 +0800 CST
  • Martin Hope
    Ivan 如何列出所有已安装的软件包 2010-12-17 18:08:49 +0800 CST
  • Martin Hope
    La Ode Adam Saputra 无法锁定管理目录 (/var/lib/dpkg/) 是另一个进程在使用它吗? 2010-11-30 18:12:48 +0800 CST
  • Martin Hope
    David Barry 如何从命令行确定目录(文件夹)的总大小? 2010-08-06 10:20:23 +0800 CST
  • Martin Hope
    jfoucher “以下软件包已被保留:”为什么以及如何解决? 2010-08-01 13:59:22 +0800 CST
  • Martin Hope
    David Ashford 如何删除 PPA? 2010-07-30 01:09:42 +0800 CST

热门标签

10.10 10.04 gnome networking server command-line package-management software-recommendation sound xorg

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve