Php PDO连接截断的用户名

Php PDO连接截断的用户名,php,mysql,pdo,Php,Mysql,Pdo,我的任务是学习和更新从使用mysqli到PDO的许多php脚本。 不知什么原因,当我尝试连接mysql数据库时,它正在截断用户名。 这是我的php: try{ $user = "this_is_a_really_really_really_long_user_name"; echo $user."\n"; $pass = "StackOverflowExample"; $DBH = new PDO("mysql:host=localhost;dbname=exam


我的任务是学习和更新从使用mysqli到PDO的许多php脚本。
不知什么原因,当我尝试连接mysql数据库时,它正在截断用户名。
这是我的php:

try{
    $user = "this_is_a_really_really_really_long_user_name";
    echo $user."\n";
    $pass = "StackOverflowExample";
    $DBH = new PDO("mysql:host=localhost;dbname=example", $user, $pass);
}
catch(PDOException $err){echo $err->getMessage(); $error = true;}
回波返回:

this_is_a_really_really_really_long_user_name
然后我的catch语句输出:

SQLSTATE[28000] [1045] Access denied for user 'this_is_a_really'@'localhost' (using password: YES)
如您所见,用户名正在被截断。
任何帮助都将不胜感激。

MySQL用户名最长可达16个字符。操作系统用户名可能具有不同的最大长度,因为它们与MySQL用户名完全无关。例如,Unix用户名通常限制为八个字符

MySQL用户名最长可16个字符。操作系统用户名可能具有不同的最大长度,因为它们与MySQL用户名完全无关。例如,Unix用户名通常被限制为八个字符

Hmm,您确定MySQL真的支持这样长的用户名吗?它在命令行客户端工作吗?如果它工作,我建议在bugs.php.net上提交一个bug:)它确实有效,因为我在mysqli_connect语句中使用了相同的用户名:$con=mysqli_connect(“localhost”,“example”,“StackOverflowExample”,“this_是真的真的长的用户名”);奇怪的在maybe上提交一个bug?嗯,你确定MySQL真的支持这么长的用户名吗?它在命令行客户端工作吗?如果工作,我建议在bugs.php.net上提交一个bug:)它工作,因为我在mysqli_connect语句中使用了相同的用户名:$con=mysqli_connect(“localhost”,“example”,“stackoverflowerexample”,“这真的很奇怪。可能有一个bug?你能提供“unix”用户名限制的源代码吗?刚刚在FreeBSD中添加了一个
abcdefghijklmnop
。你能提供“unix”用户名限制的源代码吗?刚刚在FreeBSD中添加了一个
abcdefghijklmnop