1. PostgreSQL安装
Linux版本这里使用的是7.x版本,最好是7.6或者7.8。
下载地址:https://www.postgresql.org/download/
选择好PGSQL的版本,Linux的发行版本
直接执行命令即可:
# 下载PGSQL的rpm包
sudo yum install -y https://download.postgresql.org/pub/repos/yum/reporpms/EL-7-x86_64/pgdg-redhat-repo-latest.noarch.rpm
# 安装PGSQL12的软件程序,需要下载,需要等一会,一般不会失败,即便失败,他也会重新帮你找镜像
sudo yum install -y postgresql12-server
# 数据库初始化
sudo /usr/pgsql-12/bin/postgresql-12-setup initdb
# 设置开启启动项,并设置为开启自行启动
sudo systemctl enable postgresql-12
# 启动PGSQL
sudo systemctl start postgresql-12
如果出错,可能是那些问题:
- 安装Linux的时候,一定要选择最小安装
- 你的Linux不能连接外网
- Linux中的5432端口,可能被占用了
PostgreSQL不推荐使用root管理,安装完成PostgreSQL之后,会默认创建一个用户:postgres
,切换到 postgres
用户:
su postgres
切换到 postgres
用户之后,输入 psql
即可进入 PostgreSQL 提供的客户端:
# 进入命令行
psql
# 查看有哪些库,如果是新安装的,有三个库,分别是postgres,template0,template1
\l
2. PostgreSQL配置
主要修改两个配置信息,一个是PostgreSQL的远程连接配置,一个是PostgreSQL的日志配置,对应配置文件在 /var/lib/pgsql/12/data
目录下,分别是 postgresql.conf
和 pg_hba.conf
。
上图可以看到,postgreSQL的核心文件,都属于postgres用户,操作的时候,尽可能的别用root用户,尽可能先切换到postgres用户去玩。
2.1 远程连接配置
PostgreSQL与MySQL一样,默认是不支持远程连接的,需要去修改 pg_hba.conf
配置文件,编写用户以及对应数据库和连接方式的编写模板:
- local:代表本地连接,host代表可以指定连接的address。
- database:编写数据库名,如果写all,代表所有库都能连接。
- user:编写连接的用户,如果写all,代表所有用户。
- address:代表哪些IP可以连接。
- method:加密方式,通常填写md5。
允许任意地址的全部用户连接所有数据库配置:
host all all 0.0.0.0/0 md5
为了实现远程连接,除了用户级别的这种配置,还要针对服务级别修改一个配置
服务级别的配置在 postgresql.conf
,修改 listen_addresses="*"
。
最后重启PostgreSQL:
# 使用root用户执行
sudo systemctl restart postgresql-12
2.2 配置数据库日志
打开 postgresql.conf
文件。
postgreSQL默认情况下,只保存7天的日志,循环覆盖。
# 代表日志是开启的。
logging_collector = on
# 日志存放的路径,默认放到当前目录下的log里
log_directory = 'log'
# 日志的文件名,默认是postgresql为前缀,星期作为后缀
log_filename = 'postgresql-%a.log'
# 默认一周过后,日志文件会被覆盖
log_truncate_on_rotation = on
# 一天一个日志文件
log_rotation_age = 1d
# 一个日志文件,没有大小限制
log_rotation_size = 0
标签:PostgreSQL,log,用户,Linux,postgresql,日志,安装,postgres
From: https://blog.csdn.net/qq_18505089/article/details/141066255