2016-06-22 56 views
0

我正在嘗試使用psycopg2連接到GitLab生產(與omnibus包一起安裝)postgresql數據庫。用psycopg2連接到gitlab生產postgresql數據庫?

我的配置是象下面這樣:

onn = psycopg2.connect(database="gitlabhq_production", user="gitlab-psql", host="/var/opt/gitlab/postgresql", port="5432") 

它提供了以下錯誤:

sudo -u gitlab-psql -i bash /opt/gitlab/embedded/bin/psql --port 5432 -h /var/opt/gitlab/postgresql -d gitlabhq_production 

作用:

FATAL: Peer authentication failed for user "gitlab-psql" 

我可以連接到PostgreSQL服務器上的命令行任何人都知道什麼是正確的參數傳入?

回答

1

對等身份驗證通過檢查用戶進程正在運行。在您的命令行示例中,使用sudo切換到gitlab-psql

有兩種方法來解決這個問題:

  1. 指定密碼到gitlab-psql Postgres的用戶(系統用戶!),並使用通過Python連接。設置密碼就是你需要像這樣一個超級用戶身份運行另一個查詢:

    sudo -u postgres psql -c "ALTER USER gitlab-psql WITH PASSWORD 'ReplaceThisWithYourLongAndSecurePassword';" 
    
  2. 運行Python腳本gitlab-psql像這樣:

    sudo -u gitlab-psql python /path/to/your/script.py 
    
+0

請問綜合-gitlab應用需要在向postgresql用戶gitlab-psql添加密碼後通過gitlab-ctl reconfigure進行的任何更改? –

相關問題