PostgreSQL安装
在CentOS7上安装一个PgSQL13,记录过程如下:
PGSQL提供了源码和yum安装两种方式,这里采用yum安装,会自动创建一个postgres用户。
由于yum安装默认指定的数据库目录是/var/lib/pgsql/13/data,但由于规划数据存放/u02/pgsql/data/,
所以和官网的安装稍有不同,在整个过程如下:
# 安装仓库的rpm包
sudo yum install -y https://download.postgresql.org/pub/repos/yum/reporpms/EL-7-x86_64/pgdg-redhat-repo-latest.noarch.rpm
# 安装PostgreSQL:
sudo yum install -y postgresql13-server
# 创建数据库目录
sudo mkdir -p /u02/pgsql/data/
sudo chown -R postgres:postgres /u02/pgsql/
# 初始化一个数据库存储区
su postgres
/usr/pgsql-13/bin/initdb -D /u02/pgsql/data
修改/usr/lib/systemd/system/postgresql-13.service中的文件PGDATA
Environment=PGDATA=/u02/pgsql/data/
启动pgsql,并设置开机自启动
sudo systemctl daemon-reload
sudo systemctl start postgresql-13
sudo systemctl enable postgresql-13
修改postgres的环境变量
进入postgres用户下,修改~/.bash_profile
vim ~/.bash_profile
# 修改PGDATA
PGDATA=/u02/pgsql/data
# 增加一行设置PS1
export PS1="[\u@\h \W]\$"
修改后如图所示:
使环境变量生效
source ~/.bash_profile
登录pgsql
默认情况下(除非在运行时更改initdb)它将与初始化数据库的操作系统用户同名。通常,此角色将命名为postgres。
[postgres@dbServer21 ~]$psql
psql (13.5)
Type "help" for help.
postgres=#
配置远程用户可登录
修改配置文件
listen_addresses = '192.168.0.21'
port = 5432 # (change requires restart)
max_connections = 500 # (change requires restart)
修改/u02/pgsql/data/pg_hba.conf,放开内网网段的访问
host all all 192.168.0.1/24 trust
需要重启pgsql生效。
附官网的安装步骤
sudo yum install -y https://download.postgresql.org/pub/repos/yum/reporpms/EL-7-x86_64/pgdg-redhat-repo-latest.noarch.rpm
sudo yum install -y postgresql13-server
sudo /usr/pgsql-13/bin/postgresql-13-setup initdb
sudo systemctl enable postgresql-13
sudo systemctl start postgresql-13