依据官方文档进行yum安装,
https://www.postgresql.org/download/linux/redhat/
yum install https://download.postgresql.org/pub/repos/yum/reporpms/EL-7-x86_64/pgdg-redhat-repo-latest.noarch.rpm
yum install -y postgresql12
yum install -y postgresql12-server
/usr/pgsql-12/bin/postgresql-12-setup initdb systemctl enable postgresql-12 systemctl start postgresql-12
1.更新数据保存位置
vim /usr/lib/systemd/system/postgresql-12.service #找到Environment=PGDATA=/var/lib/pgsql/12/data/,将当前数据保存位置更新成自己指定位置 #默认保存位置/var/lib/pgsql/12/data #这里修改为/home/deploy/pgsql/12/data/ mkdir -p /home/deploy/pgsql/12/data/ chown -R postgres.postgres /home/deploy/pgsql
2.更改完以上配置后,需要重启初始化数据库,并重启
systemctl stop postgresql-12 /usr/pgsql-12/bin/postgresql-12-setup initdb systemctl restart postgresql-12 #如果启动有问题,请查看日志 tail -19f /var/lib/pgsql/12/initdb.log
3.配置特定网段访问
修改postgresql.conf文件即可:
默认在/var/lib/pgsql/12/data/postgresql.conf,此次修改数据目录后配置文件在:/home/deploy/pgsql/12/data/postgresql.conf
vim /home/deploy/pgsql/12/data/postgresql.conf listen_addresses = '*' max_connections = 100 shared_buffers = 128MB work_mem = 4MB
需要修改的参数含义:
listen_addresses参数含义:指定数据库用来监听客户端连接的TCP/IP地址。参数优化:如需接受其他Client的连接请求,需修改为*4.配置文件pg_hba.conf
/home/deploy/pgsql/12/data/pg_hba.conf
# TYPE DATABASE USER ADDRESS METHOD host all all 10.10.56.17/32 md5
#参数说明
host 参数表示安装PostgreSQL的主机
all 第一个all 表示该主机上的所有数据库实例
all 第二个all 表示所有用户
10.10.56.17/32 表示需要连接到主机的IP地址,32表示IPV4
md5 表示验证方式
即上述表示允许IP地址为10.10.56.17的所有用户可以通过MD5的密码验证方式连接主机上所有的数据库
# TYPE DATABASE USER ADDRESS METHOD host test pgtest 10.10.56.17/32 md5
即表示允许地址为 10.10.56.17 的用户 pgtest通过 MD5方式 加密的密码方式连接主机上的 test 数据库。
# TYPE DATABASE USER ADDRESS METHOD host test pgtest 0.0.0.0/0 md5
即表示允许 任意iP 通过用户名为 pgtest 和md5的 密码 验证方式连接主机上 test 的数据库。
# TYPE DATABASE USER ADDRESS METHOD host test pgtest 0.0.0.0/0 trust表示任意IP地址的用户 pgtest 无需密码验证可直接连接访问该主机的 test 数据库。
systemctl restart postgresql-12
[root@localhost ~]# su - postgres [postgres@localhost ~]$ psql -U postgres ##修改postres密码为:chainqwer1234 postgres=# ALTER USER postgres with encrypted password 'chainqwer1234'; ##退出 postgres=# \q [postgres@localhost ~]$ psql -U postgres ##创建用户usertest密码为:usertest1234 postgres=# create user usertest with password 'usertest1234'; ##创建数据库test postgres=# create database test owner usertest; ##授权test数据库所有权限给用户usertest postgres=# grant all privileges on database test to usertest; postgres=# \q
数据库切换命令:
\c database_name
为当前数据库创建函数:
CREATE EXTENSION IF NOT EXISTS "uuid-ossp";
验证函数:
select uuid_generate_v4()
postgresql切换到需要安装插件的数据库
修改日期 | 修改人 | 备注 |
2020-06-05 21:23:43[当前版本] | 文艺范儿 | 格式调整 |
2020-06-05 21:10:25 | 文艺范儿 | 格式调整 |
2020-06-05 20:10:55 | 文艺范儿 | 创建版本 |