Compruebe si mySql está instalado en el servidor

10

¿Hay alguna manera de determinar si mySql se ha instalado en un servidor Linux?

Elitmiar
fuente
Si necesita rechazar esta pregunta, dígame por qué.
Elitmiar
Probablemente porque no hiciste bien tu pregunta. Aquí está la forma de facto de hacerlo bien: catb.org/~esr/faqs/smart-questions.html
pboin

Respuestas:

12

Suponiendo que está buscando un binario mysql instalado con un paquete típico, ejecute el comando:

mysql

o

mysql --version

Si vuelve con una respuesta, se instala, si dice "comando no encontrado", entonces no está instalado.

Dave Drager
fuente
Asumiendo que está en la ruta o en el directorio actual.
Squillman
¡También suponiendo que no se haya compilado para usar un nombre diferente! :)
Dave Drager
2

¿Qué versión de linux?

Debian dpkg -l 'mysql *'

Ryaner
fuente
1

¿Qué tal rpm -q mysql(Fedora / RedHat)

Satanicpuppy
fuente
rpm -qa | grep mysql es probablemente más seguro ya que el paquete principal es mysql-server
Ophidian
1

Aparte de las buenas sugerencias anteriores, intente:

locate mysqld_safe

o

ls /etc/init.d | grep mysql

Si crees que podría estar ejecutándose, prueba:

ps waxu | grep mysql

o

netstat -pan | grep mysql
Twirrim
fuente
0

En cada distribución que conozco, MySQL instala algunas bibliotecas compartidas para su cliente, llamadas apropiadamente limbysqlclient. Puede verificar esto utilizando la herramienta ldconfig, que consultará para ver si el 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

Esto le dice que hay una muy buena posibilidad de que MySQL esté instalado. Es muy raro que alguien instale solo los objetos compartidos, sin instalar al menos el cliente. Ahora, verifique la existencia del cliente y servidor reales:

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

El programa 'which' puede no estar instalado, así que verifíquelo a través de:

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

Espero que esto ayude. A falta de consultar al administrador de paquetes (algo difícil de hacer en un script si tiene muchos sistemas que ejecutan diferentes distribuciones), parece una forma muy confiable de saberlo.

Tim Post
fuente
-1

La forma más fácil y más independiente de responder a su pregunta es;

find / -name mysql
Michael Pobega
fuente