phpMyAdmin 3.4.4 instalar através do banco de dados MySQL 5.1 com autenticação de cookie falha

1

Não consigo fazer login na minha instância do phpMyAdmin por meio da autenticação de cookies usando o Google Chrome. Continuo sendo devolvido para a página de login com um aviso sobre cookies.

Estou executando o servidor LTS do Ubuntu 10.04.2, o servidor MySQL 5.1.41, o Apache 2.2.14 e acabei de fazer o download do phpMyAdmin 3.4.4. Estou usando o Chrome stable (13 atualmente) no Mac OS X 10.6.8 como navegador.

Eu fiz a configuração usando o script de instalação fornecido com o pacote phpMyAdmin, usando autenticação de cookie. No entanto, quando eu navego para link para login, depois de enviar o formulário, ele é redirecionado de volta para o formulário de login sem mensagem de erro ou indicação de qualquer tipo.

Eu tentei limpar todos os dados de navegação das configurações do Google Chrome e carreguei /phpmyadmin/index.php novamente. Houve uma mensagem dizendo "O cookie deve estar ativado", mas isso só aparece uma vez, desapareceu após a atualização. Login ainda é um não ir.

Já experimentei o Safari 5 com os mesmos resultados (incluindo a mensagem de aviso de cookie). O login do Firefox 6.0 foi bem-sucedido.

Depois de tentar alterar a autenticação "config" (colocando "root" e senha em config.ini.php, o Google Chrome agora pode fazer login, mas não tem privilégios para criar bancos de dados.

Finalmente eu tenho que fazer a configuração do banco de dados com a linha de comando.

Qual poderia ser o problema aqui?

    
por Ryan 03.09.2011 / 09:47

1 resposta

0

Que tipo de instalador você usou para instalar o MySQL? Você baixou um .dmg ou baixou a fonte e compilou-a? Isso é importante saber porque isso determina como o MySQL é configurado inicialmente.

Existem duas questões separadas aqui.

  1. O script de inicialização do MySQL não foi executado após / durante a instalação, portanto, não há bancos de dados do defacto instalados.

Para verificar isso:

$ mysql -u root localhost -p
Enter Password: <-Enter the root password for MySQL
$ mysql> show databases; <ENTER>
$ +--------------------+
$ | Database           |
$ +--------------------+
$ | information_schema |
$ | test               |
$ +--------------------+
$ 2 rows in set (0.01 sec)

mysql>

Se você executar esse comando e não receber de volta o que eu postei acima, você terá que rastrear o script de inicialização do MySQL em sua máquina. Provavelmente será em /usr/local/mysql/scripts . Consequentemente, sua instalação do MySQL deve estar em /usr/local/mysql . O script a ser executado seria mysql_install_db do diretório de script mencionado acima.

  1. Parece que sua configuração ao executar o inicializador baseado na Web pode não estar sendo gravada no config.ini.php. Você pode querer olhar para isso. Pelo que me lembro, depois de fazer a configuração on-line com o phpMyAdmin, você precisa ir manualmente e mover o config.ini.php para o diretório / config na raiz do phpMyAdmin. O conto, passe por cima do seu config.ini.php, tenha certeza de que está correto, e tenha certeza que está no diretório correto e o rw pelo usuário possui o processo em que o Apache é executado (geralmente apache: apache).

Nota adicional: É possível que o parâmetro "skip-networking" no my.conf esteja configurado como verdadeiro. Se este for o caso, a única maneira de se conectar ao MySQL é através do socket unix que geralmente está localizado em /var/run/mysqld/mysqld.sock. Seu my.cnf estará em algum lugar sob o seu caminho de instalação. Porque isso pode variar muito drasticamente, eu não posso dizer exatamente onde está. Enquanto você está olhando para o seu my.cnf, veja também o parâmetro "bind-address" . Se este parâmetro estiver configurado para algo estranho, você terá problemas se precisar acessar o servidor através da rede. Além disso, se ele estiver vinculado ao host local ou 127.0.0.1, será necessário verificar se o phpMyAdmin está se conectando ao servidor em um desses dois endereços e se a conta do usuário que você está usando para efetuar login no MySQL do phpMyAdmin corresponderá ao host nesse parâmetro. e.g. root@localhost

Espero que isso ajude. Nós definitivamente deveríamos ser capazes de resolver isso. O MySQL / phpMyAdmin é muito comum e há algumas pessoas realmente inteligentes aqui. Deixe-nos saber.

    
por 03.09.2011 / 14:10