【问题标题】:Moving postgres data folder on Ubuntu在 Ubuntu 上移动 postgres 数据文件夹
【发布时间】:2016-08-17 13:01:03
【问题描述】:

我有一个查询 Postgresql 数据库的 Web 应用程序(成功),我希望将数据文件夹从位置 /var/lib/postgres/9.3/main 移动到可自定义的位置。

现在,由于权限错误,我什至无法复制文件夹,但我无法为自己分配权限,因为这会破坏 postgres 服务器。

(我通过运行 sudo chown <username> -R /var/lib/postgres/9.3/main 破坏了服务器 - 它作为一个命令运行,但停止了 postgres 服务器的工作)

我只需创建一个新文件夹并更改那里的位置,但如果这样做,我将丢失我的数据库的当前实例。

如何将当前文件夹移动到新位置,以便在.conf 文件中指向它?我需要显式移动文件夹,我无法创建新数据库。

【问题讨论】:

  • 为什么需要移动它们?最有可能移动数据目录是您问题的错误答案
  • @frlan 我的 Web 应用程序正在 Linux VM 上运行,我正在通过 IP 从 Windows 机器查询它。我希望能够将数据放到 Windows 机器上的共享文件夹中,并拥有一个轻量级的 VM,而不是仅用作 Web 服务器的 300GB 的 Linux 实例。
  • @frlan 相信我,我知道移动数据是错误的方式,但需要数周时间才能将我的数据恢复到当前状态,我无法重新启动该过程。跨度>
  • 如果您的问题是没有权限,那么sudo cp ... 不是您需要的吗?成为 root 后,谁拥有该文件通常并不重要。

标签: postgresql ubuntu-14.04


【解决方案1】:
  • 您可以只复制或移动目录,包括所有子目录和文件 cp -rpmv 应该足够了。
  • 在您处理文件时,Postgres 必须未运行
  • 数据目录的基础 (PG_DATA) 必须为 postgres 所有 并且具有 文件模式 0700 。 (如果不是:pg 将拒绝启动)
  • [其余文件必须至少可由 postgres 读取/写入]
  • 启动进程也必须知道新位置(在/etc/init.d/ 和(可能)在数据目录中的 postgres.conf 文件中。(用于日志文件位置)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-10-17
    相关资源
    最近更新 更多