centos7 安装 PostgreSql
第一步、下载与安装
postgre 支持 windows 和 linux 两种系统,本次在linux环境安装。
下载地址:postgreSQL官网
在官网上选择 Linux系统,使用 yum来下载软件,只需选择对应版本和平台,即可生成下载和安装的脚本。
生成脚本如下所示。
# 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 postgresql15-server # Optionally initialize the database and enable automatic start: sudo /usr/pgsql-15/bin/postgresql-15-setup initdb sudo systemctl enable postgresql-15 sudo systemctl start postgresql-15
安装时可能会报以下错误:
Error: Package: postgresql15-15.1-1PGDG.rhel7.x86_64 (pgdg15)
Requires: libzstd >= 1.4.0
解决方法:
wget https://download-ib01.fedoraproject.org/pub/epel/7/x86_64/Packages/l/libzstd-1.5.2-1.el7.x86_64.rpm
yum install -y ./libzstd-1.5.2-1.el7.x86_64.rpm
配置postgresql
vi /var/lib/pgsql/15/data/postgresql.conf
把
#listen_addresses = 'localhost'
改为
listen_addresses = '*'
vi /var/lib/pgsql/15/data/pg_hba.conf
在
host all all 127.0.0.1/32 ident
下面加上你的电脑ip
host all all 客户端ip/32 password
ip配置规则
32 -> 192.168.1.1/32 表示必须是来自这个IP地址的访问才合法;
24 -> 192.168.1.0/24 表示只要来自192.168.1.0 ~ 192.168.1.255的都合法;
16 -> 192.168.0.0/16 表示只要来自192.168.0.0 ~ 192.168.255.255的都合法;
8 -> 192.0.0.0/16 表示只要来自192.0.0.0 ~ 192.255.255.255的都合法;
0 -> 0.0.0.0/0 表示全部IP地址都合法,/左边的IP地址随便了只要是合法的IP地址即可;
设置数据库密码
centos会自动生成一个postgres用户
所以,切换用户su postgres
会出现bash-4.2$,在后边输入psql回车,会出现postgres=#,
输入:ALTER USER postgres WITH PASSWORD '123456';
这样,把数据库用户postgres的密码设置为123456了
输入 \q 退出 postgresql环境,然后su切换到root用户
重启服务
systemctl restart postgresql-15
关于日志
目录所在:/var/lib/pgsql/data/pg_log 普通日志
/var/lib/pgsql/data/pg_xlog 比较大的wal日志,用于回滚,不能随便删除,需要用命令删除
删除pg_xlog 命令:pg_resetxlog -o 16646 -x 19545 -f /var/lib/pgsql/data/