千家信息网

MySQL 8.0给开发方向带来的困扰有哪些

发表于:2026-11-03 作者:千家信息网编辑
千家信息网最后更新 2026年11月03日,这篇文章主要讲解了"MySQL 8.0给开发方向带来的困扰有哪些",文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习"MySQL 8.0给开发方向带来的困扰有
千家信息网最后更新 2026年11月03日MySQL 8.0给开发方向带来的困扰有哪些

这篇文章主要讲解了"MySQL 8.0给开发方向带来的困扰有哪些",文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习"MySQL 8.0给开发方向带来的困扰有哪些"吧!

1:密码策略插件

MySQL 8.0开始将caching_sha2_password作为默认的身份验证插件。如果升级了数据库至8.0版本,对应用程序jdbc驱动兼容性不友好,让应用程序跑起来最快的方法需要将默认的caching_sha2_password改为之前的mysql_native_password。

比如:

ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'password';

也可以在参数中进行设置,修改my.cnf,重启服务即可生效:

default_authentication_plugin=mysql_native_password

2.JDBC驱动变更

如果从MySQL5.5升级到5.7,那么驱动的事情不用担心,但是到了8.0,JDBC的驱动就需要格外注意了,否则很可能有如下的错误。

Loading class `com.mysql.jdbc.Driver'. This is deprecated. The new driver class is `com.mysql.cj.jdbc.Driver'. The driver is automatically registered via the SPI and manual loading of the driver class is generally unnecessary.

对于JDBC的url会有如下的变化:

String Url="jdbc:mysql://211.159.xxx:33071/maxwell_test?useUnicode=true&characterEncoding=utf-8";

需要调整为如下的格式:

String Url="jdbc:mysql://211.159.xxx:33071/maxwell_test?useUnicode=true&characterEncoding=utf-8&useSSL=false&&serverTimezone=GMT";

相应的加载驱动程序则需要

Class.forName("com.mysql.jdbc.Driver");

修改为:

Class.forName("com.mysql.cj.jdbc.Driver");

3.整数类型的长度警告

比如下面的表结构,通过workbench等工具导出来格式都差不多,但是在8.0里面执行的时候会报警。

CREATE TABLE `data_payment_history_test` (   `id` bigint(20) unsigned NOT NULL AUTO_INCREMENT COMMENT '自增ID',   `pid` int(11) unsigned NOT NULL DEFAULT '0' COMMENT '用户ID', 。。。   `cdate` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',   。。。   PRIMARY KEY (`id`),   KEY `idx_credit_overdraw_history__pid` (`pid`) ) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8 COMMENT='支付记录';

这里主要涉及两个警告,一个是整数类型的长度警告,另外一个是字符集警告,

展开来说,整数类型的长度警告信息为:Integer display width is deprecated and will be removed in a future,意思是int(11)这种写法已经过时了,应该直接写int,bigint

而字符集配置,在MySQL8.0里面默认是utf8mb4,如果我们手工写了utf8类型,会提示:'utf8' is currently an alias for the character set UTF8MB3, but will be an alias for UTF8MB4 in a future release. Please consider using UTF8MB4 in order to be unambiguous.

当然如果你设置的全局字符集是utf8,则无警告的情况字符集仍然为utf8.

4.windows安装版

windows安装版本一直提供的是32位的,这个是个历史遗留问题,如果有些同学为了方便,直接点点点,可能把线上环境部署成32位就尴尬了,oracle的windows版本路子相反,已经很早就直接舍弃了32位的版本。

感谢各位的阅读,以上就是"MySQL 8.0给开发方向带来的困扰有哪些"的内容了,经过本文的学习后,相信大家对MySQL 8.0给开发方向带来的困扰有哪些这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是,小编将为大家推送更多相关知识点的文章,欢迎关注!

驱动 方向 开发 字符 字符集 版本 类型 整数 程序 长度 学习 内容 应用程序 情况 插件 格式 问题 升级 应用 验证 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 天津市摩尔互联网科技 亿人帮互联网科技有限公司 河南云网互联网络科技有限公司 互联网科技工作委员会 科技赋能下的互联网金融 疫情对互联网科技公司影响 互联网品科技 互联网与科技金融数据 丰台科技园 互联网 北京华百购互联网科技有限公司 互联网科技有哪些公司 阿里互联网科技企业 济南有互联网科技公司吗 皮皮虾互联网科技有限公司 宇信科技在杭州互联网排第几 上海互联网科技公司ppt 湖北辰鑫科技互联网 数字互联网科技有限公司 互联网科技博主张洲 华人运通互联网科技公司 湖北九亚互联网络科技有限公司 南京欣网互联网络科技有限公司 重生之互联网科技帝国 腾讯科技 互联网女皇 猫创互联网科技 青海省互联网新科技 湖北码尼互联网科技有限公司电话 互联网时代科技型公司的机会 互联网科技手机排行榜 互联网科技大会大佬
0