2012-12-10 49 views
3

我试着用搜索引擎来获得MySQL的路径,但它是不成功的。是否有一个UNIX命令,在哪里可以找到MySQL数据库目录的路径?获得MySQL的路径

回答

4

尝试此查询,

SHOW VARIABLES LIKE 'datadir';

+0

这不是一个UNIX命令 – Baconator507

+0

'datadir'为您提供了路径,数据线,'basedir'为您提供了路径安装位置(即从服务运行的地方)。 – nawfal

+1

@ Baconator507这是从MySQL内部运行。 – mike

4

找到my.cnf文件,然后找到DATADIR

sudo find/-name "my.cnf" | xargs cat | grep "datadir" | cut -d" " -f2 

,或者如果你知道这个配置文件的位置

cat /etc/mysql/my.cnf | grep "datadir" | cut -d" " -f2 
+0

如果my.cnf中的位置是什么不同呢?如果用户不知道my.cnf的路径怎么办?有没有找到my.cnf的正确路径的命令?我知道我们可以使用命令'locate my.cnf',那么如果它给我多个位置呢?我将如何知道'my.cnf'的哪条路径用于获取所需数据库的位置? – AlwaysALearner

+0

您可以运行一个查找找到它,上面写着DATADIR会告诉你其中DB位于 – Baconator507

1

如果MySQL服务已启动,那么你可以使用这个命令获得路径 -

SHOW VARIABLES LIKE 'basedir'; 
1
sudo mysql <<< "SHOW VARIABLES LIKE 'datadir';" | grep "datadir" | cut -c9- 

或在bash

MYSQL_DATA_DIR="$(sudo mysql <<< "SHOW VARIABLES LIKE 'datadir';" | grep "datadir" | cut -c9-)"