1、创建postgres用户和组
#创建postgres用户组和用户
groupadd -g 26 postgres
useradd -u 26 -g postgres -d /usr/local/pgsql postgres
#修改用户密码
passwd 用户名
创建一个postgres用户组,然后再创建一个postgres用户。
并给这个用户赋到postgres用户组中;
通过cat/etc/group,可以看到如下的用户组信息。
![](https://img.laitimes.com/img/__Qf2AjLwojIjJCLyojI0JCLicmbw5SZkV2NjJWYxEWMmVjNhhDOxcjZiljY4QWMjJTO5MTMm9CX0JXZ252bj91Ztl2Lc52YucWbp5GZzNmLn9Gbi1yZtl2Lc9CX6MHc0RHaiojIsJye.png)
cat /etc/passwd查看所有的用户信息,详情如下图
2、安装依赖包
yum install -y python-develperl-ExtUtils-Embed python-devel gcc-c++ openssl-devel readline readline-develzlib zlib-devel openssl openssl-devel pam pam-devel libxml2 libxml2-devellibxslt libxslt-devel openldap openldap-devel libgeos-dev libproj-devlibgdal-dev xsltproc docbook-xsl docbook-xml imagemagick libmagickcore-devdblatex tcl tcl-devel unixODBC unixODBC-devel libpng12 libpng12-devel
3、安装
使用root用户操作:
具体步骤如下:
cd /home
wget https://ftp.postgresql.org/pub/source/v12.2/postgresql-12.2.tar.gz(ver for 12)
tar -zxvfpostgresql-10.6.tar.gz
cd postgresql-10.6 #在此目录下进行下面的操作直到make install
./configure--prefix=/home/pgsql-10 --with-wal-segsize=32
make 建议用gmake world
make install 建议用gmake install-world
# 创建目录,用于初始化和创建数据库
mkdir /home/pgsql-10/{data,backups,scripts,archive_wals}
#也可以手动初始化,创建自定义的数据目录。在此我们使用自定义的数据目录
mkdir/home/pgsql-10/data
cd /home/pgsql-10/data
chown -Rpostgres.postgres data 【postgres.postgres:用户组.用户】【data表示data目录】
【chown -Rpostgres.postgres pgsql】这个命令很重要,否则不能初始化数据库
4、初始化数据库
默认情况下,数据目录为空,我们需要先对数据目录进行初始化才能生成配置文件及其他相关目录
initdb -E UTF-8 -D/home/pgsql-10/data --locale=en_US.UTF-8 -U postgres -W
initdb: cannot berun as root
#必须切换到postgres用户才能初始化
[[email protected] ~]# su- postgres
-bash-4.2$ initdb -E UTF-8 -D /home/pgsql-10/data--locale=en_US.UTF-8 -U postgres -W
出现如下提示,说明数据库安装成功。
Success. You cannow start the database server using:
postgres -D /home/pgsql-10/data
or
pg_ctl -D /home/pgsql-10/data -l logfilestart
6、修改配置postgresql.conf
vi /home/pgsql-10/data/postgresql.conf
#修改
listen_addresses ='*'
修改配置pg_hba.conf
vi/data56/pgsql/data/pg_hba.conf
#添加
host all all 0.0.0.0/0 trust
关于pg_hba.conf的详细配置可以参考其他资料。
#添加环境变量
vi /etc/profile
export PGHOME=/home/pgsql-10
export PGDATA=/home/pgsql-10/data
exportPATH=$PGHOME/bin:$PATH:$HOME/bin
export LD_LIBRARY_PATH=$PGHOME/lib:/lib64:/usr/lib64:/data56/lib64:/lib:/usr/lib:/data56/lib:$LD_LIBRARY_PATH
source/etc/profile
7、使用psql来登录。
su postgres
数据库操作命令:
重启数据库
/home/pgsql-10/bin/pg_ctlrestart -D /home/pgsql-10/data/ -m fast
启动
/home/pgsql-10/bin/pg_ctlstart -D /home/pgsql-10/data/
停止
/home/pgsql-10/bin/pg_ctlstop -D /home/pgsql-10/data/ -m fast