屈身守分,以待天时。
0.写在前面
如题。环境版本如下:
postgresql:14.6
安装环境:Deepin GNU/Linux 20.9
1.步骤
- 导入yum源
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 postgresql12 postgresql12-server
- 初始化数据库
sudo /usr/pgsql-12/bin/postgresql-12-setup initdb
#Initializing database ... OK
- PostgreSQL服务配置
#启动PostgreSQL服务
sudo systemctl start postgresql-12
#设置PostgreSQL服务为开机启动
sudo systemctl enable postgresql-12
- 修改postgres账号密码
# 通过su命令切换linux用户为postgres会自动进入命令行
su postgres
# 启动SQL Shell
psql
# 修改密码
ALTER USER postgres WITH PASSWORD 'NewPassword';
- 配置远程访问
# 开放端口
sudo firewall-cmd --add-port=5432/tcp --permanent
sudo firewall-cmd --reload
# 修改IP绑定
#修改配置文件
vi /var/lib/pgsql/12/data/pg_hba.conf
#在问价尾部加入
host all all 0.0.0.0/0 md5
#重启PostgreSQL服务
sudo systemctl restart postgresql-12
2.常用语法示例
2.1.启动SQL shell:
su postgres
psql
#创建数据库
CREATE DATABASE mydb;
#查看所有数据库
\l
#切换当前数据库
\c mydb
#创建表
CREATE TABLE test(id int,body varchar(100));
#查看当前数据库下所有表
\d
2.2.用户与访问授权语法示例
#新建用户
CREATE USER test WITH PASSWORD 'test';
#赋予指定账户指定数据库所有权限
GRANT ALL PRIVILEGES ON DATABASE mydb TO test;
#移除指定账户指定数据库所有权限
REVOKE ALL PRIVILEGES ON DATABASE mydb TO test
3.扩展
安装PostGIS:
3.1.首先安装几个工具包
yum install wget net-tools epel-release -y
3.2.安装postgis
yum install postgis25_12 postgis25_12-client -y
3.3.安装拓展工具
yum install ogr_fdw12 -y
yum install pgrouting_12 -y
4.总结
无,主要参考,如下:
在CentOS 7上安装&配置PostgreSQL 12
CentOS7 安装PostgreSQL及PostGIS扩展