WHCSRL 技术网

Ubuntu 20.04 + mysql 8.0.27 用户名和密码修改

        装完 ubuntu 后,使用命令安装 mysql 时一般默认安装的都是最新版本也即 mysql 8.0.27 ;针对 mysql 8.0.27 用户名和密码修改,我反复操作,在网上也搜集了大量的资料,最终都是无功而返,挣扎了一下午,最终解决了问题;

        之所以浪费一下午时间,主要是因为我没有弄清 mysql 版本和修改语法的关系,然后在网上一通搜索、胡乱尝试,最终也没能解决问题;

        二者关系:安装的 mysql 版本不同,在修改用户名和密码时使用的语法语句也会有所差别;所以在使用 ubuntu 命令安装好 mysql 后记得查看其版本;所以说解决问题还是要抓住问题的本质;

参考文章:mysql出现ERROR1698(28000):Access denied for user root@localhost错误解决方法 - 丹华抱一鷇音子 - 博客园

MySQL 彻底卸载:CSDN

下面针对 Ubuntu 20.04 + mysql 8.0.27 用户名和密码修改 整理出了一套教程:

1、安装服务器端;

sudo apt-get install mysql-server

2、安装客户端;

sudo apt-get install mysql-client

3、安装 mysql 相关库;

sudo apt-get install libmysqlclient-dev

4、安装成功后查看 MySQL 版本;

mysql -V;    # 注意 V 是大写

5、修改 mysqld.cnf 配置文件 

sudo vim /etc/mysql/mysql.conf.d/mysqld.cnf

 (1)在 [mysqld] 最后一行加入: # skip-grant-tables    <-- add # here 

 (2)然后点击 ESC ,输入 ‘ :wq ’ 进行保存和退出;如下图所示;


注:如果不修改 mysqld.cnf 配置文件,修改完 MySQL 的用户名和密码后,在进入 MySQL 时可能会有如下错误,即语法错误拒绝被访问:

6、查看默认安装的 MySQL 的用户名和密码;

sudo cat /etc/mysql/debian.cnf

6、登录 MySQL ;

mysql -u debian-sys-maint -p    # 换行后输入上述查到的密码

 7、进入 MySQL ;

use mysql;

8、刷新权限;

flush privileges;

9、修改用户名和密码;

ALTER USER 'root'@'localhost' IDENTIFIED WITH caching_sha2_password BY '123456';

10、刷新权限;

flush privileges;

11、退出;

quit;

12、重启 MySQL ;

service mysql restart

13、进入 MySQL ;

mysql -u root -p    # 回车后输入自己修改后的密码即可

 至此,MySQL 用户名和密码修改成功;

推荐阅读