数据库转移

pgsql数据存放在/var/lib/postgresql路径下,各个文件所存的数据见下:base 目录是最重要的一个目录,放的是每一个 database 的数据。base 目录里的每一个数字目录对于一个 database 的 oid, 可以通过 查看 pg_database 这张表查看每一个 数据库的 oid;每一张表的数据(大部分)又是放在 base/(dboid)/(relfilenode) 这个文件里面;具体说明见:https://blog.csdn.net/weixin_33859844/article/details/91892927?utm_medium=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-4.nonecase&depth_1-utm_source=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-4.nonecase

1卸载pgsql

卸载pgsql

sudo apt-get --purge remove postgresql\*

删除配置及文相关件

sudo rm -r /etc/postgresql/
sudo rm -r /etc/postgresql-common/
sudo rm -r /var/lib/postgresql/

删除用户和所在组

sudo userdel -r postgres
sudo groupdel postgres

重新安装

sudo apt-get install postgresql

2更改数据路径

更新

sudo apt-get update

安装

sudo apt-get install postgresql

创建数据存储目录

mkdir -p /data/postgresql

停止服务

sudo service postgresql stop

复制数据

sudo cp -rf /var/lib/postgresql/10/main/ /data/postgresql/

权限设置

sudo chown -R postgres:postgres /data/postgresql/
sudo chmod 700 /data/postgresql/

更改配置文件

sudo vim /etc/postgresql/10/main/postgresql.conf
data_directory = '/data/postgresql/main'

启动服务

sudo service postgresql start

你可能感兴趣的:(数据库转移)