为提高效率,提问时请提供以下信息,问题描述清晰可优先响应。
【DM版本】:03134283914 20220927-17056620000
【操作系统】:麒麟v10
【CPU】:
【问题描述】*:
在我的业务系统页面上,进去某一页面调用了多个接口,会有一些接口提示我达梦数据库连接 帐号密码失败。
为了方便调试,我单独把连接数据库代码抽离出来进行调试验证。代码如下:
$host = '127.0.0.1';
$database = 'test_ams';
$username = 'test_ams';
$password = 'test_ams2024';
while (true) {
connect($dsn, $database, $username, $password);
}
function connect($dsn, $database, $username, $password)
{
try {
$pdo = new \PDO($dsn, $username, $password);
// 指定当前会话
$pdo->exec("ALTER SESSION SET CURRENT_SCHEMA ={$database}");
$queryBuilder = $pdo->query("SELECT 1;");
var_dump(!empty($queryBuilder->fetchAll()));
$pdo = null;
} catch (Throwable $e) {
echo "\n database error: " . $e->getTraceAsString();
exit;
}
}
通过系统执行 脚本文件之后,一开始可以正常输出:
true(表示连接数据库成功并能执行 select 1)
连多几次就出现账号密码错误了,不是每次连都能出现账号密码错误。
出现用户密码错误问题后,去数据库查看下用户是不是已经锁了?