我们运行postgresql 8.4已经有一段时间了.与任何数据库一样,我们正在慢慢地达到我们的空间门槛.我添加了另一个8GB EBS驱动器,并将其安装到我们的实例中,并将其配置为在名为/files的目录下正常工作

在/files中,我手动创建了

如果我错了,请纠正我,但我相信所有postgresql数据都存储在/var/lib/postgresql/8.4/main中

我备份了数据库并运行sudo/etc/init.d/postgresql停止.这将停止postgresql server.我试图将/var/lib/postgresql/8.4/main的内容复制并粘贴到/files目录中,但结果却是一团糟!由于文件权限.我必须进go 把文件夹的内容修改一下,这样我才能复制粘贴它们.由于root权限,某些文件没有完全复制.我在postgresql中修改了data_directory参数.conf指向文件目录

 data_directory = '/files/postgresql/main'

我运行了sudo/etc/init.d/postgresql重新启动,服务器无法启动.可能也是因为权限问题.默认情况下,亚马逊EC2只允许你以ubuntu的身份访问该服务.您只能从终端内部访问root,这使得一切变得更加复杂.

有没有一种更干净、更高效的逐步实现方法?

推荐答案

停止服务器.

在保留权限的同时复制datadir-使用cp -aRv.

然后(最简单,因为它避免了修改initscripts的需要),只需将旧的datadir移到一边,并将旧路径符号链接到新位置.

Postgresql相关问答推荐

Postgresql函数返回值别名

Redis作为postgreSQL嵌套数据的缓存

将几个左连接合并为一个

如何在查询空字段时设置pgtype.comb为默认值?

在Ubuntu 18.04 Bionic上安装PostgreSQL(已删除回购)

PostgreSQL 不删除旧的 WAL 档案

数据库所有者无法授予 Select 权限

如何计算每月的出版物数量?

postgres 如何计算多列哈希?

如何在 PostgreSQL 的回归测试中测试 TYPE 发送和接收函数

PG::UndefinedTable:错误:relation "active_storage_blobs" does not exist

PostgreSQL:please specify covering index name是什么意思

包含受先前 DELETE 影响的行数的变量?

冲突中的 Postgres 会更新复合主键

如何使用 SpringBoot + JPA 存储 PostgreSQL jsonb?

Rails 3:在 Postgres 支持的 ActiveRecord 中使用 json 作为列类型时出现迁移错误

datagrip 无法应用更改 此表是只读的

Select 中的 PostgreSQL 正则表达式捕获组

如何在psql中退出查询结果查看器?

Postgres NOT IN (null) 没有结果