无需startx即可登录Mysql

无需startx即可登录Mysql

我已经在带有 MySQL 5 的 Virtual Box 中安装了该死的小型 Linux(DSL) 10。我已经创建了一个包含表和数据的数据库。我可以使用以下行通过终端访问它:

mysql -u dsl

在此期间,DSL 通过 startx (GUI) 启动。但如果我在没有 startx 的情况下启动 DSL(它不再在 .bash_profile 中),我将自动通过终端 (tty1) 访问 DSL。

此时的问题。如果 DSL 在没有 startx 的情况下启动,则不可能通过以下行给出访问 Mysql:

mysql -u dsl

截图在这里: 在此输入图像描述 怎么可能解决这个问题。

答案1

这看起来像是 PATH 问题。当您像输入 mysql 一样在终端中输入命令名称时,实际上终端正在尝试在 PATH 变量中指定的文件夹中找到它,并且我猜当您运行 X 时该变量不包含相同的文件夹当你不在的时候。

当您使用 X 运行并且可以使用 mysql 时,输入whereis -b mysql,您应该得到类似/path/to/mysql或类似的内容。

然后进入 no-X 会话并输入完整路径/path/to/mysql -u dsl,它应该可以工作。
要使其永久生效,如果您使用的是 bash,则必须修改 .bash_profile。写一行这样的:export PATH='/path/to:$PATH然后从命令行. .bash_profile或重新连接自己。

答案2

假设您不需要定期执行此操作,最简单的方法是使用 mysql完整路径进行调用

/usr/local/mysql/bin/mysql -u dsl

答案3

一种可能的选择是添加

/usr/local/mysql/bin 

通过运行到你的路径

export PATH=$PATH;/usr/local/mysql/bin

否则将此路径添加到您的 ~/.bash_profile

但您也可以输入 mysql 实用程序的完整路径

/usr/local/mysql/bin/mysql -u dsl

默认情况下安装 Mysql 它不会更新 PATH。

相关内容