将数据目录从根硬盘移动到另一个硬盘后,如何修复postgresql的连接?

将数据目录从根硬盘移动到另一个硬盘后,如何修复postgresql的连接?,postgresql,ubuntu,permissions,database-connection,Postgresql,Ubuntu,Permissions,Database Connection,我在大型数据集上使用postgresql,我将数据库从Ubuntu 18.04安装的同一硬盘移到另一个硬盘上 我做了同样的处理,将data_目录移动到“Home”(在Ubuntu的同一硬盘上,但在其他分区中),在这个位置,postgresql可以正常工作。问题是我需要一个很大的空间来上传我的数据(比如2 TB的硬盘),因为我试图转移到另一个硬盘,空的,格式化的,DB专用的 我将继续学习本教程。在Ubuntu终端中使用以下命令: su postgres /usr/lib/postgresql

我在大型数据集上使用postgresql,我将数据库从Ubuntu 18.04安装的同一硬盘移到另一个硬盘上

我做了同样的处理,将data_目录移动到“Home”(在Ubuntu的同一硬盘上,但在其他分区中),在这个位置,postgresql可以正常工作。问题是我需要一个很大的空间来上传我的数据(比如2 TB的硬盘),因为我试图转移到另一个硬盘,空的,格式化的,DB专用的

我将继续学习本教程。在Ubuntu终端中使用以下命令:

 su postgres

 /usr/lib/postgresql/10/bin/pg_ctl -D /media/path/postgresql/10/main -l logfile start

 sudo systemctl stop postgresql

 sudo systemctl status postgresql

 sudo rsync -av /var/lib/postgresql /media/path/postgresql

 sudo mv /var/lib/postgresql/10/main /var/lib/postgresql/10/main.bak

 sudo gedit /etc/postgresql/10/main/postgresql.conf  (change "data_directory")

 sudo systemctl start postgresql

 sudo systemctl status postgresql
此外,我将文件夹的所有权作为

  chown -R postgres:postgres /media/path/postgresql/10/main
我在“/path/postgresql.conf”中写入修改,以适应新的数据目录,重新启动服务器,并且无法连接到服务器

在终端,如果我尝试连接,就会收到此消息

 "could not connect to server: No such file or directory Is the server running locally and accepting connections on Unix domain socket "/var/run/postgresql/.s.PGSQL.5432"?"
在Pgadmin客户端,我发现问题表现为没有连接


在我的例子中,rsync出于某种原因没有复制多个文件。可能是服务器停止后,他们还没有准备好,或者其他原因

第二天我又做了一次之后,它开始得很好:

sudorsync-av/var/lib/postgresql/10/main.bak//media/disk1/postgres/postgresql/10/main/

还应尝试检查日志以了解实际原因:

tail-n 100/var/log/postgresql/postgresql-10-main.log

在我的情况下是这样的

postgres:找不到数据库系统 应在目录“/media/disk1/postgres/postgresql/10/main”中找到它, 但无法打开文件“/media/disk1/postgres/postgresql/10/main/global/pg_control”:没有这样的文件或目录 pg_ctl:无法启动服务器 检查日志输出