php - num_rows - Establecer el tiempo de espera de conexión de la base de datos en CodeIgniter 3
num_rows codeigniter (1)
Estamos trabajando con 2 bases de datos, nuestra base de datos local y una base de datos externa. Pero ahora nuestra base de datos externa está inactiva (todavía estamos en desarrollo, así que es bueno que nos encontremos con este problema) y ahora intenta conectarse a la base de datos externa durante 30 segundos. ¿Cómo puedo cambiar el tiempo de espera de conexión de la base de datos a algo así como 1 - 2 segundos? Estoy usando Codeigniter con los controladores PDO en mis bases de datos. ¿Hay alguien con una solución limpia para este problema?
No es una característica documentada, pero puede hacerlo desde el archivo de configuración de la base de datos ( application/config/database.php
) agregando options
configuración, por ejemplo:
$db[''default''][''options''] = array(PDO::ATTR_TIMEOUT => 5);
Las otras configuraciones que usan el mismo mecanismo interno (por ejemplo, PDO::MYSQL_ATTR_INIT_COMMAND
establecido con $db[''default''][''stricton'']
y PDO::MYSQL_ATTR_COMPRESS
configuradas con $db[''default''][''compress'']
) son no afectado por esto
Si desea profundizar o verificar qué opciones están configuradas, puede registrar $this->options
en la función db_connect
en system/database/drivers/pdo/pdo_driver.php
y también verificar database/drivers/pdo/subdrivers/pdo_mysql_driver.php
.