Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

pauloalberto

pconnect em Oscommerce

Recommended Posts

Boa noite galera,

Ja obtive muita ajuda neste forum, que considero com o maior nivel técnico do brasil, todas elas sem precisar postar, apenas pesquisando.

Tenho um site de vendas de informática que esta começando a dar resultado, mais de 1.000 visitas por dia

O problema é que conforme a pessoa vai usando aparece seguinte erro:

 

Warning: mysql_pconnect() [function.mysql-pconnect]: Link to server lost, unable to reconnect in /home/paulo/public_html/loja/includes/functions/database.php on line 17

Unable to connect to database server!

 

E o mais preocupante, é que esta semana começa aparecer meu SWF no forumpcs, e tbm começo a anunciar no forum dela.

Tenho certeza que nao vai dar conta, e o erro vai aparecer toda a hora.

Esse foi o unico problema em que nao consegui resolver, e vale lembrar que nao conheço nada de php.

Gostaria muito que alguem pudesse me ajudar, poderia recompensar de alguma maneira, sei la, um cupom de desconto, qualquer coisa, pois preciso de ajuda mesmo

Ja contactei o meu host (Softhost), este dizendo que as conexões no BD ja estao no máximo, 300, e o problema seria de algum erro do site.

 

também posso postar qualquer parte do código que julguem necessario.

 

Agradeço desde já a boa vontate,

Paulo

 

ja ia esquecendo de citar que o site é www.pichau.com.br

Compartilhar este post


Link para o post
Compartilhar em outros sites

Boa noite Paulo Alberto.

 

O problema é tanto no MySQL quanto na programação.

Primeiro de tudo, mysq_pconnect é uma conexão persistente com o banco, ou seja, se utilizar varias querys numa mesma pagina, certamente vai lotar as conexões com a base.

 

Outro problema é o fato do MySQL da maquina onde está rodando seu sistema ter limite de apenas 300 conexões simultâneas.

 

Bom, mas o que te interessa é como resolver certo?

Primeiro de tudo é utilizar as funções apropriadas para cada sistema, nesse caso, tenho quase certeza que mysql_pconnect não é aconselhável, e sim mysql_connect. Então como você comentou que não entende de php, te aconselho a fazer o bkp de todos os arquivos, depois sair localizando todos os mysql_pconnect e alterar para mysql_connect e verificar se funciona.

 

Se quem desenvolveu esse sistema (eu disse SE) gosta de fazer sistemas praticos para fazer manutenção, vai ter apenas 1 mysql_pconnect. Mas isso só você pesquisando mesmo no código fonte.

 

Acredito que alterando para mysql_connect resolva seu problema TEMPORARIAMENTE!!!

 

Digo temporario pois como você mesmo disse, está cada vez mais sucesso o site, então outro conselho é migrar para um servidor dedicado seu sistema.

 

Qualquer coisa mande noticias beleza? []s!!!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Agradeço muito a sua paciência em responder.

pois é, nao tenho noção nenhuma, mais sei me virar por estes lados.

da linha 13 a 20 aonde se encontra o erro é :

 

function tep_db_connect($server = DB_SERVER, $username = DB_SERVER_USERNAME, $password = DB_SERVER_PASSWORD, $database = DB_DATABASE, $link = 'db_link') {
	global $$link;

	if (USE_PCONNECT == 'true') {
	  $$link = mysql_pconnect($server, $username, $password);
	} else {
	  $$link = mysql_connect($server, $username, $password);
	}

Pois é, hoje eu tive mais de 2.000 visitas e varias vezes apresentou o erro.

outra pergunta,o que seria este servidor dedicado? aonde poderia encontrar tal serviço?

Agradeço novamente amigo.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Pera ae que vamos resolver fácil seu problema!!!

 

if (USE_PCONNECT == 'true') {

 

O sistema tem em algum lugar setando a variavel USE_PCONNECT recebendo TRUE.

Você precisa achar isso e alterar para FALSE.

 

Veja na administração do sistema nas configurações se não tem nada parecido.

Ou em algum arquivo de configuração.

 

Sobre servidor dedicado é assim, provavelmente na hospedagem que você está, seja um plano comum onde numa mesma maquina existe VARIOS sites rodando.

Servidor dedicado seria um servidor rodando apenas o seu sistema, uma maquina exclusiva para seu e-commerce.

Lógico que isso é bem mais caro mas inevitável em grandes sistemas.

 

Veja com sua própria hospedagem que eles tem serviço de servidor dedicado. Não se assuste com o preço... hehehehe

Compartilhar este post


Link para o post
Compartilhar em outros sites

vou entrar em contato com eles para saber do valor, mas creio eu que não deve compensar agora.

 

o mais engraçado, é que nao acontece todas as vezes, eu fiquei atualizando agora até chegar a 40 novas conexoes e nao deu o erro, sinceramente eu nao entendo.

o arquivo database pega os dados do arquivo configure, que tem a seguinte linha

 

define('USE_PCONNECT', 'true'); // use persisstent connections?

eu ja tinha alterado uma vez esta linha para false, porem apresentava um erro diferente, só que quando eu tinha trocado para false nao tinha trocado o que citou no arquivo database.

ja fiz as auteraçoes aqui como disse, porem estou tentando fazer o site da o erro para eu upar o arquivo e ver se resolvel, mas por enquanto nada.

 

agradeço novamente amigo, []'s

Compartilhar este post


Link para o post
Compartilhar em outros sites

acredito que numa hora dessas é difícil dar o erro...

Agora é esperar uma hora de pico com bastante acesso e verificar... =)

 

boas vendas... =P

Compartilhar este post


Link para o post
Compartilhar em outros sites

Sem condiçoes mesmo

essas foram as respostas que obtive pelo suporte

Prezado,

 

Quando nos referimos a 300 conexões, não são conexões globais, mas sim por CADA usuário do mysql, isso não é pouco e o limite global logicamente é muito superior a 300. Me envie um print screen da tela onde ocorre este erro que irei interpretar melhor o que pode ser, dificilmente será problema de quantidade de usuários (max_user_connections) haja vista o limite ser bem acima do que você reportou em outra oportunidade (15 conexões simultâneas).

 

Em caso de dúvidas, por favor entre em contato.

 

Obrigado pela preferência!

 

Logo depois pediram pra mandar screen de quando o erro acontece, ok, mandei no mesmo momento que aconteceu, e obtive essa resposta

 

Este erro não tem relação com o limite de usuários simultâneos mas sim quando o mysql trava e não é possível terminar a conexão permanente (pconnect) fazendo as operações restantes (atualização, consulta ou remoção).

 

Nao sei o que fazer, alguem me da uma luz por favor!

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.