我有一个标准安装,它正尝试恢复数据库。迁移失败了。
ALTER TABLE
正在迁移数据库...
EXCEPTION: rake db:migrate
数据库迁移失败。
rake aborted!
StandardError: 发生了一个错误,此后所有迁移都已取消: (StandardError)
PG::DiskFull: ERROR: 无法写入文件 “base/pgsql_tmp/pgsql_tmp11009.51”: 设备上没有剩余空间
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/rack-mini-profiler-4.0.1/lib/patches/db/pg/alias_method.rb:109:in `exec'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/rack-mini-profiler-4.0.1/lib/patches/db/pg/alias_method.rb:109:in `async_exec'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/activerecord-8.0.4/lib/active_record/connection_adapters/postgresql/database_state
ments.rb:167:in `perform_query'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/activerecord-8.0.4/lib/active_record/connection_adapters/abstract/database_stateme
nts.rb:556:in `block (2 levels) in raw_execute'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/activerecord-8.0.4/lib/active_record/connection_adapters/abstract_adapter.rb:1017:in `block in with_raw_connection'
磁盘上有 90GB 的可用空间。在源磁盘上,postgres 目录只有 23GB。
为什么一个 23GB 的数据库在迁移过程中会因为磁盘空间不足而失败,而磁盘上还有 90GB 的空闲空间?
源服务器 - 服务器版本: 3.5.0.beta5-dev (Commit: b16fb6a60b3f1db475cbb91a51b7d4c734370083 — 2025年5月7日)
目标服务器版本: 2026.2.0-latest (Commit: b39866eb8891648a54764755e2e36eb725bd6c73 — 4 天前)
23G /var/discourse/shared/standalone/postgres_data/