Мой диск заполнен, поэтому я удаляю временные файлы Oracle, чтобы освободить место. Я использую oragle 10g с операционной системой CentOS версии 4.4.
Первый поиск по временным файлам
SELECT tablespace_name, file_name, bytes FROM dba_temp_files WHERE tablespace_name = 'TEMP';
Удалить временные файлы (6 файлов)
alter database TEMPFILE '/oracle/oradata/ral/temp0X.dbf' drop including datafiles;
но теперь я не могу создать один файл
ALTER TABLESPACE temp ADD TEMPFILE '/oracle/oradata/ral/temp01.dbf' SIZE 512m AUTOEXTEND ON NEXT 250m MAXSIZE 2048m;
ERROR
ALTER TABLESPACE temp ADD TEMPFILE '/oracle/oradata/ral/temp01.dbf' SIZE 512m AUTOEXTEND ON NEXT 250m MAXSIZE 2048m
Informe de error:
Error SQL: ORA-01119: error create database file '/oracle/oradata/ral/temp01.dbf'
ORA-27044: no se ha podido escribir el bloque de cabecera del archivo
Linux-x86_64 Error: 28: No space left on device
Additional information: 3
01119. 00000 - "error in creating database file '%s'"
*Cause: Usually due to not having enough space on the device.
*Action:
У меня есть свободное место, но я не могу создать файл. В чем проблема?
заранее спасибо
Некоторое количество места зарезервировано для системы (пользователя root) по умолчанию.
Следующее установит зарезервированное пространство на 0 блоков, так что все свободное пространство будет доступно пользователям (и, следовательно, Oracle).
tune2fs -m 0 /dev/sdb1
Заменить sdb1
с рассматриваемым устройством.
Бег df
теперь должен подтвердить, что пространство действительно доступно для использования.
Это, вероятно, не рекомендуется для корневой файловой системы или файловой системы / var, также знайте, что полное заполнение любой файловой системы ext может вызвать проблемы с производительностью в будущем из-за фрагментации.
Бегать df
на коробке - вероятно, на вашем диске нет свободного места.
См. Соответствующий ответ StackOverflow относительно Oracle, не приводящего к освобождению дискового пространства: https://stackoverflow.com/questions/9432465/reclaim-the-space-after-a-large-delete-in-oracle