任何人都可以帮我从Linux shell重命名postgresql中的数据库
ALTER DATABASE name RENAME TO newname
上述声明未执行
哪个版本的postgresql?从8.1文档:
ALTER DATABASE将RENAME命名为newname;
只有数据库所有者或超级用户才能重命名数据库; 非超级用户所有者还必须具有CREATEDB权限.无法重命名当前数据库.(如果需要,请连接到其他数据库.)
这可能是一个愚蠢明显的问题.你是否以postgres用户身份运行psql?
例如
$ sudo -u postgres psql # alter database FOO rename to BAR; # \q
您可能需要特权才能重新启动数据库。只有数据库所有者或超级用户可以执行此操作,所有者还需要createdb priv。
另外,您连接的数据库无法重命名,您需要连接到另一个数据库