centos7にpgsql10.3をインストールします
序文
centos7にpgsql-10.3をインストールし、インターネット上で多くの記事を見つけましたが、成功するまでに長い時間がかかりました。次に、インストールプロセスを要約して、次回の時間の浪費を防ぎます。
pgsql-10.3をダウンロード
システムバージョンcentos7
pgsql-10.3をダウンロードします。https://www.postgresql.org/ftp/source/v10.3/
サーバーにtarパッケージをアップロードする
$ scp postgresql-10.3.tar.gz [email protected]:~
The authenticity of host '192.168.56.189 (192.168.56.189)' can't be established.
ECDSA key fingerprint is SHA256:q2lore2LaeBsH4j3jmEVg0VYbfudDDR4LkmF/rt+Zp0.
Are you sure you want to continue connecting (yes/no)? yes
Failed to add the host to the list of known hosts (/home/liz/.ssh/known_hosts).
[email protected]'s password:
postgresql-10.3.tar.gz 100% 25MB 37.5MB/s 00:00
インストールする
解凍
# tar -xzvf postgresql-10.3.tar.gz
基本的なツールをインストールする
yum install -y vim lrzsz tree wget gcc gcc-c++ readline-devel zlib-devel
コンパイルする
解凍したフォルダに移動し、コマンドを実行します
./configure --prefix=/usr/local/pgsql
以下/usr/local/pgsql
は、コンパイルおよびインストールされる特定の場所を示しています。独自の場所を定義できます
インストールする
make && make install
次に、インストールが完了
するまで待機します... PostgreSQL installation complete.
インストールが成功したように見えます
ディレクトリデータの作成、ログ
# mkdir /usr/local/pgsql/data
# mkdir /usr/local/pgsql/log
システム環境変数を追加する
vim /etc/profile
最後に書く
PGHOME=/usr/local/pgsql
export PGHOME
PGDATA=/usr/local/pgsql/data
export PGDATA
PATH=$PATH:$HOME/.local/bin:$HOME/bin:$PGHOME/bin
注:/usr/local/pgsql
独自のインストールディレクトリに変更する必要があります
構成ファイルを有効にする
# source /etc/profile
ユーザーpostgresを追加して権限を与える
# adduser postgres
# chown -R postgres:root /usr/local/pgsql/
パスワードを変更する(ルートで)
# passwd postgres
更改用户 postgres 的密码 。
新的 密码:
无效的密码: 密码未通过字典检查 - 过于简单化/系统化
重新输入新的 密码:
passwd:所有的身份验证令牌已经成功更新。
データベースを初期化する
注:postgres
ユーザーの下で初期化する必要があります
ユーザーpostgresを切り替える
# su postgres
次に、データベースを初期化します
# /usr/local/pgsql/bin/initdb -D /usr/local/pgsql/data/
設定ファイルを編集
# vim /usr/local/ppgsql/data/postgresql.conf
修正
listen_addresses = '*'
port = 5432
また変更
# vim /usr/local/pgsql/data/pg_hba.conf
最後に追加
説明:
タイプ:pg接続方法、ローカル:ローカルUNIXソケット、ホスト:tcp / ip接続
データベース:指定データベース
ユーザー:指定データベースユーザー
アドレス:IPアドレス、特定のホストまたは特定のネットワークセグメントを定義できます。32は全体を表しますIPアドレスは固定IPと同等です。24は最初の3桁のみを表し、最後の桁は0から255までのいずれかの
方法です。認証方法は、通常、ident、md5、パスワード、信頼、拒否です
md5は、一般的に使用されるパスワード認証方法です。
パスワードはクリアテキストのパスワードとしてデータベースに送信されます。本番環境では使用しないことをお勧めします。
信頼とは、データベースのユーザー名を知っている限りログインすることであり、運用環境での使用はお勧めしません。
拒否は認証を拒否することです。
サービスを開始
$ pg_ctl start -l /usr/local/pgsql/log/pg_server.log
could not change directory to "/root/postgresql-10.3": 权限不够
waiting for server to start.... done
server started
開始、停止、再起動
./pg_ctl start\stop\restart -D /usr/local/pgsql/data/
バージョンを表示
# psql -V
psql (PostgreSQL) 10.3
ブートを設定
pgsインストールパッケージのlinuxファイルを/etc/init.dまたは/etc/rc.dにコピーします。
[root@10 postgresql-10.3]# cp contrib/start-scripts/linux /etc/init.d/pgsql
インストールパスに従ってpgsqlファイルの構成項目を変更します。
## EDIT FROM HERE
# Installation prefix (安装路径)
prefix=/usr/local/pgsql
# Data directory (data路径)
PGDATA="/usr/local/pgsql/data"
pgsqlファイルの権限を変更する
# chmod +x /etc/init.d/pgsql
起動時にpgsqlファイルを実行する
# chkconfig --add pgsql
ファイアウォールをオフにする
$ systemctl stop firewalld
$ systemctl disable firewalld