Verifique se mySql está instalado no servidor

10

Existe uma maneira de determinar se o mySql foi instalado em um servidor Linux?

    
por Roland 30.09.2009 / 16:24

6 respostas

9

Supondo que você esteja procurando por um binário mysql instalado com um pacote típico, execute o comando:

mysql

ou

mysql --version

Se ele voltar com uma resposta, ele será instalado, se ele disser "comando não encontrado", então não está instalado.

    
por 30.09.2009 / 16:29
2

Qual versão do linux?

Debian dpkg -l 'mysql *'

    
por 30.09.2009 / 16:32
1

Que tal rpm -q mysql (Fedora / RedHat)

    
por 30.09.2009 / 16:41
1

Além das boas sugestões acima, tente:

locate mysqld_safe

ou

ls /etc/init.d | grep mysql

Se você acha que já pode estar em execução, tente:

ps waxu | grep mysql

ou

netstat -pan | grep mysql
    
por 30.09.2009 / 16:48
0

Em todas as distribuições que eu conheço, o MySQL instala algumas bibliotecas compartilhadas para seu cliente, nomeadas apropriadamente como limbysqlclient. Você pode verificar isso usando a ferramenta ldconfig, que consultará se o objeto está instalado:

ldconfig -p | grep mysqlclient
        libmysqlclient_r.so.15 (libc6) => /usr/lib/libmysqlclient_r.so.15
        libmysqlclient_r.so.14 (libc6) => /usr/lib/libmysqlclient_r.so.14
        libmysqlclient_r.so.12 (libc6) => /usr/lib/libmysqlclient_r.so.12
        libmysqlclient_r.so.10 (libc6) => /usr/lib/libmysqlclient_r.so.10
        libmysqlclient_r.so (libc6) => /usr/lib/libmysqlclient_r.so
        libmysqlclient.so.15 (libc6) => /usr/lib/libmysqlclient.so.15
        libmysqlclient.so.14 (libc6) => /usr/lib/libmysqlclient.so.14
        libmysqlclient.so.12 (libc6) => /usr/lib/libmysqlclient.so.12
        libmysqlclient.so.10 (libc6) => /usr/lib/libmysqlclient.so.10
        libmysqlclient.so (libc6) => /usr/lib/libmysqlclient.so

Isso diz que há uma boa chance de o MySQL estar instalado. É muito raro alguém instalar apenas os objetos compartilhados, sem instalar pelo menos o cliente. Agora, verifique a existência do cliente e servidor reais:

root@tower:~ # which mysqld_safe
/usr/bin/mysqld_safe
root@tower:~ # which mysql
/usr/bin/mysql
root@tower:~ #

O programa 'which' pode não estar instalado, por isso verifique:

root@tower:~ # which which
/usr/bin/which

Espero que isso ajude. Falta de consultar o gerenciador de pacotes (meio difícil de fazer em um script se você tiver muitos sistemas executando distribuições diferentes), parece uma maneira muito confiável de dizer.

    
por 01.10.2009 / 04:44
-1

A maneira mais fácil e menos onerosa de responder à sua pergunta é:

find / -name mysql
    
por 01.10.2009 / 04:59

Tags