在开发的过程中,有时候我们可能不一定会记得住所有服务的安装路径,Linux 系统下本身目录就特别多,所以很容易记混或者忘记,那么本文就以查找 Linux 下 MySQL 数据库安装的目录为例进行展开说明。
有的时候,虽然我们忘记了数据库的安装目录,但只要仍然记得数据库的登录密码,那么我们就可以通过登录 MySQL 数据库,执行 MySQL 命令来进行相应的查找:
mysql> select @@basedir as basePath from test_db;
mysql> show variables like '%basedir%';
以上两条 sql 都可以达到查找 MySQL 安装路径的目的,上面是我们在 Linux 系统中进行查找,那其实在 Windows 系统中也同样可以部署安装 MySQL 的,在 Windows 如下想要查找数据库的安装路径,可以在 cmd 中执行命令进行查看,这里查看的命令都是一样的,因为不管怎么说,MySQL 是不变的,只是底层系统环境不一样。
mysql> select @@datadir as dataPath from test_db;
mysql> show variables Like '%datadir%';
当然以上查找的基础都是在知道 MySQL 密码的时候才可以这么做,那如果现在连 MySQL 密码都不知道,还能查看吗?答案是肯定的,毕竟 Linux 很强大,下面我们就来说说当我们无法登录 MySQL 数据库的时候需要怎么数据库的安装路径。
第一种:which
可以通过 which
命令来进行查找,which
命令的意思就是展示出命令的全路径,使用方法就是 which
后跟一个具体的命令,然后就会返回给你这个命令的具体路径,注意有时候返回的路径可能不唯一,这与环境变量有关。
$ which mysql
这样查询到了 mysql
的执行文件路径,知道这个之后就可以进行登录,然后连接 MySQL,执行上面的查询语句,最终就可以得到 MySQL 的安装路径。
$ /usr/bin/mysql -u "用户名" -p "密码"
但其实这种方法也挺繁琐的,还是需要用户名和密码才可以登录,那第二种方法我们就来演示一种最直接的然后也不用登陆的。
第二种:ps
在 Linux 系统中,如果启动某个程序,那么就会有相关的进程在后台,所以第二种方法就是通过查看进程来达到我们的目的。
$ ps -ef | grep mysql
红色标注出来就是我们需要查找的信息,ps
这个命令会打印出当前系统活动的进程的信息,ps
命令的全称就是 “process status” ,它很像 Windows 系统里的任务管理器。这个命令是最直接可以显示 MySQL 安装路径的,但前提是必须要 MySQL 进程存在才可以。