step1:官网下载postgres源码
URL:https://www.postgresql.org/ftp/source/
step2:解压源码文件
tar -zxvf postgresql-12.0.tar.gz
step3:移动解压后的文件到安装目录
mv postgresql-12.0 /usr/local/pgsql
step4:执行./configure命令
./configure --prefix=/usr/local/pgsql --without-readline --enable-debug 相关的配置选项:https://blog.****.net/weixin_34067049/article/details/90423264
指定安装后的可执行文件资源目录
step5:执行make命令
make
step6:执行make install命令
make install psql --version //查询安装版本
step7:添加用户,设置目录权限
sudo adduser postgres sudo passwd postgres sudo mkdir -p /usr/local/pgsql/data sudo chown -R postgres:root /usr/local/pgsql
此处若在root用户下执行过chmod -R 777 *命令,容易造成权限错误,导致postgres服务无法启动,需将root权限改回
查看/usr/local/pgsql/data目录下的serverlog日志文件,查看报错,执行命令改回权限chmod 0700 /usr/local/pgsql/data
step8:配置环境变量
切换用户 su - postgres
打开文件 vim ~/ .bash_profile 添加路径 export PATH=$PATH:/usr/local/pgsql/bin 执行生效 source /etc/profile
step9:切换用户,初始化数据
su - postgres /usr/local/pgsql/bin/initdb -D /usr/local/pgsql/data
step10:Linux开机自启动服务
cp /usr/local/pgsql/contrib/start-scripts/linux /etc/init.d/postgresql //将linux文件复制到新目录init.d,并重命名为postgresql chmod u+x /etc/init.d/postgresql //只授予这个文件的所属者u执行的权限x
systemctl enable postgresql systemctl start postgresql
step11:创建测试库(切换到用户postgres下执行命令)
su - postgres createdb test psql test
step12:允许所有连接
打开文件 /usr/local/pgsql/data/pg_hba.conf 添加内容 host all all 0.0.0.0/ trust
step13:侦听所有连接
打开文件 /usr/local/pgsql/data/postgresql.conf 添加内容 listen_addresses = '*'
logging_collector = on
-----------------------------------------------------------------------------------------------------
切换目录 cd /etc/init.d
启动命令 ./postgresql start
重启命令 ./postgresql restart
-----------------------------------------------------------------------------------------------------
step14:DataGrip连接测试库test