解决办法:Linux mysql命令 -bash: mysql: command not found 找不到命令

编程知识 行业动态 更新时间:2024-06-13 00:21:12

问题描述:
拿到以前的一台旧VM机器CentOS 7x,登陆上去后执行mysql -u xxx -p *** 登陆mysql的时候
出现-bash: mysql: command not found ,初始以为机器没有安装mysql,迅速开始确认是否本机安装了mysql亦或mariadb
各种确认语句来一波:

1、执行mysql --version输出:

-bash: /usr/bin/mysql: No such file or directory

1、执行whereis mysql输出(如果没有任何输出,请直接跳转到解决办法2):

mysql: /usr/lib64/mysql

2、执行whereis mariadb输出:

mariadb: /usr/local/mariadb

3、执行service mysql statussystemctl status mysql.service 输出:

[root@SERVER bin]# systemctl status mysql.service
● mysqld.service - LSB: start and stop MariaDB
   Loaded: loaded (/etc/rc.d/init.d/mysqld; bad; vendor preset: disabled)
   Active: active (running) since Tue 2021-07-27 10:35:31 CST; 6 days ago
     Docs: man:systemd-sysv-generator(8)
  Process: 3532 ExecStop=/etc/rc.d/init.d/mysqld stop (code=exited, status=0/SUCCESS)
  Process: 3664 ExecStart=/etc/rc.d/init.d/mysqld start (code=exited, status=0/SUCCESS)
   CGroup: /system.slice/mysqld.service
           ├─3687 /bin/sh /usr/local/mariadb/mariadb-10.3.22-linux-x86_64/bin/mysqld_safe --datadir=/home/data/mysql/mariadb10.3.22 --pid-f...
           └─3769 /usr/local/mariadb/mariadb-10.3.22-linux-x86_64/bin/mysqld --basedir=/usr/local/mariadb/mariadb-10.3.22-linux-x86_64 --da..

4、执行which mysql输出:

/usr/bin/which: no mysql in (/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin)

原因分析:
一顿输出操作后,可以确定本机安装了mariadb,从上述第3步可以确定,数据库服务处于开启状态,使用navicat使用旧用户名密码可以登陆,证明数据库状态没问题。
根据第4步的输出可以判断,之所以执行mysql命令出现错误,是因为在/usr/local/bin中未发现mysql。

解决办法1:
使用软连接将mysql映射到bin目录下

根据第2步可以分析出,该机器安装了maridb,且安装路径在/usr/local/mariadb

创建软连接:

ln -s /usr/local/mariadb/mariadb-10.3.22-linux/bin/mysql /usr/bin

创建完软链接后,再次执行mysql --version

mysql  Ver 15.1 Distrib 10.3.22-MariaDB, for Linux (x86_64) using readline 5.1

再次执行mysql -u xxx -p *** 可以正常登录。


解决办法2:

如果是本机没有安装任何的MySQL,那么本机无法使用mysql命令。

#1 使用yum直接安装mysql客户端(只安装客户端)

# 直接使用如下命令安装mysql客户端,注意使用:`yum install -y mysql-server` 是安装的mysql服务器端而非客户端
yum install -y mysql


#2 离线状态安装mysql客户端,此方案针对于一台linux无法访问外网的情况


step 1 : 访问mysql官方地址下载mysql客户端离线包
网址:https://dev.mysql/downloads/mysql/


step 2:下载好离线包后,拷贝移动到linux服务器中,使用如下命令进行离线安装。

rpm -ivh mysql-community-client-8.0.28-1.el8.x86_64.rpm --nodeps --force


step 3:安装成功后即可使用 mysql -h 10.10.0.1 -u root -p 命令进行远程连接数据库


:本文原创由 bluetata 发布于: https://bluetata.blog.csdn/ 转载请务必注明出处。


更多推荐

解决办法:Linux mysql命令 -bash: mysql: command not found 找不到命令

本文发布于:2023-03-31 09:58:00,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/a76d85d7f4916f6ddbd2c8ec21b338f0.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:命令   找不到   解决办法   Linux   mysql

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!