部署postgresql server
首先需要在docker上部署一个postgresql container。使用以下代码可以完成,不过需要注意的是,其实最好把这个container和nextcloud部署在同一个docker network下面,后面会讲原因
docker run --name postgres -e POSTGRES_PASSWORD=password -p 5432:5432 -v /root/docker/postgresql/data:/var/lib/postgresql/data -d postgres
建立postgresql database
连接到postgresql,建立一个数据库,为了方便后续介绍,该数据库的
- 名称: sonar
- password: 12345
- username: sqluser
#sudo -u postgres psql
CREATE USER sqluser WITH PASSWORD '12345';
CREATE database sonar owner sqluser
数据库迁移
使用以下代码做数据库转换。注意几个关键字
- ‘pgsql’ 对应的是要转换到的数据库的种类
- 'username‘对应的是postgresql
- hostname对应的是公网IP,如果之前在安装postgresql的时候设置和nextcloud在同一个docker网络,hostname可以填localhost,如果没有设置同个网络,只有填公网IP才能行。
docker exec --user www-data nextcloud php occ db:convert-type --port="5432" --password=12345 --clear-schema --all-apps pgsql sqluser hostname sonar
评论区