数据库命令找不到的可能性原因及解决方法

1、问题描述

$ psql
bash: psql: command not found...

安装完数据库后,无法使用数据库命令

2、问题原因

  1. 未设置环境变量
  2. 环境变量错误
  3. 数据库安装失败

3、解决方案

(1) 未设置环境变量

命令所在的路径需要配置在环境变量配置文件中。才能调用
查看是否能够查找到psql

$ which psql
/usr/bin/which: no psql in (/usr/local/bin:/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/home/hgdb565/.local/bin:/home/hgdb565/bin)

没有psql命令
设置正确环境变量

export HGDB_HOME=/opt/HighGo5.6.5
export PATH=$PATH:$HGDB_HOME/bin

能够查找到psql

$ which psql
/opt/HighGo5.6.5/bin/psql

(2) 环境变量错误

设置环境变量时。命令所在的路径设置错误,会导致无法找到相应命令

export PGHOME=/opt/HighGo5.6.5/hgdb
export PATH=$PATH:$PGHOME/bin

查找命令,在环境变量配置中找不到psql

$ which psql
/usr/bin/which: no psql in (/usr/local/bin:/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/home/hgdb565/.local/bin:/home/hgdb565/bin:/opt/HighGo5.6.5/hgdb/bin)

设置正确环境变量

export HGDB_HOME=/opt/HighGo5.6.5
export PATH=$PATH:$HGDB_HOME/bin

能够查找到psql

$ which psql
/opt/HighGo5.6.5/bin/psql

(3) 数据库安装失败

设置正确环境变量

export HGDB_HOME=/opt/HighGo5.6.5
export PATH=$PATH:$HGDB_HOME/bin

查找命令,无psql

$ which psql
/usr/bin/which: no psql in (/usr/local/bin:/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/home/hgdb565/.local/bin:/home/hgdb565/bin:/opt/HighGo5.6.5/bin)

查找对应的文件,无此文件

$ ls -atl /opt/HighGo5.6.5/bin/psql
ls: cannot access /opt/HighGo5.6.5/bin/psql: No such file or directory

说明数据库没有正确安装,数据库正常安装后,相应的命令调用程序都会存放在安装目录的bin下。