如何将 PHP 连接到 MySQL 作为交互式连接,它将使用 interactive_timeout 而不是 wait_timeout?
How to connect PHP to MySQL as an interactive connection is it will use interactive_timeout instead of wait_timeout?
所以,MySQL 有 wait_timeout
和 interactive_timeout
。默认情况下,我们使用 MySQL 个连接 wait_timeout
。我想使用 interactive_timeout
与用户建立联系,这样超时就不会干扰用户交互。如何创建交互式连接?
我当前的代码是这样的:
$db_conn = mysqli_connect(HOSTNAME, DBUSERNAME, DBPASSWORD,DATABASE);
https://dev.mysql.com/doc/refman/8.0/en/server-system-variables.html#sysvar_interactive_timeout
"The number of seconds the server waits for activity on an interactive connection before closing it. An interactive client is defined as a client that uses the CLIENT_INTERACTIVE option to mysql_real_connect(). See also wait_timeout."
并且,来自 PHP:
即使您阅读了文档,也不是很清楚 interactive_timeout
的含义。
表示如果交互式客户端的连接空闲时间过长,连接将自动关闭。这不会干扰任何用户交互,因为如果它们是 运行 查询,根据定义连接不是空闲的。
wait_timeout
和 interactive_timeout
的默认值都是 28800 秒(8 小时)。因此,客户端除了在由于不活动而超时之前保持打开连接 8 小时外,什么都不做。这不太可能影响任何 PHP 请求,该请求在请求完成后立即关闭。
文档中也没有提到唯一使用 interactive_timeout
的现有客户端是 mysql command-line client。
PHP、Java、ODBC、Python、Perl 等语言的所有连接器都使用常规 wait_timeout
。我还没有看到任何连接器可以选择使用 interactive_timeout
。编程连接器不被视为交互式,即使它们连接的应用程序接受用户输入。
即使是新的 MySQL Shell 客户端也不启用 interactive_timeout
。它依赖于其他客户端使用的传统 wait_timeout
。
所以,MySQL 有 wait_timeout
和 interactive_timeout
。默认情况下,我们使用 MySQL 个连接 wait_timeout
。我想使用 interactive_timeout
与用户建立联系,这样超时就不会干扰用户交互。如何创建交互式连接?
我当前的代码是这样的:
$db_conn = mysqli_connect(HOSTNAME, DBUSERNAME, DBPASSWORD,DATABASE);
https://dev.mysql.com/doc/refman/8.0/en/server-system-variables.html#sysvar_interactive_timeout
"The number of seconds the server waits for activity on an interactive connection before closing it. An interactive client is defined as a client that uses the CLIENT_INTERACTIVE option to mysql_real_connect(). See also wait_timeout."
并且,来自 PHP:
即使您阅读了文档,也不是很清楚 interactive_timeout
的含义。
表示如果交互式客户端的连接空闲时间过长,连接将自动关闭。这不会干扰任何用户交互,因为如果它们是 运行 查询,根据定义连接不是空闲的。
wait_timeout
和 interactive_timeout
的默认值都是 28800 秒(8 小时)。因此,客户端除了在由于不活动而超时之前保持打开连接 8 小时外,什么都不做。这不太可能影响任何 PHP 请求,该请求在请求完成后立即关闭。
文档中也没有提到唯一使用 interactive_timeout
的现有客户端是 mysql command-line client。
PHP、Java、ODBC、Python、Perl 等语言的所有连接器都使用常规 wait_timeout
。我还没有看到任何连接器可以选择使用 interactive_timeout
。编程连接器不被视为交互式,即使它们连接的应用程序接受用户输入。
即使是新的 MySQL Shell 客户端也不启用 interactive_timeout
。它依赖于其他客户端使用的传统 wait_timeout
。