美文网首页
mac-使用mysql8时遇到的问题

mac-使用mysql8时遇到的问题

作者: 时光不说话 | 来源:发表于2018-11-27 13:56 被阅读0次

    安装了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数据库服务没启动
    

    相关文章

      网友评论

          本文标题:mac-使用mysql8时遇到的问题

          本文链接:https://www.haomeiwen.com/subject/gsjgqqtx.html