• 从mysql 5.7 升级到 8.0 的一些注意事项


    最近 mysql 5.7 版本将会终止安全更新,越来越多的朋友考虑升级 mysql 8.0,以下是一些刚开始使用时可能存在差异问题的地方,有一些其实在 mysql 5.7 版本里已经开始使用,这里整理一下方便查阅。

    1、关于端口,该版本 MySQL 常用的端口包括3306、33060、33062,这三个端口分别是第一个常规协议端口3306(包括SSL安全连接也是这个端口),第二个 MySQL x协议端口33060,该端口协议类似 Protocolbuf,第三个是管理端口33062,该端口在常规连接数满了后依然可以使用。日常的话3306端口可以满足大部分需要。如果我们使用客户端连接到不正确的端口,如下所示,则会显示协议不正确的提示。

    Protocol mismatch; server version = 11, client version = 10

    这是因为你使用传统协议客户端连接到33060端口导致的冲突。不使用MySQL x 可以在 my.cnf 中添加如下配置屏蔽:

    1. [mysqld]
    2. mysqlx=OFF

    屏蔽后再执行如下 SQL 将不再有内容输出.

    mysql> show variables like 'mysqlx%';

    查看当前 mysql 启用的插件可使用以下 sql 命令:

    mysql> show plugins;

    2、MySQL默认启用了 caching_sha2_password 的密码验证,它是 sha256_password 的有缓存版本,我们默认添加的用户都使用该插件来创建验证机制,可以通过以下的SQL来查看用户使用了何种插件,

    mysql> select user,host,plugin from mysql.user;

    如何我们想使用传统的验证方式,则需要在创建用户时显式使用 mysql_native_password 来创建。

    mysql> create user user_xxx@'127.0.0.1' identifed with mysql_native_password by 'xxxxxxx';

    需要注意的是,使用 caching_sha2_password 的用户登录时必须使用安全连接,否则会得到如下错误提示

    ERROR 2061 (HY000): Authentication plugin 'caching_sha2_password' reported error: Authentication requires secure connection.

    也可以在 my.cnf 里添加如下配置来默认使用传统方式来创建用户,这样在创建用户时就不用显示使用 mysql_native_password。

    1. [mysqld]
    2. default_authentication_plugin=mysql_native_password

    3、客户端使用安全连接需要如下添加连接选项,虽然默认的连接方式会自动选择安全和非安全连接,但会带来一些不确认的因素。

    使用传统非安全连接

    mysql -h 127.0.0.1 -P 3306 -u user_xxx -p --ssl-mode=disabled

    使用安全连接

    mysql -h 127.0.0.1 -P 3306 -u user_xxx -p --ssl-mode=required

    连接命令中 --ssl-mode 选项还有其它更严格的参数值可以对证书和服务器进行验证,具体可参阅官方文档。

    命连接成功后,可以通过如下SQL查看当前是否是安全连接

    mysql> \s

    在 my.cnf 中添加如下配置,可以强制用户连接 MySQL 时使用安全连接,反之则两种连接都可以使用

    1. [mysqld]
    2. require_secure_transport=ON

    以上是刚开始使用 mysql 8.0 时比较常见到的问题,更多详细信息可以参阅官方的文档

    https://dev.mysql.com/doc/refman/8.0/en/

  • 相关阅读:
    【Python八股文系列】:100个Python的面试/笔试高频考点
    Ae 核心表达式及用法(05):路径相关
    ES使用ik分词器查看分词结果及自定义词汇
    Spring Boot 2.x源码系列【2】启动流程深入解析之SpringApplication类
    1019 数字黑洞
    尚硅谷设计模式学习(十一)外观模式
    华为机试 - 可以组成网络的服务器
    高级词汇和句子(二)-day15
    使用 Selenium 或其他工具模拟浏览器使用及语法代码
    重点来了,具有优质脂肪的坚果居然是减肥的好帮手!
  • 原文地址:https://blog.csdn.net/0210/article/details/133298659