随笔 - 746  文章 - 0  评论 - 39  阅读 - 79万

Mysql:Changes in MySQL 5.7.13 (2016-06-02, General Availability):maximum length of MySQL user names was increased from 16 to 32 characters

Changes in MySQL 5.7.13 (2016-06-02, General Availability)

Account Management Notes

  • In MySQL 5.7.8, the maximum length of MySQL user names was increased from 16 to 32 characters, but some applicable contexts for this increase were overlooked. Additional changes in maximum user name length now have been applied:

    • The size of these mysql system table columns is increased:

      • The definer column of the event and proc tables

      • The grantor column of the procs_priv and tables_priv tables

      In each case, the column previously was defined as CHAR(77), where 77 was chosen to permit a user_name@host_name string containing a user name up to 16 characters, a @ character, and a host name up to 60 characters. Each column now is defined as CHAR(93), reflecting an increase in permitted user name length from 16 to 32 characters.

    • A similar change from CHAR(77) to CHAR(93)applies to the DEFINER column of these INFORMATION_SCHEMA tables: EVENTS, ROUTINES, TRIGGERS, VIEWS. Along with the changes to INFORMATION_SCHEMA tables, output from any corresponding SHOW statements now displays DEFINER values up to 93 characters. Examples of affected statements: SHOW EVENTS, SHOW TRIGGERS, SHOW PROCEDURE STATUS.

    If you upgrade to this MySQL release from an earlier version, you must run mysql_upgrade (and restart the server) to incorporate the changes to the mysql system database. A server from MySQL 5.7.13 or higher for which mysql_upgrade has not been run continues to permit a maximum of 77 characters in the system tables mentioned previously, and an ER_USER_COLUMN_OLD_LENGTH error will occur in those system table contexts where a user_name@host_name value from 78 to 93 characters long is given.

 

  • It is possible to use ALTER TABLE to change the default value of a column col_name, which may change the value of a generated column expression that refers to the column using DEFAULT(col_name). For this reason, ALTER TABLE operations that change the definition of a column now cause a table rebuild if any generated column expression uses DEFAULT(). (Bug #80299, Bug #22680839)

 

It is possible to use ALTER TABLE to change the default value of a column col_name, which may change the value of a generated column expression that refers to the column using DEFAULT(col_name). For this reason, ALTER TABLE operations that change the definition of a column now cause a table rebuild if any generated column expression uses DEFAULT().

posted on   jinzhenshui  阅读(488)  评论(0编辑  收藏  举报
编辑推荐:
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
阅读排行:
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 【杭电多校比赛记录】2025“钉耙编程”中国大学生算法设计春季联赛(1)

点击右上角即可分享
微信分享提示