mysql 命令行不起作用

San*_*ath 2 mysql linux command-line-interface console

我在我的 Fedora 系统中运行了 mysql。我在系统上设置了 xampp,并且 webspace 中存在的 php 项目工作正常。PhpMyAdmin 工作正常。phpinfo()在 PHP 脚本中回显也显示启用了 mysql。但是运行mysql连接命令

mysql -u[username] -p[password]

给这个 -

bash: mysql: command not found
Run Code Online (Sandbox Code Playgroud)

我该如何解决?任何指针?

我想我需要做一些指向(在某个文件中定义一些路径),以便我的系统知道 mysql 已安装。我到底需要做什么?

其他详细信息
该系统是别人的,他在此处不可用。可能是系统中已经设置了 PHP/Mysql。我刚刚为 linux 提取了 xampp,/opt/lampp/并将上述所有内容(PHP 项目和 PhpMyAdmin)放入其中。这样做之后,我遇到了套接字问题(PhpMyAdmin 无法正常工作并显示此问题)-

#2002 - The server is not responding (or the local MySQL server's socket is not correctly configured) 
Run Code Online (Sandbox Code Playgroud)

我重新启动了lampp,./lampp restart但问题仍然存在。然后今天打开系统后,我启动了lampp,一切正常。没有项目问题了,只有命令行 Mysql 不工作

Ale*_*lex 7

正如 Khaled 所说,“找不到命令”问题可能是路径设置的问题。如果您尝试locate mysql并出现类似/opt/lampp/mysql/bin/mysql 的内容,那么您需要export PATH=$PATH:/opt/lampp/mysql/bin'获得一个简单mysql的工作。此外,您可能希望将其添加到您的 ~/.bash_profile 中,以便在您下次登录时将其重置。

至于套接字问题,您的 my.cnf 文件将指定套接字所在的位置。mysql 客户端二进制文件将在编译时使用的任何默认位置进行查找。对于 Fedora,这是 /var/lib/mysql/mysql.sock。如果它位于备用位置,则需要在命令行上使用mysql --socket=/path/to/mysql.sock. 如果 MySQL 未运行,此文件也将不存在,因此您可能需要检查 ps 输出ps -efa|grep -i mysql以验证它是否正在运行。作为旁注,您还将在 ps 输出上看到“socket=”,它设置服务器将在哪里写入套接字。