não pode conectar o mysql com script php

1

Eu sou novo, instale o centos6.2.

na parte ssh, eu poderia acessar o mysql com:

>mysql -u root -p
>se659;m

então eu pude ver

mysql>

e eu poderia usar qualquer comando mysql como: show databases; , show columns from tableName , etc.

Mas quando eu uso o código php para conectar o mysql,

<?php
$handle_db = mysql_connect("localhost","root","se659;m") 
or die("can not connect Mysql Server");
?>

mostra can not connect Mysql Server

Eu uso phpinfo() Eu podia ver

e eu instalo o mysql em usr/local/mysql

Onde está o problema? Eu sinto o enigma # _ @

    
por cj333 14.09.2012 / 18:56

1 resposta

1

Existem variáveis multilectas em ação aqui.

  1. Você tem uma instalação personalizada do mysql em / usr / local / mysql. Isso significa que seu soquete mysql pode não estar no local padrão que o PHP espera que seja. Para corrigir este problema, certifique-se de que o mysql e o PHP concordam com a localização do socket. você também pode usar o soquete de rede. A configuração do Mysql pode estar em /usr/local/mysql/etc/my.cnf
  2. Se você quiser usar uma conexão de rede (soquete não local), então o Mysql deve ser configurado para permitir as conexões de rede.
  3. O MySQL usa o nome de usuário e o host para verificação de permissões. isso significa que "root @ localhost" e "root @ myhostname" são diferentes "usuários" para o mysql. Ambos os usuários raiz devem ter uma senha e ter permissões para que as coisas funcionem.
  4. Você pode precisar usar o mysqli_connect. O MySQL 4 e 5 tinham diferentes tipos de hash de senha, o que os tornava incompatíveis. O PHP deve usar o hash de senha que o Mysql espera. Isso pode ser resolvido por myqli_connect.
por 14.09.2012 / 19:10