Slackware 14 上的 MariaDB 5.5 需要更改为新的密码格式

Slackware 14 上的 MariaDB 5.5 需要更改为新的密码格式

奇怪的是,这在一段时间内运行良好,但我的计算机最近重新启动了,现在我的 php 应用程序无法运行:

mysqlnd cannot connect to MySQL 4.1+ using the old insecure authentication. Please use an administration tool to reset your password with the command SET PASSWORD = PASSWORD('your_existing_password'). This will store a new, and more secure, hash value in mysql.user. If this user is used in other scripts executed by PHP 5.2 or earlier you might need to remove the old-passwords flag from your my.cnf file [2000]

我看到解决方案是在 mysql 配置中关闭 old_passwords...除了它没有在我的 my.cfg 中打开(该选项根本不存在并且添加它没有任何改变)也不会在控制台中改变:。

> SET SESSION old_passwords=FALSE; 
ERROR 1231 (42000): Variable 'old_passwords' can't be set to the value of '0'

我尝试查看密码哈希值:

> select password('test'); 
+------------------+ 
| password('test') | 
+------------------+ 
| 378b243e220ca493 | 
+------------------+  

而且它很短。我在网上找不到任何关于它为什么会这样的东西,mariadb 文档说它应该是 41 个字符长,但事实并非如此,而且它破坏了所有 php 5.4 的东西。

我除了说算了,重新安装一个旧的 php 之类的东西之外,没有别的办法了。还有人见过这种情况吗?理想情况下,我希望密码使用新的哈希格式,这样 php 就可以正常工作了。

相关内容