Site do Drupal off-line: conexão recusada

1

Eu tenho uma instância local do Drupal 6 que estava funcionando bem ontem. Hoje, porém, tento visitar meu site, vamos chamá-lo de link . Em todas as páginas, incluindo o link , recebo este erro:

Site off-line The site is currently not available due to technical problems. Please try again later. Thank you for your understanding.

If you are the maintainer of this site, please check your database settings in the settings.php file and ensure that your hosting provider's database server is running. For more help, see the handbook, or contact your hosting provider.

Observe que não há erro do MySQL aqui. Há apenas uma página que eu posso encontrar que não tem esse erro: link . Essa página inclui uma mensagem de erro:

Failed to connect to your MySQL database server. MySQL reports the following message: Connection refused.

  • Are you sure you have the correct username and password?
  • Are you sure that you have typed the correct database hostname?
  • Are you sure that the database server is running?

For more help, see the Installation and upgrading handbook. If you are unsure what these terms mean you should probably contact your hosting provider.

No entanto, meu outro site local está rodando bem no mesmo banco de dados, e eu posso conectar ao banco de dados usando a linha de comando. Tenho certeza de que tenho as permissões corretas também, já que as coisas estavam funcionando no passado:

$ mysql --host=localhost --user=testuser --password=testpassword testdb
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 19
Server version: 5.5.11-log Source distribution

Copyright (c) 2000, 2010, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql> SHOW GRANTS FOR CURRENT_USER();
+-------------------------------------------------------------------------------------------------------------------------------------+
| Grants for testuser@localhost                                                                                                       |
+-------------------------------------------------------------------------------------------------------------------------------------+
| GRANT USAGE ON *.* TO 'testuser'@'localhost' IDENTIFIED BY PASSWORD 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'                     |
| GRANT SELECT, INSERT, UPDATE, DELETE, CREATE, DROP, INDEX, ALTER, LOCK TABLES ON 'testdb'.* TO 'testuser'@'localhost'               |
+-------------------------------------------------------------------------------------------------------------------------------------+
2 rows in set (0.03 sec)

Meu settings.php usa as mesmas credenciais:

$db_url = 'mysqli://testuser:testpassword@localhost/testdb';

Eu não consigo descobrir o que está errado. Por favor ajude!

    
por arussell84 13.05.2011 / 21:21

3 respostas

1

Você precisa verificar novamente se o seu servidor está realmente usando esse arquivo settings.php .

Você pode usar find ou locate se estiver trabalhando no ambiente Linux.

Você também pode tentar renomear / mover o arquivo de configuração para outro local e ver se a mensagem de erro muda.

Este tipo de erro é provavelmente um erro de configuração.

    
por 14.05.2011 / 08:38
1

Verifique no diretório sites . Uma causa comum disso pode ser uma estrutura de diretório que deve ser parecida com:

sites/
      default/
              settings.php
      somedomain.com -> default

Mas isso foi verificado em um SCCS de braindead (e fora e de volta através de um cliente braindead) de tal forma que ele tratou o symlink como outro diretório, então agora você tem:

sites/
      default/
              settings.php
      somedomain.com/
              settings.php

E, é claro, provavelmente você está apenas alterando default/settings.php , já que esse é o único razoável a ser alterado quando você não está executando multisite. Dito isso, a solução real aqui não é para consertar o outro settings.php ou para consertar o symlink, mas simplesmente deletar "somedomain.com"; não está adicionando nada à sua configuração.

Uma outra maneira eu vi isso acontecer: um muito, muito grande (500 linhas ou mais) settings.php realmente tinha dois $db_url s nele. O segundo, claro, "ganhou". Fale sobre coisas que você não pensa em procurar!

    
por 14.05.2011 / 02:48
0

tente: 'mysqladmin flush-hosts'. Além disso, verifique o seu usuário mysql perms. Talvez você não esteja permitindo acesso a esse banco de dados? Verifique também os firewalss entre esses servidores.

    
por 13.05.2011 / 21:27