'mysql' Comando não Conectando como usado a partir do PATH, mas Funciona se o Caminho Completo for Usado

1

Não sei como consertar isso, mas aqui está a descrição. Eu posso executar o comando para uma instalação do Lampstack MySQL como esta e funciona:

/opt/lampstack/mysql/bin/mysql -u root -p

E minha variável PATH tem esse caminho, mas este comando não funciona:

mysql -u root -p

Dá este erro:

ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2)

O comando pede uma senha, mas depois dá o erro.

Devo observar também que executar o phpMyAdmin funciona bem em localhost:9090 com root e senha correta.

Presumivelmente, há duas instalações do MySQL se confundindo, porque eu posso executar cada comando com --version e recebo duas distribuições: 5.5.32 e 5.5.21.

Isso é um problema porque estou tentando usar a instalação do Lampstack MySQL para um projeto do Django. Eu tenho essa configuração em execução no Windows, mas em uma tentativa de duplicar o ambiente no Ubuntu eu fiquei um pouco confuso.

Qual é a melhor maneira de resolver este problema sem remover o núcleo do MySQL no sistema Ubuntu (e usar o do Lampstack)?

OBSERVAÇÃO

Descobri que o /var/run/mysqld/mysqld.sock não existe e nem o diretório /var/run/mysqld . Eu não sei como consertar isso, então qualquer ajuda é apreciada.

    
por nicorellius 07.08.2013 / 21:11

2 respostas

3

Verifique em qual ordem no PATH your /opt/lampstack/mysql/bin/ . É antes ou depois do binário nativo mysql ? Executar um

which mysql

para confirmar. Certifique-se de que /opt/lampstack/mysql/bin/ apareça ANTES do outro caminho.

    
por 07.08.2013 / 21:18
1

Ao tentar determinar se algo está acessível em seu $PATH , é sempre melhor usar o comando type .

$ type mysql

Exemplo

$ type mysql
mysql is /usr/bin/mysql
    
por 08.08.2013 / 06:05