Yog*_*ogi 4 postgresql database-administration postgresql-9.6
在PostgreSQL数据库上运行批处理时遇到空间问题。
但是,df -h命令显示计算机有足够的空间
以下是确切的错误
org.springframework.dao.DataAccessResourceFailureException: PreparedStatementCallback; SQL [INSERT into BATCH_JOB_INSTANCE(JOB_INSTANCE_ID, JOB_NAME, JOB_KEY, VERSION) values (?, ?, ?, ?)]; ERROR: could not extend file "base/16388/16452": No space left on device
Hint: Check free disk space.
Run Code Online (Sandbox Code Playgroud)
是什么导致此问题?
编辑
postgres数据目录为 /var/opt/rh/rh-postgresql96/lib/pgsql/data
df -h /var/opt/rh/rh-postgresql96/lib/pgsql/data
Filesystem Size Used Avail Use% Mounted on
/dev/xvda2 100G 63G 38G 63% /
Run Code Online (Sandbox Code Playgroud)
很可能有些查询会创建大的临时文件,这些文件会临时填充硬盘。查询完成(或失败)后,这些文件将被删除,因此在您查找时文件系统具有足够的可用空间。
设置log_temp_files = 10240在postgresql.conf(和重载)来记录所有的临时文件超过10 MB,那么您可以检查日志文件,看看是否这确实是原因。
尝试找出错误的查询并加以解决。
如果临时文件不是问题,则可能是临时表。数据库会话结束时,它们会自动删除。您的应用程序是否使用临时表?
另一种可能是文件是由数据库以外的其他文件创建的。
| 归档时间: |
|
| 查看次数: |
8332 次 |
| 最近记录: |