安装了mysql8以后才知道这个版本与之前版本在密码加密等方式上的不一样,导致安装和使用过程中出现了一些问题,现记录如下。
安装平台:Mac
mysql版本:mysql-8.0.12
一、基础使用
1、命令:mysql -u root -p登录mysql
2、在系统偏好设置处开启和关闭mql服务
3、查看mysql数据库的进项
$ ps -e|grep mysql
$ kill -9 +pid号
二、遇到的问题
1、安装好数据库后,使用Navicat连接数据库时提示如下:
问题描述:
提示【Client does not support authentication protocol requested by server; consider upgrading MySQL client】
问题原因:
MySQL8换了加密插件,数据库管理客户端都来不及更新,连接方式缺乏sha2的加密方式
解决方法:执行以下sql
步骤一:ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '你的新密码';
步骤二FLUSH PRIVILEGES;
2、数据库连接不上:ERROR 1045
问题描述:
连接数据库,输入密码后提示:ERROR 1045: Access denied for user: ‘root@localhost’相关报错
问题原因:
解决方法:
1、打开系统偏好设置,如果你的电脑已经安装mysql,会在下面有一个mysql的按钮。点进去关闭mysql服务。
2 打开一个终端,输入一下命令
$ cd /usr/local/mysql/bin
$ sudo su
3、看到终端命令变成这个开头: sh-3.2#
输入以下命令,之后就可以以安全模式进入数据库了。
sh-3.2#./mysqld_safe --skip-grant-tables &
4、现在打开一个新的终端
输入以下命令,不需要密码就进入数据库:
mysql -u -root
5、修改数据库密码
mysql> use mysql;
mysql> update user set authentication_string="" where user="root";
mysql> flush privileges;#这个刷新非常有必要;不让后面执行alter就会出错
mysql> ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'Root@1234';
6、退出mysql,输入以下命令退出安全模式:
/usr/local/mysql/share/mysql.server start
7、验证密码修改成功
$mysql -u root -p
输入修改后的密码,即可进入mysql。
#查到资料说密码需要由大写字母+小写字母+数字+特殊符号组成,这个我没有专门试验过,有兴趣的下伙伴可以试一下
在修改密码的时候,在网上找了一些修改密码的方式,但是有些方式不适用与我的mysql版本,
如:
UPDATE mysql.user SET authentication_string = PASSWORD('MyNewPass')
WHERE User = 'root' AND Host = 'localhost';
FLUSH PRIVILEGES;
3、MySQL远程连接失败(错误码:2003)
问题描述:
2003, "Can't connect to MySQL server on '***'
问题原因:
mysql数据库服务没启动
网友评论