系统版本:macOS12.3.1
MySQL: 8.0.16
macOS下报错 mysql: command not found
问题
好久没有使用命令行连接mysql了,今天连接发现命令都不可用:
-bash:mysql: command not found
问题解决
1. 检查MySQL服务是否已经启动
如果没启动会报一下错误:
ERROR 2002 (HY000): Can't connect to local MySQL server through socket
"/tmp/mysal.sock'(2)
2. 检查环境变量
输入命令sudo vi ~/.bash_profile
,输入Mac电脑密码后就能打开用户目录下的bash_profile文件(这里的类似于windows下的环境变量);这里一定要使用sudo,否则没权限保存文件。
sudo vi ~/.bash_profile
输入:O
只读模式 | E
编辑模式 | R
恢复 | D
删除 | Q
退出 | A
关于
我这里输入 E
进入编辑模式
打开bash_profile文件看到很多环境变量,输入 i
即可编辑,编辑完成后ESC
命令退出 ,输入 :wq
退出编辑保存即可
重新配置一下mysql的环境变量:/mysql的安装路径/bin
export PATH=$PATH:/usr/local/mysql-8.0.16-macos10.14-x86_64/bin
退出后,输入以下命令让环境变量生效:
source ~/.bash_profile
2.1 另一种配置 bash_profile文件方法
# 在你的Mac终端,输入:
cd ~ #然后回车
touch .bash_profile #然后回车
open -e .bash_profile #然后回车
# 进入文件后配置环境变量:
export PATH=$PATH:/usr/local/mysql/bin
#配置完成后 按esc 英文输入法下输入以下信息,保存环境变量
:wq
#回到终端面板,输入:
source ~/.bash_profile #即让环境变量生效
#必要时要重启一下电脑
3. 重新启动电脑
现在可以试一下,命令行是否可以正常运行mysql,如果不可以继续以下步骤:
4. 建立软链接
命令行编译时,系统默认会查找/usr/bin下的命令,如果这个命令不在这个目录下,当然会找不到命令,/usr/local/bin
目录下缺失mysql
导致,现在只需要一下方法建立软链接,即可以解决:把mysql安装目录,比如MySQLPATH/bin/mysql
,映射到/usr/local/bin目录下:
#注:其中`MySQLPATH`是mysql的实际安装路径
cd /usr/local/bin
ln -s /usr/local/mysql-8.0.16-macos10.14-x86_64/bin/mysql /usr/local/bin
成功解决
要在已经启动MySQL服务下使用MySQL
MacBookAir:~ **$ mysql --version
mysql Ver 8.0.16 for macos10.14 on x86_64 (MySQL Community Server - GPL)