PHP + Zend + PDO + MySQL

MySQL, PHP, Uncategorized 2 Comments

Hoje eu estava fazendo um site utilizando php, Zend Framework, PDO e MySQL.

Quando fui fazer uma tela que se conectava com o banco de dados, ocorria o seguinte erro:

SQLSTATE[HY000] [2005] Unknown MySQL server host ''localhost'' (1)

Removi do arquivo de configuração a linha que informava o host onde estava o banco de dados e o erro passou a ser:

SQLSTATE[28000] [1045] Access denied for user 'user'@'localhost' (using password: YES)

Não, as permissões não estavam erradas. O problema todo era o arquivo de configuração do zend (application.ini), que estava assim:

resources.db.params.host = 'localhost'
resources.db.params.username = 'user'
resources.db.params.password = 'pass'
resources.db.params.dbname = 'db'

O problema todo era as aspas simples, deveriam ser aspas duplas:

resources.db.params.host = "localhost"
resources.db.params.username = "user"
resources.db.params.password = "pass"
resources.db.params.dbname = "db"

Acabei perdendo a manhã toda até achar este pequeno problema.

MySQL não responde para outras máquinas

Programação 1 Comment

Se você estiver tendo algum problema ao tentar conectar ao MySQL de outra máquina, basta alterar o arquivo “my.cnf” localizado no diretório “/etc/mysql” e comentar a seguinte linha:

bind-address = 127.0.0.1

No caso, ela ficará da seguinte maneira:

#bind-address = 127.0.0.1

Após alterar o arquivo, e salvá-lo, bastar restartar o mysql:

sudo /etc/inid.d/mysql restart

Obs.: esses caminhos e executáveis foram testados no Ubuntu 8.04