postgresql+postgis+timescaleDB 安装和整合
PostgreSQL数据库安装与配置
设置PostgreSQL官方APT仓库
sudo sh -c 'echo "deb http://apt.postgresql.org/pub/repos/apt $(lsb_release -cs)-pgdg main" > /etc/apt/sources.list.d/pgdg.list'
导入PostgreSQL官方签名密钥
wget --quiet -O - https://www.postgresql.org/media/keys/ACCC4CF8.asc | sudo apt-key add -
更新软件包列表
sudo apt-get update
安装PostgreSQL 12
sudo apt-get -y install postgresql-12
设置postgres用户密码
进入postgresql:sudo -u postgres psql
修改密码:ALTER USER postgres WITH PASSWORD '123456';
退出:\q
修改PostgreSQL配置以允许远程连接
编辑postgresql.conf文件:sudo vim /etc/postgresql/12/main/postgresql.conf
修改或添加以下行:listen_addresses='*'
编辑pg_hba.conf文件来更新权限:sudo vim /etc/postgresql/12/main/pg_hba.conf
在文件的末尾添加以下行以允许所有IP地址连接:host all all 0.0.0.0/0 trust
重启服务:sudo service postgresql restart
PostGIS的安装与验证
搜索可用的PostGIS软件包
sudo apt-cache search postgis
安装PostGIS
sudo apt-get install postgresql-12-postgis-3
验证PostGIS安装
进入数据库:sudo -u postgres psql
添加扩展:CREATE EXTENSION postgis;
sql验证:SELECT ST_SetSRID(ST_Point(-87.71,43.741),4326),ST_GeomFromText('POINT(-87.71 43.741)',4326);
退出:\q
TimescaleDB的安装与配置
添加TimescaleDB官方APT仓库
echo "deb https://packagecloud.io/timescale/timescaledb/ubuntu/ $(lsb_release -c -s) main" | sudo tee /etc/apt/sources.list.d/timescaledb.list
导入TimescaleDB签名密钥
wget --quiet -O - https://packagecloud.io/timescale/timescaledb/gpgkey | sudo apt-key add -
wget --quiet -O - https://packagecloud.io/timescale/timescaledb/gpgkey | sudo gpg --dearmor -o /etc/apt/trusted.gpg.d/timescaledb.gpg
更新软件包列表
sudo apt update
安装TimescaleDB
sudo apt install timescaledb-2-oss-postgresql-12
配置TimescaleDB
编辑postgresql.conf文件:sudo vim /etc/postgresql/12/main/postgresql.conf
找到以下行并更改显示的值(如果需要,取消注释):shared_preload_libraries = 'timescaledb'
重启PostgreSQL服务
sudo systemctl restart postgresql
使用TimescaleDB扩展
进入数据库:sudo -u postgres psql
创建扩展:CREATE EXTENSION IF NOT EXISTS timescaledb CASCADE;
退出:\q