亲测ubuntu 18系统下解决MySQL 5.7版本的root用户密码没提示输入问题不能登录问题

本文涉及的产品
RDS MySQL DuckDB 分析主实例,基础系列 4核8GB
RDS AI 助手,专业版
RDS Agent(兼容OpenClaw),2核4GB
简介: 最近在ubuntu系统上安装了MySQL,但是安装时没有提示输入root用户密码,在网上找了一天解决方案,试图修改root用户下的登入密码,但是网上的帖子都不凑效,最后终于改成功了,因此记下来以供有同样需要的人参考。

最近在ubuntu系统上安装了MySQL,但是安装时没有提示输入root用户密码,在网上找了一天解决方案,试图修改root用户下的登入密码,但是网上的帖子都不凑效,最后终于改成功了,因此记下来以供有同样需要的人参考。

1、安装

1

2

3

4

5

$ sudo apt-get install mysql-server


$ sudo apt install mysql-client


$ sudo apt install libmysqlclient-dev

 以此在终端输入上述代码,等待安装。装好后,输入以下代码检查下是否安装成功。

1

2

3

4

5

$ sudo netstat -tap | grep mysql


$ sudo netstat -tap | grep mysql


tcp6        0       0       [::]:mysql    [::]:*    LISTEN    7510/mysqld

 如果出现第三行提示,则表明安装成功。

2、登入MySQL

1$ mysql -u root -p

 输入密码,如果可以进入则下面的不用看了;如果提示不能登入,则我们尝试启用安全模式登入MySQL,这样可以绕过密码登入,登入后再修改密码。

3、安全模式登入MySQL

1

2

3

4

5

6

7

$ sudo /etc/init.d/mysql stop


-------------------------------------

[sudo] wl 的密码:

[ ok ] Stopping mysql (via systemctl): mysql.service.


$ sudo /usr/bin/mysqld_safe --skip-grant-tables --skip-networking &

 输入第一行终止MySQL运行,成功,会提示下面两行;输入第四行,成功,没有任何报错则可以另外打开一个终端窗口进行下一步操作;但是一般会报错,比如提示mysqld_safe Directory ‘/var/run/mysqld’ for UNIX socket file don’t exists

因此我们尝试输入以下代码

1

2

3

$ sudo mkdir -p /var/run/mysqld


$ sudo chown mysql:mysql /var/run/mysqld

 最后再次输入:

1sudo /usr/bin/mysqld_safe --skip-grant-tables --skip-networking &

 到了这里不在提示错误,可以打开另一个终端端口了,尝试无密码登入MySQL。

1mysql -u root

 到这里应该可以进入MySQL了,继续操作

1

2

3

4

5

6

7

> use mysql;


> update user set authentication_string=PASSWORD("这里输入你要改的密码") where User='root'; #更改密码

> update user set plugin="mysql_native_password"; #如果没这一行可能也会报一个错误,因此需要运行这一行


> flush privileges; #更新所有操作权限

> quit;

 4、使用修改的密码登入MySQL

经过上面一系列的操作,应该可以正常使用你更改的密码登入了。

1

2

3

4

> sudo /etc/init.d/mysql stop

> sudo /etc/init.d/mysql start # reset mysql


> mysql -u root -p

 第一行先终止数据库运行,第二行重启数据库服务,第三行root用户登入。

相关实践学习
每个IT人都想学的“Web应用上云经典架构”实战
本实验从Web应用上云这个最基本的、最普遍的需求出发,帮助IT从业者们通过“阿里云Web应用上云解决方案”,了解一个企业级Web应用上云的常见架构,了解如何构建一个高可用、可扩展的企业级应用架构。
MySQL数据库入门学习
本课程通过最流行的开源数据库MySQL带你了解数据库的世界。   相关的阿里云产品:云数据库RDS MySQL 版 阿里云关系型数据库RDS(Relational Database Service)是一种稳定可靠、可弹性伸缩的在线数据库服务,提供容灾、备份、恢复、迁移等方面的全套解决方案,彻底解决数据库运维的烦恼。 了解产品详情: https://www.aliyun.com/product/rds/mysql 
目录
相关文章
|
Ubuntu 关系型数据库 MySQL
mysql8.0安装初始化不需要设定root密码?
uubntu 的mysql安装完成后无法设定root密码
633 10
|
Ubuntu 安全
Ubuntu中遇到"无法创建临时文件"/tmp/..."在普通或root用户运行apt-get update时的错误解决办法
这些步骤当然不能涵盖所有可能出现问题的场合,但是能覆盖大多数常见的情景。希望这些信息能帮到你解决"无法创建临时文件"/tmp/..."这样的问题。不过,请记住,因为修改系统文件和目录的权限,清理临时文件,或者运行磁盘检查,都可能对系统造成影响,所以执行这些操作前要先确认这是安全的,必要时最好先做好数据备份。
836 10
|
Ubuntu 安全 Shell
Ubuntu中默认的root用户密码
Ubuntu 系统的安全设计默认不启用 root 用户的直接登录,而是通过 sudo 权限来管理系统。这种设计提高了系统的安全性,防止恶意软件或未经授权的用户直接获取最高权限。如果确实需要使用 root 用户,可以通过设置密码和更改 shell 启用 root 登录,同时也能随时锁定和禁用 root 用户以保障系统安全。通过上述步骤,可以灵活管理 Ubuntu 系统中的 root 用户权限。
6163 20
|
监控 Ubuntu 安全
debian或Ubuntu中开启ssh允许root远程ssh登录的方法
在Debian或Ubuntu系统中启用root用户的SSH远程登录需要编辑SSH配置文件、设置root密码并重启SSH服务。虽然这可以在某些情况下提供便利,但必须注意安全性,通过使用强密码、限制IP访问、使用SSH密钥认证等方法来保护服务器的安全。
7941 5
|
SQL 关系型数据库 MySQL
mysql密码错误-ERROR 1045 (28000): Access denied for user ‘root‘@‘localhost‘ (using passwor:yes)
这篇文章提供了解决MySQL数据库"Access denied for user 'root'@'localhost' (using password: YES)"错误的方法,通过跳过密码验证、修改root密码,然后重启服务来解决登录问题。
mysql密码错误-ERROR 1045 (28000): Access denied for user ‘root‘@‘localhost‘ (using passwor:yes)
|
存储 关系型数据库 MySQL
【赵渝强老师】解决MySQL丢失root用户密码
本文介绍了MySQL数据库中用户密码存储的变化,以及如何通过特殊方法重置root用户的密码。从MySQL 5.7版本开始,密码字段由“password”改为“authentication_string”。文章详细列出了重置密码的步骤,并提供了相关代码示例和视频教程。
536 0
|
安全 关系型数据库 MySQL
在Linux中,如何重置 mysql root 密码?
在Linux中,如何重置 mysql root 密码?
|
安全 关系型数据库 MySQL
MySQL非root安装-初始化数据库时unknown variable ‘defaults-file=**/my.cnf‘
解决安装过程中出现的问题通常需要仔细地检查错误日志、配置文件和执行命令,保证各项配置设置的精确无误是顺利完成安装的关键。通过上述的步骤分析和解决方案,非root用户安装MySQL时遇到"unknown variable 'defaults-file=**/my.cnf'"的问题应该可以得到妥善的解决。
1404 0
|
安全 关系型数据库 MySQL
如何在 MySQL 中导入和导出数据库以及重置 root 密码
如何在 MySQL 中导入和导出数据库以及重置 root 密码
335 0
|
Ubuntu 数据安全/隐私保护 Unix