Postgresql在ubuntu中更改数据目录

Postgresql在ubuntu中更改数据目录,sql,postgresql,ubuntu,terminal,Sql,Postgresql,Ubuntu,Terminal,可能重复: 这个问题让我抓狂,似乎什么都没用。我需要更改postgresql存储数据库的位置。在终端中使用命令时,我是一个完全的新手,使用适当命令的逐步说明将非常有用。我搜索了整个网络,但是所有的指令都假定对终端命令有一定的了解。我确实尝试了一种方法,在主数据文件夹中创建一个指向所需位置的符号链接。这给了我一个错误,要求我检查日志文件。但是,我不知道日志文件在哪里。很多人似乎都有这个问题,一步一步解决肯定会有帮助。我的Psql版本是8.4。Ubuntu 10.10最新的日志文件完整路径是/va

可能重复:


这个问题让我抓狂,似乎什么都没用。我需要更改postgresql存储数据库的位置。在终端中使用命令时,我是一个完全的新手,使用适当命令的逐步说明将非常有用。我搜索了整个网络,但是所有的指令都假定对终端命令有一定的了解。我确实尝试了一种方法,在主数据文件夹中创建一个指向所需位置的符号链接。这给了我一个错误,要求我检查日志文件。但是,我不知道日志文件在哪里。很多人似乎都有这个问题,一步一步解决肯定会有帮助。我的Psql版本是8.4。Ubuntu 10.10

最新的日志文件完整路径是
/var/log/postgresql/postgresql-8.4-main.log
,但符号链接并不是更改数据位置的更集成/更简单的方法

我建议使用debian/ubuntupostgres软件包附带的命令将整个集群创建到所需的位置

1-如果当前群集不包含任何以前的数据,请删除该群集:

2-在新位置创建新群集

3-重新启动postgresql


您是否有需要移动的现有内容,或者您正在考虑一个干净的空实例?另外,我删除了关于DBA的问题@阿米塔什,如果你再这样横过柱子,可能会有后果。不要这样做,群集会完美下降。当我试图在我的第二个硬盘上创建一个新集群时,它会显示“initdb权限被拒绝”。所以我在我的文件夹中对我的用户做了一次检查。效果很好。当我再试一次时,仍然会得到相同的错误。这可能是因为我试图在已安装的驱动器中创建群集,而不是在我的根ubuntu安装驱动器中创建群集吗?创建新群集(配置:/etc/postgresql/8.4/main,数据:/media/new Volume/viurity/data)。。。无法将目录更改为“/media/New Volume/viulity”initdb:无法访问目录“/media/New Volume/viulity/data”:权限被拒绝错误:initdbfailed@Amitash:使用
sudo
pg_createcluster执行时,应自行修复目录和权限。但是:当你谈论一个
/media
路径时:这是一个可移动设备吗?是FAT文件系统还是NTFS文件系统?然后权限将不起作用。文件夹的权限似乎不允许
postgres
用户进入该目录。确保路径中的所有目录都为其他用户设置了“x”位(例如,rwxr-xr-x良好,rwx------不良好)。如果您不知道如何微调它,请执行
chmod-R 755/media
。@Amitash“它是NTFS,是在Windows中创建的”之类的内容很重要。请发布详细的问题,以节省每个人询问每个细节的时间。
$ sudo pg_dropcluster --stop 8.4 main
$ sudo pg_createcluster -d /path/to/new/location 8.4 main
$ sudo /etc/init.d/postgresql start