解决ubuntu 16.04安装mysql5.7.17后,登录时出现ERROR 1045 (28000): Access denied for user ‘root’@’localhost’问题

问题背景:在安装Ubuntu 16.04操作系统后,安装mysql5.7.17,并使用root用户尝试登录mysql时显示"ERROR 1045 (28000): Access denied for user 'root'@'localhost'"错误提示。

解决过程:

步骤1. 卸载mysql-server

在安装mysql5.7.17之前,如果已经安装了旧版本的mysql-server,需要卸载掉。执行以下命令卸载:

sudo apt-get remove mysql-*   # 卸载mysql
sudo apt-get autoremove      # 移除系统中MySQL相关旧文件

步骤2. 下载安装mysql5.7

可以通过官方网站下载mysql5.7安装包,如:

wget https://dev.mysql.com/get/mysql-apt-config_0.8.15-1_all.deb

步骤3. 添加安装源

安装mysql前,需要添加一个安装源。执行以下命令:

sudo dpkg -i mysql-apt-config_0.8.15-1_all.deb

在弹出的对话框中选择MySQL 5.7,然后更新软件列表:

sudo apt update

步骤4. 安装mysql5.7

可以使用以下命令安装mysql5.7:

sudo apt install mysql-server

安装过程中可以设置root用户的密码。安装完成后可以使用以下命令查看是否安装成功:

sudo systemctl status mysql

步骤5. 设置root用户的权限

在mysql安装完成后,默认的root用户没有连接权限,需要手动为其添加权限。可以使用以下命令:

sudo mysql -u root    # 连接mysql
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'password';

执行后,即可成功连接mysql。

步骤6. 测试连接

可以在终端执行以下命令测试连接:

mysql -u root -p

输入root用户的密码后如果能够成功登录,则说明连接成功。

示例1:卸载mysql-server

sudo apt-get remove mysql-*
sudo apt-get autoremove

示例2:添加安装源

sudo dpkg -i mysql-apt-config_0.8.15-1_all.deb
sudo apt update

以上就是解决Ubuntu 16.04安装mysql5.7.17登录时出现"Access denied for user 'root'@'localhost'"问题的完整攻略。希望对你有所帮助。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:解决ubuntu 16.04安装mysql5.7.17后,登录时出现ERROR 1045 (28000): Access denied for user ‘root’@’localhost’问题 - Python技术站

(0)
上一篇 2023年5月18日
下一篇 2023年5月18日

相关文章

  • Swoole 协程 MySQL 客户端与异步回调 MySQL 客户端的对比

    为什么要对比这两种不同模式的客户端? 异步 MySQL 回调客户端是虽然在 Swoole 1.8.6 版本就已经发布了,但是异步回调的层层嵌套,让编码变得很别扭。如今 Swoole 4.3 版本都已经发布了,并且已经支持协程化的 MySQL 客户端,这意味着可以完全采用同步编码的模式,来进行程序开发了,对于开发者来说这是一个大好的消息。而且在 Swoole …

    MySQL 2023年4月13日
    00
  • MySQL深度分页(千万级数据量如何快速分页)

    MySQL是一种常用的关系型数据库,对于大数据量的分页查询,需要采用一些特殊的技巧来达到较好的性能和效果,这就是MySQL深度分页的技巧。下面是深度分页的完整攻略: 了解MySQL分页的性能问题 在MySQL中,使用OFFSET和LIMIT分页方式的底层实现是一次查询所有行然后返回指定的行数。因此,随着查询结果集的增加,OFFSET值越大,查询时间就会变得越…

    MySQL 2023年5月19日
    00
  • Mysql 数据库 基础代码

    — 创建数据库 CREATE DATABASE book; — 创建作者表 CREATE TABLE authors( Id int not NULL, — 作者编号 Fname VARCHAR(10), — 姓 Lname VARCHAR(12), — 名 Sex CHAR(2), Sage int ); — 创建图书表 CREATE tabl…

    MySQL 2023年4月13日
    00
  • MySQL创建数据库表

    MySQL是一种关系型数据库管理系统,用于管理大量的数据。为了存储和管理数据,MySQL有一个重要的组成部分——数据表。 MySQL数据表是数据组织的逻辑单元,其中数据按行和列组织,类似于电子表格或Excel中的表格。在这个表格中,数据按照特定的格式和范围存储、分类和访问。 以下是MySQL创建数据库表的方法。 创建命令 MySQL的创建表命令结构如下所示:…

    MySQL 2023年3月9日
    00
  • MySQL定义异常和异常处理详解

    MySQL 定义异常和异常处理详解 MySQL 中的异常处理是程序技术人员在编程过程中经常需要掌握的一种技能。当程序出现异常时,可以捕捉到异常并进行相应的处理。本文将会详细讲解 MySQL 中的异常定义和异常处理的方法。 定义异常 在 MySQL 中,异常是一种异常情况,它可以在程序执行期间被抛出。当程序出现异常时,会导致程序终止或执行出错。为了更好地控制程…

    MySQL 2023年5月18日
    00
  • 解决Go语言数据库中null值的问题

    为了解决Go语言在数据库中查询null值时的问题,可以采用以下两种方法: 方法一:使用sql.NullString / sql.NullInt64结构体 在Go语言的database/sql包中,可以使用sql.NullString和sql.NullInt64结构体来处理null值的情况。使用这两个结构体可以让Go语言中的代码更加严谨和可读性更高。 例如,通…

    MySQL 2023年5月18日
    00
  • MYSQL大表改字段慢问题如何解决

    本文小编为大家详细介绍“MYSQL大表改字段慢问题如何解决”,内容详细,步骤清晰,细节处理妥当,希望这篇“MYSQL大表改字段慢问题如何解决”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。 MYSQL的ALTER TABLE操作的性能对大表来说是个大问题。MYSQL执行大部分修改表结构操作的方法是用新的表结构创建一个空表,从旧表中查…

    MySQL 2023年4月10日
    00
  • 详解mysql8.0创建用户授予权限报错解决方法

    下面是详解MySQL 8.0创建用户授予权限报错解决方法的完整攻略: 问题背景 在MySQL 8.0版本中,使用CREATE USER命令创建用户并授权时,有可能会出现类似于下面的报错: ERROR 1410 (42000): You are not allowed to create a user with GRANT 这是由于MySQL 8.0版本的安全…

    MySQL 2023年5月18日
    00
合作推广
合作推广
分享本页
返回顶部