Ubuntu下MySQL5.7初始密码修改(附:Windows下找出初始密码)

安装

$sudo apt-get update
$sudo apt-get install -y mysql-server mysql-client

可以看到此过程会成功地安装MySQL5.7(2018年8月),当然可以通过命令查看是否运行与端口号

卸载

$sudo apt-get autoremove --purge mysql-server-5.7
$sudo apt-get remove mysql-server
$sudo apt-get autoremove mysql-server
$sudo apt-get remove mysql-common
$dpkg -l |grep ^rc|awk '{print $2}' |sudo xargs dpkg -P

登录

可以发现登录被拒绝

但实际上还是有两种登录办法:

方法一:

①$sudo vim /etc/mysql/debian.cnf         #获得用户名和密码后!q退出

②$mysql -u USERNAME -p 

③将复制得到的密码直接粘贴

方法二:

①$sudo mysql -u root -p 

扫描二维码关注公众号,回复: 2571703 查看本文章

②直接回车(因为密码为空)

密码修改

5.7版本中password字段被删(取而代之的是authentication_string字段),user表也已移动,所以老版本修改密码的方法会各种报错,可采用如下修正过的方法

方法一:

①使用上述登录教程的两种方法中任一种登录mysql

②mysql>update mysql.user set authentication_string=password('新密码放到这') where user='root'and Host = 'localhost';

③mysql>update user set plugin="mysql_native_password";

④mysql>flush privileges;

⑤mysql>quit

⑥$sudo service mysql restart

上述操作后,若还是不能使用新密码登录,建议尝试方法二

方法二:

步骤一:打开终端

$sudo /etc/init.d/mysql stop

$sudo mkdir -p /var/run/mysqld

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

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

步骤二:打开新终端

$mysql -u root                                            #免密码登录

mysql>use mysql;

mysql>update user set authentication_string=PASSWORD("你的密码放到这") where User='root';

mysql>update user set plugin="mysql_native_password";

mysql>flush privileges;

mysql>quit;

$sudo /etc/init.d/mysql stop

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

步骤三:再打开新终端

$mysql -u root -p

应该可以成功了,有什么问题重启一下系统应该也就好了

参考:https://www.cnblogs.com/roadofstudy/p/7446690.html

附:Windows下找出初始密码(安装包为mysql-8.0.11-winx64)

①在mysql安装目录生成的data文件下,查找xxx.err的文件

②用记事本打开xxx.err文件

③找到“[Note]A temprory password is generated for root@localhost:****”,星号部分即为初始密码

猜你喜欢

转载自blog.csdn.net/weixin_42353109/article/details/81431051