“mysql”命令未按 PATH 使用方式连接,但如果使用完整路径则有效

“mysql”命令未按 PATH 使用方式连接,但如果使用完整路径则有效

不确定如何修复此问题,但以下是描述。我可以像这样对 Lampstack MySQL 安装运行命令,它可以正常工作:

/opt/lampstack/mysql/bin/mysql -u root -p

我的 PATH 变量中包含此路径,但此命令不起作用:

mysql -u root -p

出现此错误:

错误 2002 (HY000):无法通过套接字“/var/run/mysqld/mysqld.sock”连接到本地 MySQL 服务器 (2)

该命令要求输入密码但随后出现错误。

我还应该注意,只要localhost:9090密码root正确,phpMyAdmin 就可以正常运行。

据推测,有两个 MySQL 安装混淆了,因为我可以运行每个命令--version并得到两个发行版:5.5.32 和 5.5.21。

这是一个问题,因为我正在尝试将 Lampstack MySQL 安装用于 Django 项目。我在 Windows 上运行此配置,但在尝试在 Ubuntu 上复制环境时,我有点混乱。

在不删除 Ubuntu 系统上的核心 MySQL(并使用 Lampstack)的情况下解决此问题的最佳方法是什么?

笔记

我发现实际上/var/run/mysqld/mysqld.sock并不存在,目录也不存在/var/run/mysqld。我不确定如何修复此问题,因此如能得到任何帮助我将不胜感激。

答案1

检查PATH你的中的顺序/opt/lampstack/mysql/bin/。它是在本机mysql二进制文件之前还是之后?运行

which mysql

确认。确保/opt/lampstack/mysql/bin/出现在另一条路径之前。

答案2

当尝试确定某些东西是否可以访问时,$PATH最好始终使用命令type

$ type mysql

例子

$ type mysql
mysql is /usr/bin/mysql

相关内容