psqlコマンドが使えなかったがPATHを追加する必要があったという話

PostgreSQLをターミナル上で動かす際にpsqlというものがあります。

このpsqlが使えなかったケースがあり、結論としてはPATHが通っていなかったという状態でした。

Mac Ventura 13.6とHomebrewは4.2.17 の環境で確認しました。

また、以下の参考記事と内容はほぼ同一です。プラスアルファでインストール先が分からなかったので調べた、という差分です。

※結果としては記事と同じ場所に配置されていました。

【Mac/PostgreSQL】psqlコマンドが使えないときの対処法

状態の確認

まずは、インストール済みのPostgreSQLのバージョンを確認します。

tatsuya@MacBook-Pro ~ % brew search postgresql
==> Formulae
postgresql@10       postgresql@12       postgresql@14 ✔     postgresql@16       postgrest
postgresql@11       postgresql@13       postgresql@15       qt-postgresql

brew searchコマンドを使うと、インストール済のpostgresqlが表示されます。

この段階で、psql --versionと入力すると実行できると思っていましたが、zsh: command not found: psqlとなり、実行できませんでした。

そこで冒頭の記事同様に手順を進めて PATH を書く必要があるので書こうとしましたが、インストール先がわからない状態でした。

解決策

【Mac】brew --prefix でパッケージのインストールパスを取得する という記事に従って、brew --prefix を実行します。

※この記事は先輩から教えてもらいました。

今回は postgresql@14のインストール先が知りたいので、入力すると、結果がわかりました。

tatsuya@MacBook-Pro ~ % brew --prefix postgresql@14
/usr/local/opt/postgresql@14

実行パスがわかったので、.zshrcexport PATH="/usr/local/opt/postgresql@14/bin:$PATH"を追加して、ターミナルを再起動するとpsqlが実行できるようになりました。

tatsuya@MacBook-Pro ~ % psql --version
psql (PostgreSQL) 14.9 (Homebrew)