sql >> データベース >  >> RDS >> PostgreSQL

PostgresqlDockerロールが存在しません

    問題は非常に単純だったので、私のコンピューターはすでにPostgresのインスタンスを実行していましたが、:5432でまだ実行されていることに気づいていませんでした(Docker内ではありません)。 、チェック:

    $ lsof -n -i:5432 | grep LISTEN
    

    そのため、https://gist.github.com/sgnl/609557ebacd3378f3b72> 、実行しました

    $ pg-stop
    

    そして、Dockerインスタンスへの接続に問題はありませんでした。

    編集(2019/07/02)

    この質問は最近10,000回の視聴回数を超えたので、なぜこれが起こったのかについて詳しく説明する必要があると思いました。

    通常、Dockerを介して実行し、Pythonを使用して、postgresデータベースに接続するには、psycopg2をインストールする必要があります。 、pip3 install psycopg2経由 、ただし、このコマンドを実行すると、次のようになります。

    Error: pg_config executable not found.
    

    これは、psycopg2がpostgresライブラリのオペレーティングシステムのインストールを必要とするためです:

    yum install postgresql-devel
    apt-get install postgresql-client
    

    さて、Macでは、brewでも同じことをする必要があります:

    brew install postgresql
    

    私が気づかなかったことの1つは、Macで上記を実行すると、必要なライブラリがインストールされるだけでなく、 :5432でデータベースを開始します 。これはすべてバックグラウンドで行われたため、ポートが使用されていることなどを通知する通常のエラーがポップアップ表示されなかったため、これが問題であるとは思いもしませんでした...



    1. PostgreSQL:PRIMARY KEYまたはUNIQUEにカスタム名を指定することは可能ですか?

    2. PostgreSQLでPDOを使用するときにプレースホルダーとして疑問符を無視する方法

    3. PHPクエリは結果を返しません

    4. ClusterControlを使用してPostgreSQLシャーディングを構成する方法