mysql用户名长度的限制

最近遇到了一个小问题,但是耗费了很长时间来定位问题。

原因是,连接mysql的时候,一直报错说连接不上,具体是说Access denied for user 'xxxx_xxxx_xxxx@192.168.1.10' (using password:YES)。刚开始我以为是使用的第三方库的问题,排查后发现不是。后来我以为是我所在的网段或者我的机器出问题了,这也不是。

最后,发现这个报错信息里面的username不对,是被截断了的。上网一搜,是mysql的用户名太长了,导致连接不上。

在mysql里面,它是这样规定的:

MySQL user names can be up to 32 characters long Operating system user names may be of a different maximum length. For example, Unix user names typically are limited to eight characters.