Rocky 9 非root用户源码安装postgresql
环境
Rocky 9
postgresql 15.1
准备
-
在root用户下安装所需要依赖的包
yum install readline* zlib* gcc gcc-c++ automake autoconf libtool make felx bison lrzsz -y
-
创建postgres用户 设置密码
useradd postgres
passwd postgres
-
进入到所创建的用户空间
su - postgres
-
在所创建的用户空间创建两个目录,分别是env、software 。
mkdir env software
-
将postgresql源码上传到software目录下,可以在postgres 用户下在xshell进行拖拽上传(因为安装了lrzsz包)
安装Postgresql
-
在postgres用户下,对上传的源码进行解压
tar -zxvf postgresql-15.1.tar.gz
-
创建安装目录
cd ~/env
mkdir pgsql
-
进入到解压的目录,编译并且安装postgresql
cd ~/software/postgresql-15.1
#编译,并指定后期安装的目录
./configure --prefix=~/env/pgsql
#安装
make -j10
make install
如果一切顺利的话会在/home/postgres/env/pgsql目录下生成 bin include lib share 目录
-
创建数据目录与日志目录
cd ~/env/pgsql
mkdir data logs
-
配置一下环境变量
vi ~/.bash_profile
export POSTGRES_HOME=/home/postgresexport ENV_HOME=$POSTGRES_HOME/env
export PG_HOME=$ENV_HOME/pgsql
export LD_LIBRARY_PATH=${PG_HOME}/lib:$LD_LIBRARY_PATH
export PG_DATA=${PG_HOME}/data
export PG_LOG=${PG_HOME}/logs/logout
export PATH=${PG_HOME}/bin:$PATH
保存并退出
使环境生效: source ~/.bash_profile
-
初始化数据库
cd ~/env/pgsql
initdb data
-
修改配置文件,设置允许外界访问
1、修改pg_hba.conf 配置文件
将 # IPv4 local connections: 下的配置更改为
host all all 0.0.0.0/0 md5
保存文件
2、 修改postgresql.conf配置文件
listen_addresses=’*’
max_worker_processes = 128
保存文件
-
启动数据库
pg_ctl -D ${PG_DATA} -l ${PG_LOG} start
-
连接数据库
执行 psql postgres
如果可以成功进入postgres 数据库中
则说明postgresql数据库安装成功。
-
修改登陆postgresql 密码,并且外部连接
alter user postgres with password ‘123456’;
使用navicat连接,可能会报超时的错误,这时候可以切换到root用户,然后关闭防火墙
systemctl stop firewalld.service