zoukankan      html  css  js  c++  java
  • win7 / mysql8.0.11winx64 安装的测坑步骤

    虚惊一场,主要问题是 Navicat Premium 连接 mysql8  Client does not support authentication 。

    1.  下载 官网下载压缩包: mysql-8.0.11-winx64.zip

    2. 解压到想要安装的目录:然后在安装包下新建文件my.ini 内容如下:(注意basedir/datadir...data根据自己的安装位置配置)

    [client]

    port=3306
    default-character-set=utf8

    [mysqld]
    #设置mysql的安装目录
    basedir=D:\DevelopInstall\mysql-8.0.11-winx64
    #设置mysql的数据目录
    datadir=D:\DevelopInstall\mysql-8.0.11-winx64\data

    character_set_server=utf8
    #sql_mode=NO_ENGINE_SUBSTITUTION,NO_AUTO_CREATE_USER
    #开启查询缓存
    explicit_defaults_for_timestamp=true

    3. 以管理员身份运行cmd 进入: mysql-8.0.11-winx64/bin目录下: 执行命令 mysqld –-initialize         

        (在data下可以看到.err文件,其中藏有你首次登录root的密码)如:

       A temporary password is generated for root@localhost: Cu/fkq0Mts?t

    4. cmd中  执行mysqld install 安装服务,

    5.cmd中  net start mysql  启动服务  

    6.cmd中  mysql -u root -p 登陆 .err文件中密码粘贴过来用于登陆

                               

    7.登陆成功。

            修改为新密码:ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '123456';  

      

    mysql> use mysql;

    mysql> select user,host from user;
    +------------------+-----------+
    | user | host |
    +------------------+-----------+
    | root | localhost |
    +------------------+-----------+

    mysql> update user set host='%' where user='root';
    Query OK, 1 row affected (0.05 sec)

    ==============至此安装完毕,可以运程访问了。 下边是另外一条岔路。========================

    8*************** 现在我用 Navicat Premium 连接 mysql   提示:Client does not support authentication protocal requested by server;  ...   

    我以为是root没有允许远程ip连接于是准备赋予权限:

    grant all privileges on *.* to root@'%' identified by '123456';

    mysql> grant all privileges on *.* to root@'%' identified by '123456';
    ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that
    corresponds to your MySQL server version for the right syntax to use near 'ident
    ified by '123456'' at line 1

    -------------反复执行反复错误,反复百度查询错误提示,并没有什么用处。最后google代理: 一下子就有结果了: 

    https://stackoverflow.com/questions/50177216/how-to-grant-all-privileges-to-root-user-in-mysql-8-0

    我看了上半段: 大意是grant all privileges on *.* to root@'%' identified by '123456'; 报错啊,mysql8与5.1有差异啊,该怎么赋予权限给root也能被远程ip访问啊。

    最后看到

    mysql> CREATE USER 'java'@'%' IDENTIFIED BY 'root';

    Query OK, 0 rows affected (0.31 sec)

    mysql> GRANT ALL PRIVILEGES ON . TO 'java'@'%' WITH GRANT OPTION;

    Query OK, 0 rows affected (0.16 sec)

    总之,是得创建新用户并且顺便赋予权限。那么我就如上改了'java'@'%' 用户用作为远程连接了。

    9.之后还是连不上

    Navicat Premium 连接 mysql   提示:Client does not support authentication protocal requested by server;  ...   

    最后:

    https://www.cnblogs.com/xiaojian1/p/mysql.html

    alter user 'test'@'%' identified with mysql_native_password by '123';  解决烦恼Navicate可以正常连接了。

    虚惊一场,主要问题是 Navicat Premium 连接 mysql8  Client does not support authentication 。
  • 相关阅读:
    P2154 [SDOI2009]虔诚的墓主人 树状数组
    P2564 [SCOI2009]生日礼物 贪心
    P2053 [SCOI2007]修车 费用流
    P1963 [NOI2009]变换序列 倒叙跑匈牙利算法
    P3705 [SDOI2017]新生舞会 分数规划 费用流
    gym/102091
    P2698 [USACO12MAR]花盆Flowerpot 单调队列
    乌龟棋
    旅行家的预算
    组合数问题
  • 原文地址:https://www.cnblogs.com/xhzd/p/9308954.html
Copyright © 2011-2022 走看看