質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.35%
PostgreSQL

PostgreSQLはオープンソースのオブジェクトリレーショナルデータベース管理システムです。 Oracle Databaseで使われるPL/SQLを参考に実装されたビルトイン言語で、Windows、 Mac、Linux、UNIX、MSなどいくつものプラットフォームに対応しています。

MacOS(OSX)

MacOSとは、Appleの開発していたGUI(グラフィカルユーザーインターフェース)を採用したオペレーションシステム(OS)です。Macintoshと共に、市場に出てGUIの普及に大きく貢献しました。

Q&A

解決済

1回答

482閲覧

PostgreSQL の Mac へのソースインストール方法

退会済みユーザー

退会済みユーザー

総合スコア0

PostgreSQL

PostgreSQLはオープンソースのオブジェクトリレーショナルデータベース管理システムです。 Oracle Databaseで使われるPL/SQLを参考に実装されたビルトイン言語で、Windows、 Mac、Linux、UNIX、MSなどいくつものプラットフォームに対応しています。

MacOS(OSX)

MacOSとは、Appleの開発していたGUI(グラフィカルユーザーインターフェース)を採用したオペレーションシステム(OS)です。Macintoshと共に、市場に出てGUIの普及に大きく貢献しました。

0グッド

0クリップ

投稿2020/05/24 05:02

PostgreSQL の Mac でのソースインストール方法

アプリ改修に合わせ、 PostgreSQL 10.7 を探し、
ターミナルで、ソースインストールをしています。

先に、 OS レベルで、 postgres という名前でユーザを用意しないといけないのでしょうか ?

その後、その postgres ユーザで Mac にログインしなおして、
PostgreSQL ユーザ名を作成。

最低 2 アカウント OS 上に必要なのでしょうか ?

ソースインストールの手順のほとんどをネットで見たつもりですが、
OS 違いもありますが、なかなか難しく思っています。

詳しい方、教えて頂ければ幸いです。

宜しくお願い致します。

macOS Mojave 10.14.6
PostgreSQL 10.7

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

nico25

2020/05/24 05:07

「 OS レベルで、 postgres という名前でユーザを用意」する必要はないはずです。 > 先に、 OS レベルで、 postgres という名前でユーザを用意しないといけないのでしょうか ? インストールしたものの PostgreSQL サーバにログインできていない、ということでしょうか?
退会済みユーザー

退会済みユーザー

2020/05/24 05:22

以下 URL の最終的な回答のイメージに疑問を持ってました。 https://teratail.com/questions/10618 不便だなと。。。 私の場合は、なんらユーザの作成が出来ず、 sudo su - で、root で入りました。 その後は、この方法は違うと止めて、調べだしました。
nico25

2020/05/24 06:15

なるほどですね。 ちなみになんですが「この方法は違う」というのは、「PostgreSQL サーバのインストール方法が違う」、ということでしょうか?それとも「PostgreSQL サーバへのログイン方法が違う」、ということでしょうか?
退会済みユーザー

退会済みユーザー

2020/05/24 06:32

PostgreSQL サーバの正しいインストール手順を知りたいという表現でした。 情報を拾い集めても、情報が繋がらなかったもので。
hoshi-takanori

2020/05/24 14:00 編集

PostgreSQL では、 ・OS のユーザー ・PostgreSQL ユーザー (PostgreSQL スーパーユーザーと PostgreSQL 一般ユーザーがあります) ・PostgreSQL データベース名 が、実際は独立しているけど、利便性のために関連づけられていることが多いために混乱しているのではないかと。 PostgreSQL を利用するために必要なのは PostgreSQL のユーザーで、これは OS のユーザーとは無関係に作成できます。が、OS のユーザーと同じ名前で作ると psql コマンドで PostgreSQL へログインする際にパスワードを省略できるように設定することが可能なため、OS のユーザーと同じ名前の PostgreSQL ユーザーを作る習慣があります。 また、最初に PostgreSQL スーパーユーザーを作る必要があり、postgres という名前で作るのが一般的です。この際、対応する OS ユーザーがあると便利なのですが、これを root にするのはセキュリティ上好ましくないという判断なので、UNIX 系の環境では postgres という名前の OS ユーザーを作って PostgreSQL の設定ファイルやサーバープロセスは postgres という名前の OS ユーザーに所属させるのが一般的です。 さらに、PostgreSQL のデータベースに関する情報 (ユーザーやデータベースやテーブルの一覧など) は専用のデータベースで管理されていて、これも postgres という名前になっています。このため、su postgres で postgres という名前の OS ユーザーになって psql コマンドを実行すると、postgres という名前の PostgreSQL ユーザー (スーパーユーザー) で postgres データベース (PostgreSQL 管理用データベース) にアクセスすることになります。 とはいえ、PostgreSQL サーバーを動かす OS ユーザーや PostgreSQL スーパーユーザーに関しては設定可能で、例えば Homebrew でインストールした場合は PostgreSQL サーバーはユーザー権限で動かしますし、PostgreSQL スーパーユーザーの名前も postgres ではなくユーザーの名前になってたりします。
guest

回答1

0

ベストアンサー

インストール方法は おそらく 間違ってはいないのではないかなと思います。

原因

Mac OS のユーザを作られているのを見ると、psql 周りの挙動を誤解されているのかなと思いました。

その後、その postgres ユーザで Mac にログインしなおして、PostgreSQL ユーザ名を作成。

説明

ログイン時に psql とだけ打ち込んでしまうと...

$ psql

OS のユーザ名を元に 自動的に PostgreSQL サーバのユーザ名とデータベース名を指定します。

$ psql [OSのユーザ名]

インストール直後は postgres という名前の PotgreSQLサーバのユーザとデータベースが作成されました(自分の環境下では)。そのため postgres を指定するとうまくログインできました。

$ psql postgres

確認した環境

  • macOS High Sierra 10.13.6
  • PostgreSQL 10.13

投稿2020/05/24 07:13

nico25

総合スコア830

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

退会済みユーザー

退会済みユーザー

2020/05/24 07:53

わかりやすくて、自分の考え方もまとまりました。 回答ありがとうございます。
nico25

2020/05/24 07:55

恐れいります :)
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.35%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問