実行時設定
php.ini
の設定により動作が変化します。
名前 | デフォルト | 変更可能 | 変更履歴 |
---|---|---|---|
mysqli.allow_local_infile | "0" | PHP_INI_SYSTEM | PHP 5.2.4 以降で使用可能です。PHP 7.2.16, 7.3.3 より前のバージョンでは デフォルト値は "1" でした。 |
mysqli.local_infile_directory | PHP_INI_SYSTEM | ||
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 | |
mysqli.default_port | "3306" | PHP_INI_ALL | |
mysqli.default_socket | NULL | PHP_INI_ALL | |
mysqli.default_host | NULL | PHP_INI_ALL | |
mysqli.default_user | NULL | PHP_INI_ALL | |
mysqli.default_pw | NULL | PHP_INI_ALL | |
mysqli.reconnect | "0" | PHP_INI_SYSTEM | |
mysqli.rollback_on_cached_plink | TRUE | PHP_INI_SYSTEM | PHP 5.6.0 以降で使用可能です。 |
これらの PHP_INI_* 定数の詳細と定義については、 設定の変更 を参照してください。
以下に設定ディレクティブに関する 簡単な説明を示します。
mysqli.allow_local_infile
intPHP 側から、LOAD DATA 文によるローカルファイルへのアクセスを許可する。
mysqli.local_infile_directory
stringLOCAL DATA 文によるファイルのロードを、 ここで指定したディレクトリに制限する機能を有効にします。
mysqli.allow_persistent
intmysqli_connect() による持続的接続の作成機能を有効にします。
mysqli.max_persistent
int作成できる持続的接続の最大数。0 を設定すると無制限となります。
mysqli.max_links
intプロセス毎の MySQL 接続の最大数。
mysqli.default_port
int他のポートが指定されない場合、データベースサーバー接続時に使用される デフォルトの TCP ポート番号。デフォルトが指定されない場合は、 環境変数
MYSQL_TCP_PORT
・/etc/services
のmysql-tcp
エントリ・コンパイル時のMYSQL_PORT
定数の順番でポートが取得されます。 Win32 では、MYSQL_PORT
定数のみが使用されます。mysqli.default_socket
string他にソケット名が指定されない場合、ローカルな データベースサーバーに接続する時のデフォルトのソケット名。
mysqli.default_host
string他のサーバー名が指定されない場合に、データベースサーバーへの接続時に 使用されるデフォルトのサーバー名。
mysqli.default_user
string他のユーザー名が指定されない場合に、データベースサーバーへの接続時に 使用されるデフォルトのユーザー名。
mysqli.default_password
string他のパスワードが指定されない場合に、データベースサーバーへの接続時に 使用されるデフォルトのパスワード。
mysqli.reconnect
int接続が失われたときに自動的に再接続するかどうか。
注意: mysqlnd ドライバは、この
php.ini
設定項目を無視します。mysqli.rollback_on_cached_plink
boolこのオプションを有効にすると、接続を閉じて時持続的接続プールに接続を戻す前に、 この接続で保留中だったあらゆるトランザクションがロールバックされます。 このオプションが無効だった場合、接続が再利用されるとき、または実際に閉じられるときだけ、 保留中のトランザクションがロールバックされます。
MYSQL_OPT_READ_TIMEOUT
を、
API コールや実行時の設定で指定することはできません。
もしそんなことができてしまうと、libmysqlclient
とストリームで MYSQL_OPT_READ_TIMEOUT
の値の解釈する方法が違ってしまう可能性があることに注意しましょう。