1

我在 ejabberd(XMPP 服务器)中有一个基于THIS LINK的身份验证脚本

我稍微修改了脚本,因此它没有设置变量,而是返回真或假。

我正在使用 Ubuntu、MySQL、ejabberd 和 Python。

我可以验证数据库中已经存在的所有记录。但是,当我添加或删除记录时(我通过 phpMyAdmin 执行此操作),脚本似乎不知道数据库已更改(我在 phpMyAdmin 中删除了一个用户,它仍然对用户进行身份验证)。脚本识别新记录的唯一时间是我重新启动或强制重新加载 ejabberd 服务器时。我已经被告知这不是 mySQL 缓存问题。我确保关闭了 ejabberd 的外部身份验证缓存。

这就是我现在能想到的。如果我能想到的话,我会添加更多信息。任何帮助表示赞赏。我不知道发生了什么。

另外:我打开了 MySQL 日志,以及那里的所有查询,所以没有跳过查询。

4

1 回答 1

1

我设法通过将数据库引擎改回 MISAM 而不是 INNODB 来解决这个问题。但我想知道这是否可以为 INNODB 修复。

编辑:要在 innodb 中修复它,请将 autocommit 设置为 true

于 2010-09-19T19:44:39.723 回答