19.CentOS7下PostgreSQL安裝過程


CentOS7下PostgreSQL安裝過程

裝包

sudo yum install postgresql-server postgresql-contrib

說明:

  • 這種方式直接明了,其他方法也可以參考官網的安裝介紹。centos是紅帽系的。
  • postgresql主要有以下幾個包:
    • postgresql-client:libraries and client binaries
    • postgresql-server:core database server
    • postgresql-contrib:additional supplied modules
    • postgresql-devel:libraries and headers for C language development
    • pgadmin3:pgAdmin III graphical administration utility
  • 作為服務器,只用裝postgresql-server和postgresql-contrib

初始化

sudo postgresql-setup initdb

說明:

  • 根據紅帽系的策略,PostgreSQL安裝完成后,相應的服務不會自動啟動,數據庫也不會自動初始化,初始化操作需要手動進行。

修改pg_hba.conf

sudo vim /var/lib/pgsql/data/pg_hba.conf

插入一行:host all all 0.0.0.0/0 md5

說明:

  • 配置文件目錄可能帶版本號,比如pgsql/9.5/data這種,自己找一下。
  • hba means host-based authentication
  • 默認情況下,PostgreSQL不允許password authentication,不允許非localhost的主機,不允許遠程登錄。(所謂默認情況就是PostgreSQL剛裝好時候conf文件里寫的情況。)
  • 插入的那一行,格式為CONNECTIONTYPE DATABASE USER ADDRESS METHDO
  • 字段含義、各字段可選值、配置方式直接參考conf文件的注釋。
  • 提一句,ADDRESS那里自己配一下,不要太放開了,md5即用密碼認證身份登錄。

修改postgresql.conf

sudo vim /var/lib/pgsql/data/postgresql.conf

改一行:listen_addresses = '*'

說明:

  • postgresql.conf文件中涉及諸如:最大連接數、監聽地址,監聽端口、日志、內存、硬盤等等各種設置。文件注釋詳細,自己按需修改,用不到的先不做了解。
  • 監聽地址原值為localhost,這時只能本機訪問,改成*或0.0.0.0或逗號分隔字符串都行。
  • 很多值是change requires restart,需要重啟postgresql-9.5服務(要帶版本號)。

重啟postgresql服務

systemctl restart postgresql-9.5.service

或者sudo service postgresql-9.5 restart

說明:

  • 重啟服務使之前修改的配置生效。

注意事項

  • 安裝目錄/var/lib/pgsql及目錄下文件或文件夾的可讀、可寫、可操作統統只開放給用戶postgres
  • 文件不能操作時,請sudo su - postgres切換到postgres用戶進行操作,千萬不要改動默認的文件權限,否則會導致postgresql服務無法啟動。
  • 在終端輸入psql命令時,常常會遇到下面這個錯。這個錯有兩個解決方式:
    • 重啟postgresql服務。
    • 刪掉/usr/local/var/postgres/postmaster.pid文件。

psql: could not connect to server: No such file or directory
    Is the server running locally and accepting
    connections on Unix domain socket "/tmp/.s.PGSQL.5432"?

  • postgres的默認密碼為空,上面弄好以后記得改密碼。
    • sudo su - postgres
    • psql
    • ALTER USER postgres PASSWORD '123456';


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM