在线安装
# Install the repository RPM:
sudo yum install -y https://download.postgresql.org/pub/repos/yum/reporpms/EL-7-x86_64/pgdg-redhat-repo-latest.noarch.rpm
# Install PostgreSQL:
sudo yum install -y postgresql12-server
# Optionally initialize the database and enable automatic start:
sudo /usr/pgsql-12/bin/postgresql-12-setup initdb
sudo systemctl enable postgresql-12
sudo systemctl start postgresql-12
启动之后,配置防火墙
firewall-cmd --permanent --add-port=5432/tcp
firewall-cmd --permanent --add-port=80/tcp
firewall-cmd --reload
修改用户密码
sudo -u postgres psql
ALTER USER postgres WITH PASSWORD 'postgres'
\q
修改系统用户postgres密码
由于rpm安装会自动创建一个postgres用户,密码随机
passwd postgres
开启远程访问
切换到postgres用户
su postgres
vim /var/lib/pgsql/12/data/postgresql.conf
修改#listen_addresses = 'localhost' 为 listen_addresses='*'
当然,此处‘*’也可以改为任何你想开放的服务器IP
信任远程连接
vim /var/lib/pgsql/10/data/pg_hba.conf
修改如下内容,信任指定服务器连接
# IPv4 local connections:
host all all 127.0.0.1/32 md5
host all all 0.0.0.0/0 md5
重启服务
systemctl restart postgresql-12
创建数据库和用户
sudo -u postgres psql
create user username with password 'password';
alter role username with superuser;
create database db_lift owner username ;
psql -U username -d db_lift
导入数据
psql -d db_lift -U username -f "path"/local.sql
源码安装
wget https://ftp.postgresql.org/pub/source/v12.7/postgresql-12.7.tar.gz
tar -zxvf postgresql-12.7.tar.gz
sudo mv postgresql-12.7 /usr/local/pgsql12
//安装依赖
yum install -y readline-devel zlib-devel make openssl-devel gcc
cd /usr/local/pgsql12
./configure --prefix="/usr/local/pgsql12"
make
make install
# 创建postgres用户组
groupadd postgres
# 创建postgres用户,用户位于postgres组内
useradd -g postgres postgres
# 为postgres用户设置密码
passwd postgres
su postgres
# 切换到用户根目录下(/home/postgres)
cd ~
# 编辑 .bash_profile
vi .bash_profile
# 修改为
# 新增
export PG_HOME=/usr/local/pgsql12
export PATH=$PG_HOME/bin:$PATH
# 保存,退出(命令模式下Esc)
# 输入: wq Enter(回车)
# 重载.bash_profile
source .bash_profile
初始化数据库
initdb -D /usr/local/pgsql/data
启动数据库
/usr/local/pgsql/bin/pg_ctl -D /usr/local/pgsql/data -l /usr/local/pgsql/data/logfile start
启动
pg_ctl -D /home/postgres/PGDATA -l logfile start
停止
pg_ctl -D /home/postgres/PGDATA -l logfile stop
重启
pg_ctl -D /home/postgres/PGDATA -l logfile restart
查看状态
pg_ctl -D /home/postgres/PGDATA -l logfile status
创建用户和数据库和在线的一样
网友评论