当前位置: 首页 >数据库 > MySQL 5.7 安装完成后,首次登陆的几个问题

MySQL 5.7 安装完成后,首次登陆的几个问题

Server:CentOS 7.0

MySQL : 5.7.20 MySQL Community Server (GPL)

 

1.首次登陆后修改密码:

根据安装时的选择不同,有mysqld_safe用mysqld_safe,没有就用mysqld。正常安装都应该在/usr/sbin目录下

a)启动mysql

mysqld_safe --user=mysql --skip-grant-tables --skip-networking &

b)无密码进入msyql

mysql -u root mysql

c) 修改密码

UPDATE user SET Password=PASSWORD('newpassword') where USER='root';   

会发现这个错误:ERROR 1054 (42S22): Unknown column 'Password' in 'field list'

最新版的mysql中,该命令应该改为:

UPDATE user SET authentication_string=PASSWORD('newpassword') where USER='root';  

d) 刷新退出

flush privileges; 

exit;

 

 2.每次登陆提示需要修改密码:

退出后通过密码登录发现无论做什么操作都会提示

ERROR 1820 (HY000): You must reset your password using ALTER USER statement before executing this statement.

于是,只能再次设置

UPDATE user SET PASSWORD=PASSWORD('newpassword')

但是退出后,再次进入,仍然会有这个提示。非常坑........

解决办法:

UPDATE user SET authentication_string=PASSWORD('newpassword') where USER='root' and host='root' or host='localhost';

貌似是把所有的空密码都设置为有效的密码才行,mysql 5.6还没有这种限制。5.7上现在有了

flush privileges; exit之后再登录就不会提示修改密码了。

 

3. 无法启动报错

查看mysqld.log,发现如下错误记录

====================================

InnoDB: Unable to lock ./ibdata1, error: 11 

InnoDB: Check that you do not already have another mysqld process

 ===================================

root cause:启动文件,被另一个进程占用。其实大多数情况是mysqld重启的时候,之前的资源没有完全释放。

solution: 

1)ps aux |grep mysq*  #找到锁住资源的进程

2)kill -s 9 进程号  # 杀死进程

3)重启mysqld即可

 

4. 如果没有mysqld_safe:

通常,mysql安装成功后会给root生成一个默认的密码,通过以下命令查看。

sudo grep 'temporary password' /var/log/mysqld.log

 

作者:他山之小石头
来源链接:https://www.cnblogs.com/shizouwei/p/7976172.html

版权声明:
1、JavaClub(https://www.javaclub.cn)以学习交流为目的,由作者投稿、网友推荐和小编整理收藏优秀的IT技术及相关内容,包括但不限于文字、图片、音频、视频、软件、程序等,其均来自互联网,本站不享有版权,版权归原作者所有。

2、本站提供的内容仅用于个人学习、研究或欣赏,以及其他非商业性或非盈利性用途,但同时应遵守著作权法及其他相关法律的规定,不得侵犯相关权利人及本网站的合法权利。
3、本网站内容原作者如不愿意在本网站刊登内容,请及时通知本站(javaclubcn@163.com),我们将第一时间核实后及时予以删除。





本文链接:https://www.javaclub.cn/database/117845.html

分享给朋友:

“MySQL 5.7 安装完成后,首次登陆的几个问题” 的相关文章