天天看点

docker安装的timescaledb升级注意事项操作步骤

操作步骤

1.拉取最新的镜像

docker pull timescale/timescaledb:1.7.4-pg11      

2.检查老容器挂载的数据目录

$ docker inspect timescaledb --format='{{range .Mounts }}{{.Source}}{{end}}'
/path/to/data      

3.删除老容器

docker stop timescaledb
docker rm timescaledb      

4.使用挂载的数据目录和新拉取的镜像,创建新容器

docker run -v /path/to/data:/var/lib/postgresql/data -d --name timescaledb -p 5432:5432 timescale/timescaledb      

5.更新template1的timescaledb插件(重要)

如果不更新template1的话,后续创建的所有database还是老的1.4.0插件

docker exec -it timescaledb bash
su postgres
psql template1
ALTER EXTENSION timescaledb UPDATE;      

6.更新已经存在的database的timescaledb插件(重要)

对所有“已经存在的数据库”进行插件更新,不然会导致无法连接,报错如下:

ERROR: could not access file “$libdir/timescaledb-1.4.2”: No such file or directory

docker exec -it timescaledb bash
su postgres
psql 已经存在的数据库
ALTER EXTENSION timescaledb UPDATE;