Foros del Web » Programando para Internet » PHP »

connec a base de datos (mysqli) cuando hago una query

Estas en el tema de connec a base de datos (mysqli) cuando hago una query en el foro de PHP en Foros del Web. Hola a todos, Estoy teniendo un problema, me ha llamado el técnico de mi Hosting donde tengo alojada una tienda online, y me ha dicho ...
  #1 (permalink)  
Antiguo 15/05/2014, 15:16
 
Fecha de Ingreso: marzo-2009
Mensajes: 480
Antigüedad: 15 años
Puntos: 1
Exclamación connec a base de datos (mysqli) cuando hago una query

Hola a todos,

Estoy teniendo un problema, me ha llamado el técnico de mi Hosting donde tengo alojada una tienda online, y me ha dicho que el fichero mysql.log se están mandado 300-400 peticiones por segundo.

Por lo que me comenta es que cada vez que hago un SELECT, UPDATE u otra consulta, me estoy conectado a la base de datos.

Realmente en el PHP tengo creada una Instancia donde se conecta solo una vez, realmente no se lo que es.

Os a pasado alguna vez a vosotros?

Ejemplo del codigo connec php

Class BD
Código PHP:
    public function __construct($server$user$password$database$connect true)
    {
        
$this->server $server;
        
$this->user $user;
        
$this->password $password;
        
$this->database $database;
        
$this->is_cache_enabled = (defined('_CACHE_ENABLED_')) ? _CACHE_ENABLED_ false;

        if (!
defined('_DEBUG_SQL_'))
            
define('_DEBUG_SQL_'false);

        if (
$connect)
            
$this->connect();
    }
    
    public static function 
getInstance($id_server)
    {
        
$id_server=($id_server)?$id_server:_BD_DEFAULT_;
        
self::$_servers=unserialize(_SERVERS_);
        
$class 'DbMySQLi';
        
self::$instance[$id_server] = new $class(
            
self::$_servers[$id_server]['server'],
            
self::$_servers[$id_server]['user'],
            
self::$_servers[$id_server]['password'],
            
self::$_servers[$id_server]['database']
        );

        if(!
self::$_servers[$id_server]) 
            die(
Core::WarningError(_WARNING_CONNECT_INSTANCE_));
                    
        return 
self::$instance[$id_server];
    } 
Class MySqli
Código PHP:
    public function    connect()
    {
        
        if (
strpos($this->server':') !== false)
        {
            list(
$server$port) = explode(':'$this->server);
            
$this->link = @new mysqli($server$this->user$this->password$this->database$port);
        }
        else
            
$this->link = @new mysqli($this->server$this->user$this->password$this->database);
        
        if (
mysqli_connect_error())
            die(
Core::WarningError(_WARNING_CONNECT_DB_));

        
// UTF-8 support
        
if (!$this->link->query('SET NAMES \'utf8\''))
            die(
Core::WarningError(_WARNING_DB_UTF8_));

        return 
$this->link;
    } 
Espero que me ayudéis,
Muchas gracias
  #2 (permalink)  
Antiguo 15/05/2014, 15:44
 
Fecha de Ingreso: marzo-2009
Mensajes: 480
Antigüedad: 15 años
Puntos: 1
Respuesta: connec a base de datos (mysqli) cuando hago una query

Publico el mysql.log

Id Command
5402872 Connect bd_example@localhost on
5402872 Init DB bd_example
5402872 Init DB bd_example
5402873 Connect bd_example@localhost on
5402873 Init DB bd_example
5402873 Init DB bd_example
5402874 Connect bd_example@localhost on
5402874 Init DB bd_example
5402874 Init DB bd_example
5402875 Connect bd_example@localhost on
5402875 Init DB bd_example
5402875 Init DB bd_example
5402876 Connect bd_example@localhost on
5402876 Init DB bd_example
5402876 Init DB bd_example
5402877 Connect bd_example@localhost on
5402877 Init DB bd_example
5402877 Init DB bd_example
5402878 Connect bd_example@localhost on
5402878 Init DB bd_example
5402878 Init DB bd_example
5402879 Connect bd_example@localhost on
5402879 Init DB bd_example
5402879 Init DB bd_example
5402880 Connect bd_example@localhost on
5402880 Init DB bd_example
5402880 Init DB bd_example

Última edición por davicito; 16/05/2014 a las 02:11
  #3 (permalink)  
Antiguo 16/05/2014, 02:11
 
Fecha de Ingreso: marzo-2009
Mensajes: 480
Antigüedad: 15 años
Puntos: 1
Respuesta: connec a base de datos (mysqli) cuando hago una query

Publico el mysql.log

Id Command
5402872 Connect bd_example@localhost on
5402872 Init DB bd_example
5402872 Init DB bd_example
5402873 Connect bd_example@localhost on
5402873 Init DB bd_example
5402873 Init DB bd_example
5402874 Connect bd_example@localhost on
5402874 Init DB bd_example
5402874 Init DB bd_example
5402875 Connect bd_example@localhost on
5402875 Init DB bd_example
5402875 Init DB bd_example
5402876 Connect bd_example@localhost on
5402876 Init DB bd_example
5402876 Init DB bd_example
5402877 Connect bd_example@localhost on
5402877 Init DB bd_example
5402877 Init DB bd_example
5402878 Connect bd_example@localhost on
5402878 Init DB bd_example
5402878 Init DB bd_example
5402879 Connect bd_example@localhost on
5402879 Init DB bd_example
5402879 Init DB bd_example
5402880 Connect bd_example@localhost on
5402880 Init DB bd_example
5402880 Init DB bd_example

Etiquetas: mysql, mysqli
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 09:37.