MySQL 配置环境变量,解决重新 source .zsh_profile 问题

1. 问题介绍

在 Mac 命令行尝试运行 mysql -u root -p 时,遇到了 zsh: command not found: mysql 的错误提示。这表明系统无法找到 mysql 命令,即该命令不在系统的可执行路径中。我们知道,在Unix/Linux系统中,执行命令时,系统会在一些预定义的目录中查找可执行文件。这些目录的集合被定义为系统的 PATH。如果命令不在这些目录中,系统将无法找到它,从而导致“command not found”错误。

根据 zsh: command not found: mysql 提示内容,我使用的是 zsh shell,不同人的 Mac 可能使用的 shell 不同,比如 bash shell、ksh shell、tcsh shell 等。不同的 shell 之间其实可以切换,使用不同 shell 的小伙伴将本文中涉及到的文件名替换,其他步骤保持一致即可,当然也可以考虑换个 shell。参考 Mac 切换终端 shell 方法


2. 配置文件

首先我们配置一个 .zsh_profile 文件 (如果用的是 bash shell,就命名为 .bash_profile):

sudo vim .zsh_profile

输入密码后,按“i” 进入 INSERT 插入模式后将 export PATH=${PATH}:/usr/local/mysql/bin 写进 .zsh_profile 文件中。注:sudo 是用于以超级用户或系统管理员的权限执行指定的命令。执行 sudo 命令需要提供用户密码,以确认用户有足够的权限执行该命令。vim .zsh_profile 这部分意思是使用 vim 编辑器对 .zsh_profile 文件进行编辑和保存更改。

MySQL 配置环境变量,解决重新 source .zsh_profile 问题_第1张图片

 shift+zz 保存并退出后,执行:

source .zsh_profile

source 命令用于 shell 环境中执行指定的脚本文件,作用是重新加载或应用指定脚本文件中的配置,使得其中的环境变量和其他设置在 shell 会话中生效。执行完 source 命令后就可以执行 $ mysql -u root -p 命令了。

因为现在我们已经将 export PATH=${PATH}:/usr/local/mysql/bin,也就是 mysql 的 bin 包写进了一个叫 .zsh_profile 的脚本文件,并且保存并执行了该文件,也就意味着环境变量配置完成!所以在当前 Terminal 可以正常使用 mysql 命令。

MySQL 配置环境变量,解决重新 source .zsh_profile 问题_第2张图片

但是,这意味着我们每次重新打开一个 Terminal,必须要重新运行 source .zsh_profile 命令,才能使用 mysql 命令,否则就会提示找不到 mysql 命令。那么,有什么办法可以自动执行 source .zsh_profile 命令,让我们每次打开 Terminal 都可以直接执行 mysql 命令呢?请继续往下看。


3. 解决每次打开新的 Terminal 都要重新 source .zsh_profile

现在我们的 .zsh_profile 文件已经保存在自己的 Mac 电脑上了,为了不用每次重开一个 Terminal 都执行一次这个文件,我们可以将执行这个文件的命令写进 .zshrc 配置文件中。.zshrc 配置文件是属于 zsh shell 的配置文件,它包含了用于配置 zsh 的命令和设置,.zshrc 中的配置项在每次启动新的 zsh shell 时都会生效。所以只要我们将执行 .zsh_profile 的命令写进 .zshrc 就能保证每次启动新的 shell 都能自动执行 source .zsh_profile。

执行以下命令编辑 .zshrc 配置文件,将以下内容写进配置文件,内容的意思是检查 .zsh_profile 文件如果存在就执行其中的内容 (执行的内容就是 mysql 的 bin 包)。shift + zz 保存并退出后,不要忘记 source ~/.zshrc 命令。

vi ~/.zshrc

MySQL 配置环境变量,解决重新 source .zsh_profile 问题_第3张图片

source ~/.zshrc

从此以后,如果我们打开新的 Terminal,就可以跳过 source .zsh_profile 命令,直接运行 mysql -u root -p 命令啦。

你可能感兴趣的:(SQL,专栏,macos,mysql,数据库)