无法在Postgresql中创建数据库

时间:2016-11-07 12:50:32

标签: ubuntu postgresql-9.3

我正在尝试在我公司的备份服务器上的postgres中创建一个新数据库。

我尝试了pgadmin和命令行,但是我收到以下错误:

Error: could not read file "base/1/1187" : Input/Output error

在服务器上运行OS是Ubuntu服务器版。

2 个答案:

答案 0 :(得分:0)

此错误是由于Postgresql崩溃或磁盘故障造成的。

您可以尝试查看内核日志以查看是否还有其他信息

在做任何事之前先阅读:

https://wiki.postgresql.org/wiki/Corruption

完成后,您可以查看可能的维修工作。您可能会有一些重要的数据丢失,因此您的目标应该是让它工作到可以pg_dump损坏的数据库,重新initdb和重新加载。

如果您有最近的备份,现在是考虑使用它的好时机。

答案 1 :(得分:0)

模板数据库template1中有一个PostgreSQL无法访问的文件。

也许有人搞砸了数据目录,也许在完整性问题摆脱它之后进行文件系统检查。最近有什么不寻常的事情发生了崩溃吗?

/var/log/messages或PostgreSQL服务器日志中的任何内容?

文件存在吗?如果是,ls -l 1187会显示什么?

要找出受影响的表,可以安装contrib并运行

oid2name -d template1 -f 1187