nobre9910 0 Denunciar post Postado Março 1, 2010 Pessoal bom dia! Até sexta-feira (26/02/2010) meu xampp estava funcionando direitinho, ou seja, meu apache e mysql estavam sendo iniciados normalmente. Hoje (01/03/2010) quando iniciei minha máquina e tentei startar meu serviço somente o apache funcionou, o mysql apresentou o seguinte aviso: WARNING: terminating worker thread 1 MySQL started alguem poderia me ajudar? já tentei reiniciar minha máquina e nada foi modificado. obrigado desde já. Compartilhar este post Link para o post Compartilhar em outros sites
Shrek-BH 0 Denunciar post Postado Março 1, 2010 Já tentou reinicializar a máquina para ver? Você não alterou nenhum diretório de lugar? Você não instalou nada que utilize a porta 3306??? Compartilhar este post Link para o post Compartilhar em outros sites
nobre9910 0 Denunciar post Postado Março 2, 2010 Já tentou reinicializar a máquina para ver? Você não alterou nenhum diretório de lugar? Você não instalou nada que utilize a porta 3306??? Já reiniciei a máquina sim e o mysql continua sem funcionar. A porta 3306 esta livre, eu coloco la no xampp e clico em port-check e ele diz q a porta 3306 esta free. Alguem pode ajudar? ainda nao encontrei nenhuma solução. É pessoal... tive que instalar novamente mesmo. copiei a pasta xampp toda e instalei denovo e depois so copiei os arquivos pra dentro da pasta nova, está tudo funcionando novamente. valeu pela ajuda. grato Compartilhar este post Link para o post Compartilhar em outros sites
Shrek-BH 0 Denunciar post Postado Março 2, 2010 O que eu achei mais estranho foi que você disse que não havia feito nada e que antes estava funcionando perfeitamente. Pode ser algum problema no HD??? Você usa Ruwindows ou Linux? Compartilhar este post Link para o post Compartilhar em outros sites
nobre9910 0 Denunciar post Postado Março 2, 2010 O que eu achei mais estranho foi que você disse que não havia feito nada e que antes estava funcionando perfeitamente. Pode ser algum problema no HD??? Você usa Ruwindows ou Linux? Valeu Shrek-BH! cara, eu uso o super Ruwindows Vista. :D descobri qual era o problema... tenho uma base de dados rodando em um servidor linux e la temos o MySQL 4.1. Então, eu fiz um dump da base de dados e trouxe o arquivo.sql pra minha máquina local (que roda windows e MySQL 5). O problema é quando tento importar essa base de dados (mysql -h localhost -u "usuario" -p "base de dados" < arquivo.sql) ele ate começa a importar normal, mas depois de um tempo da um erro: ERROR 2006 (HY000) at line <linha>: MySQL server has gone away Depois disso o MySQL nao starta mais. é isso ai... se puder me ajudar para eu conseguir importar esse arquivo.sql sem dar erros agradeço. valeu Compartilhar este post Link para o post Compartilhar em outros sites
Shrek-BH 0 Denunciar post Postado Março 2, 2010 Há, agora tá explicado!!! risos Aqui, como que você tá gerando esse dump da sua base de dados? Compartilhar este post Link para o post Compartilhar em outros sites
nobre9910 0 Denunciar post Postado Março 2, 2010 Há, agora tá explicado!!! risos Aqui, como que você tá gerando esse dump da sua base de dados? eu to gerando da seguinte forma: mysqldump -h localhost -u root -A | gzip > arquivo.sql.gz com isso é gerado um arquivo zipado com o backup (isso no servidor linux), ai eu simplesmente copio pra minha máquina (windows vista), descompacto e tento importar com o comando: mysql -h localhost -u root -p "base de dados" < "arquivo.sql" ai ele começa a importar e depois da um erro: ERROR 2006 (HY000) at line <linha>: MySQL server has gone away é isso. Compartilhar este post Link para o post Compartilhar em outros sites
Shrek-BH 0 Denunciar post Postado Março 2, 2010 Justamente para uns casos assim eu criei uma função de backup, em PHP, que gera também um arquivo sql. Veja se resolverá o seu problema: <?php header('Pragma: no-cache');#No cache, ou seja, não guarda cache, pois é gerado dinamicamente ini_set('memory_limit','128M'); date_default_timezone_set('America/Sao_Paulo'); include('../includes/conexao.php'); $arquivo=date('YmdHi'); $file = fopen($arquivo.'.sql','w'); $query1 = 'SHOW TABLES'; $resultado1 = mysql_query($query1, $conexao); while ($item1 = mysql_fetch_array($resultado1)) { echo $item1[0],'<br>'.chr(13); $query2 = 'SHOW CREATE TABLE '.$item1[0]; $resultado2 = mysql_query($query2, $conexao); $item2 = mysql_fetch_array($resultado2); fwrite($file,$item2[1].';'.chr(13)); $query3 = 'SELECT * FROM '.$item1[0]; $resultado3 = mysql_query($query3, $conexao); $sql='INSERT INTO '.$item1[0].' VALUES'.chr(13); while ($item3 = mysql_fetch_row($resultado3)) { $aux=''; for ($x=0;$x<count($item3);$x++) { $item3[$x]=str_replace("\'","'",$item3[$x]); //Para evitar erros na inclusão de campos com aspas simples (') $item3[$x]=str_replace("'","\'",$item3[$x]); if (substr($item3[$x],strlen($item3[$x])-1,strlen($item3[$x]))=="\\") //Verifica se tem a barra no final do texto, para não acontecer de ficar \', pois daria erro ao importar no MySql $item3[$x]=str_replace("\\","\\\\",$item3[$x]); $aux.="'".$item3[$x]."',"; } $aux='('.substr($aux,0,strlen($aux)-1).'),'.chr(13); if (strlen($sql)+strlen($aux)>51250) { $sql=substr($sql,0,strlen($sql)-2).';'.chr(13); fwrite($file,$sql); $sql='INSERT INTO '.$item1[0].' VALUES'.chr(13); } $sql.= $aux; } if (mysql_num_rows($resultado3)>0) { $sql=substr($sql,0,strlen($sql)-2).';'.chr(13); fwrite($file,$sql); } } fclose($file); chmod($arquivo.'.sql',0777); if (extension_loaded('zip')) { echo 'Zipando...'; $zip = new ZipArchive(); $zip->open($arquivo.'.zip',ZIPARCHIVE::OVERWRITE); $zip->addfile($arquivo.'.sql'); $zip->close(); if (file_exists($arquivo.'.zip')) unlink($arquivo.'.sql'); echo ' - Ok',chr(10); } ?> Se tiver alguma dúvida é só perguntar. Compartilhar este post Link para o post Compartilhar em outros sites
nobre9910 0 Denunciar post Postado Março 3, 2010 Justamente para uns casos assim eu criei uma função de backup, em PHP, que gera também um arquivo sql. Veja se resolverá o seu problema: <?php header('Pragma: no-cache');#No cache, ou seja, não guarda cache, pois é gerado dinamicamente ini_set('memory_limit','128M'); date_default_timezone_set('America/Sao_Paulo'); include('../includes/conexao.php'); $arquivo=date('YmdHi'); $file = fopen($arquivo.'.sql','w'); $query1 = 'SHOW TABLES'; $resultado1 = mysql_query($query1, $conexao); while ($item1 = mysql_fetch_array($resultado1)) { echo $item1[0],'<br>'.chr(13); $query2 = 'SHOW CREATE TABLE '.$item1[0]; $resultado2 = mysql_query($query2, $conexao); $item2 = mysql_fetch_array($resultado2); fwrite($file,$item2[1].';'.chr(13)); $query3 = 'SELECT * FROM '.$item1[0]; $resultado3 = mysql_query($query3, $conexao); $sql='INSERT INTO '.$item1[0].' VALUES'.chr(13); while ($item3 = mysql_fetch_row($resultado3)) { $aux=''; for ($x=0;$x<count($item3);$x++) { $item3[$x]=str_replace("\'","'",$item3[$x]); //Para evitar erros na inclusão de campos com aspas simples (') $item3[$x]=str_replace("'","\'",$item3[$x]); if (substr($item3[$x],strlen($item3[$x])-1,strlen($item3[$x]))=="\\") //Verifica se tem a barra no final do texto, para não acontecer de ficar \', pois daria erro ao importar no MySql $item3[$x]=str_replace("\\","\\\\",$item3[$x]); $aux.="'".$item3[$x]."',"; } $aux='('.substr($aux,0,strlen($aux)-1).'),'.chr(13); if (strlen($sql)+strlen($aux)>51250) { $sql=substr($sql,0,strlen($sql)-2).';'.chr(13); fwrite($file,$sql); $sql='INSERT INTO '.$item1[0].' VALUES'.chr(13); } $sql.= $aux; } if (mysql_num_rows($resultado3)>0) { $sql=substr($sql,0,strlen($sql)-2).';'.chr(13); fwrite($file,$sql); } } fclose($file); chmod($arquivo.'.sql',0777); if (extension_loaded('zip')) { echo 'Zipando...'; $zip = new ZipArchive(); $zip->open($arquivo.'.zip',ZIPARCHIVE::OVERWRITE); $zip->addfile($arquivo.'.sql'); $zip->close(); if (file_exists($arquivo.'.zip')) unlink($arquivo.'.sql'); echo ' - Ok',chr(10); } ?> Se tiver alguma dúvida é só perguntar. Muito bom o script Shrek! Mas acho que o problema é de compatibilidade de versoes do MySQL. Eu até tinha resolvido o problema como citado anteriormente, mas quando reiniciei o sistema o erro de nao startar mais o MySQL apareceu novamente. O que você acha? seré mesmo o problema de incompatibilidade do MySQL? já que no servidor roda o MySQL 4.1 e na minha máquina rodo o xampp com o MySQL 5. Já fiz várias vezes o mesmo procedimento, mas sempre ocorre esse erro. Será que tem alguma solução para essa incompatibilidade? valeu pela ajuda. Compartilhar este post Link para o post Compartilhar em outros sites
Shrek-BH 0 Denunciar post Postado Março 3, 2010 Muito estranho, pois o script só recria as tabelas de um determinado database. Não era para travar e também não acredito que seja incompatibilidade entre as versões, pois tenho servidores rodando a versão 4.x, 5.x e até 6.0.10. Vivo usando esse script aí para copiar as databases entre eles. Você já deu uma olhada no log??? Compartilhar este post Link para o post Compartilhar em outros sites
nobre9910 0 Denunciar post Postado Março 3, 2010 Muito estranho, pois o script só recria as tabelas de um determinado database. Não era para travar e também não acredito que seja incompatibilidade entre as versões, pois tenho servidores rodando a versão 4.x, 5.x e até 6.0.10. Vivo usando esse script aí para copiar as databases entre eles. Você já deu uma olhada no log??? Shrek - BH... esse script é apenas para fazer o backup? O backup eu já consegui fazer, nao consigo eh importar o backup feito no MySQL 4.1 para meu servidor local MySQL 5. é isso. qq solução posta ai. valeu Compartilhar este post Link para o post Compartilhar em outros sites
Shrek-BH 0 Denunciar post Postado Março 3, 2010 O script gera um backup de tudo que tem no database, tabelas e registros. Depois é só você executá-lo como você já estava executando mesmo: mysql -uusuario -ppassword database <xxxxxxx.sql Compartilhar este post Link para o post Compartilhar em outros sites
nobre9910 0 Denunciar post Postado Março 3, 2010 O script gera um backup de tudo que tem no database, tabelas e registros. Depois é só você executá-lo como você já estava executando mesmo: mysql -uusuario -ppassword database <xxxxxxx.sql Ta dando os seguintes erros no script: Warning: Cannot modify header information - headers already sent by (output started at C:\xampp\htdocs\backup\backup.php:1) in C:\xampp\htdocs\backup\backup.php on line 2 Warning: mysql_fetch_array() expects parameter 1 to be resource, boolean given in C:\xampp\htdocs\backup\backup.php on line 10 ele ainda gera um arquivo compactado sem nada. valeu Compartilhar este post Link para o post Compartilhar em outros sites
Shrek-BH 0 Denunciar post Postado Março 3, 2010 Tira as 3 primeiras linhas do script e tenta executá-lo. Se funcionar, tenta restaurar o backup na outra máquina para ver. E ainda esqueci de avisar que essa rotina funciona tanto no meu servidor windows quanto no Linux. Testa aí e veja se funcionará! Abraços! Compartilhar este post Link para o post Compartilhar em outros sites
nobre9910 0 Denunciar post Postado Março 4, 2010 Tira as 3 primeiras linhas do script e tenta executá-lo. Se funcionar, tenta restaurar o backup na outra máquina para ver. E ainda esqueci de avisar que essa rotina funciona tanto no meu servidor windows quanto no Linux. Testa aí e veja se funcionará! Abraços! Na máquina local (windows vista e xampp) funcionou legal com uma base de teste, mas quando rodei no servidor remoto deu avisos de permissão em todas as funções de manipulação de arquivos (fopen, fwrite). Warning: fopen(201003041037.sql): failed to open stream: Permission denied in /home/www/backup/backup.php on line 8 album_foto Warning: fwrite(): supplied argument is not a valid stream resource in /home/www/backup/backup.php on line 18 Warning: fwrite(): supplied argument is not a valid stream resource in /home/www/backup/backup.php on line 45 e foi listando esses erros até acabar... e nada foi criado. é tipico problema de permissão, mas to rodando meu script php com usuário de banco root. valeu Compartilhar este post Link para o post Compartilhar em outros sites
Shrek-BH 0 Denunciar post Postado Março 4, 2010 No diretório onde roda o script de backup o php precisa ter permissão de escrita nesse diretório. Compartilhar este post Link para o post Compartilhar em outros sites
nobre9910 0 Denunciar post Postado Março 8, 2010 No diretório onde roda o script de backup o php precisa ter permissão de escrita nesse diretório. Ok! O problema de permissao foi resolvido, mas ta dando um erro de tempo de execução: Fatal error: Maximum execution time of 30 seconds exceeded in /home/www/backup/backup.php on line 29. já tentei mudar a linha max_execution_time = 30 do arquivo php.ini, coloquei 60, mas mesmo assim da o mesmo erro. Fatal error: Maximum execution time of 30 seconds exceeded in /home/www/backup/backup.php on line 29. como esse erro ele so faz o backup até a metade, pois é muito grande a base de dados. por hora é isso. valeu Compartilhar este post Link para o post Compartilhar em outros sites