运行时配置

这些函数的行为受 php.ini 中的设置影响。

MySQLi配置选项
名字 默认 可修改范围 更新日志
mysqli.allow_local_infile "1" PHP_INI_SYSTEM 自PHP 5.2.4起可用。
mysqli.allow_persistent "1" PHP_INI_SYSTEM 自PHP 5.3.0起可用。
mysqli.max_persistent "-1" PHP_INI_SYSTEM 自PHP 5.3.0起可用。
mysqli.max_links "-1" PHP_INI_SYSTEM 自PHP 5.0.0起可用。
mysqli.default_port "3306" PHP_INI_ALL 自PHP 5.0.0起可用。
mysqli.default_socket NULL PHP_INI_ALL 自PHP 5.0.0起可用。
mysqli.default_host NULL PHP_INI_ALL 自PHP 5.0.0起可用。
mysqli.default_user NULL PHP_INI_ALL 自PHP 5.0.0起可用。
mysqli.default_pw NULL PHP_INI_ALL 自PHP 5.0.0起可用。
mysqli.reconnect "0" PHP_INI_SYSTEM 自PHP 4.3.5起可用。
mysqli.rollback_on_cached_plink TRUE PHP_INI_SYSTEM 自 PHP 5.6.0 起可用。
mysqli.cache_size "2000" PHP_INI_SYSTEM 自PHP 5.3.0起可用。

关于前面出现的PHP_INI_*系列常量的详细定义,请参阅配置的修改一章。

这是配置指令的简短说明。

mysqli.allow_local_infile integer

允许Mysql的Load Data语句访问PHP角度看的本地文件。

mysqli.allow_persistent integer

开启使用mysqli_connect()函数创建持久化连接的能力。

mysqli.max_persistent integer

可以创建的持久化连接的最大数量,设置为0表明不限制。

每个进程中Mysql连接的最大数量。

mysqli.default_port integer

当没有指定其他端口号时使用的默认的用于连接数据库服务器的TCP端口号。如果没有设置默认值, 端口号将会按照顺序从环境变量MYSQL_TCP_PORT/etc/services 文件中的mysql-tcp条目或编译期的MYSQL_PORT常量等位置获取。 Win32仅使用MYSQL_PORT常量。

mysqli.default_socket string

当连接到本地数据库服务器时如果没有指定其他socket名称,使用的默认socket名称。

mysqli.default_host string

当连接到数据库服务器时, 如果没有指定其他主机地址,使用的默认服务器主机。不要在 安全模式下使用。

mysqli.default_user string

当连接到数据库服务器时,如果没有指定其他用户名,使用的默认用户名。不要在 安全模式下使用。

mysqli.default_pw string

当连接到数据库服务器时,如果灭有指定其他密码,使用的默认密码。不要在 安全模式下使用。

mysqli.reconnect integer

连接丢失时是否自动重新连接。

Used for rollbacking connections put back into the persistent connection pool.

mysqli.cache_size integer

仅可用于 mysqlnd

用户不能通过API调用或运行时配置来设置MYSQL_OPT_READ_TIMEOUT。 注意,如果可能这样做那么libmysql和流对MYSQL_OPT_READ_TIMEOUT 的值将会有不同的解释。

User Contributed Notes

per at jessen dot ch 31-Jan-2016 09:10
Wrt mysqli_reconnect, it doesn't actually work in the default setup. Please refer to https://bugs.php.net/bug.php?id=52561 which explains why.