Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Olá pessoal, tenho um site na internet, funciona perfeitamente, tanto no meu computador quando na maquina onde fica hospedado.
vamos aos dados da maquina
Intel Xeon 4.7 ghz 4n
Memoria DDR3 16gb
SSD 260 gb
ok vou explicar oque está acontecendo, volta e meia meu site para de se conectar ao banco de dados para alguns usuários, as vezes até para mim, mas verifico em outra maquina e ele entra normalmente, estava pesquisando em alguns foruns gringos, e diz para mudar o host de conexão de 127.0.0.1 para localhost resolve o problema parcialmente. Mas ai que da um outro muito pior. ao mudar para localhost o site qualquer pagina que tenha php e alguma função que faz contato com o banco de dados ele fica muito lento, demora quase 50 segundos para atualizar uma pagina, e quando eu coloco 127.0.0.1 ele roda normal, mas costuma da o problema mencionado algumas vezes no dia.
o site fica no IIS uso PHP 5.6 MySQL 5.4
minha conexão com o banco é a seguinte
Config.inc.php
define('HOST', '127.0.0.1');
define('USER', 'root');
define('PASS', '');
define('DBSA', 'banco');
define('WS_ACCEPT', 'accept');
define('WS_ERROR', 'error');
define('WS_INFOR', 'infor');
ini_set('display_errors',1);
ini_set('display_startup_erros',1);
error_reporting(E_ALL);
Class Conn.class.php
abstract class Conn {
private $Host = HOST;
private $User = USER;
private $Pass = PASS;
private $Dbsa = DBSA;
/* @var PDO */
private $Connect = null;
public function getConn(){
return $this->Conectar();//chamando a conexão com o metodo e retornando Connect
}
private function Conectar(){
try{
if($this->Connect == null):
$dsn = 'mysql:host='.$this->Host.';dbname='.$this->Dbsa;
$options = [PDO::MYSQL_ATTR_INIT_COMMAND => 'SET NAMES UTF8'];
$this->Connect = new PDO($dsn, $this->User, $this->Pass, $options);
endif;
} catch (PDOException $e){
exibeMensagens("Código do erro: {$e->getCode()}<br>"
. "Mensagem : {$e->getMessage()}<br>"
. "Arquivo: {$e->getFile()}<br>"
. "<font style='color:red;'>Motivo: Não foi possivel se conectar ao banco de dados! verifique a configuração no arquivo inc/config.inc.php</font><br>"
. "Linha : {$e->getLine()}", WS_ERROR);
die;
}//finaliza catch
return $this->Connect;
}//finaliza método Conectar
}
alguem tem ideia de como resolver esse problema, ou se é minha função de conexão que está faltando algo, falaram que pode ser o mysql tentando se conectar por uma porta diferente, mas tambem não sei se é
Carregando comentários...