Справочник системных ошибок и решений

Windows Server, Active Directory, 1С:Предприятие, СУБД, Linux, Cisco, MikroTik, Asterisk.

⚠️ Важная информация Все материалы, инструкции, команды и скрипты на сайте предоставлены исключительно в ознакомительных целях. Их применение может повлиять на работу операционной системы, программного обеспечения, баз данных, сетевого оборудования и других компонентов инфраструктуры. Перед выполнением действий создайте резервную копию и по возможности протестируйте изменения в безопасной среде. Пользователь самостоятельно оценивает риски и несет ответственность за результат. При отсутствии необходимых знаний обратитесь к квалифицированному ИТ-специалисту.

ORA-01950 1С:Предприятие и СУБД

Ошибка ORA-01950: no privileges on tablespace — настройка квот в Oracle

Обновлено: 26.08.2026 · Официальная документация ↗
  • При создании таблиц, индексов или выполнении INSERT пользователь получает ошибку ORA-01950: no privileges on tablespace 'TABLESPACE_NAME'.
  • Пользователь имеет системные привилегии CREATE TABLE или роль RESOURCE, но не может сохранять данные.
  • Приложение 1С или ETL-пакет не может инициализировать служебные объекты схемы.

1. Проверка текущих квот пользователя

SELECT tablespace_name, bytes/1024/1024 AS mb_used, max_bytes/1024/1024 AS max_mb 
FROM dba_ts_quotas 
WHERE username = 'APP_USER';

2. Назначение неограниченной квоты на табличное пространство

ALTER USER app_user QUOTA UNLIMITED ON users;

3. Назначение фиксированной квоты (альтернатива)

ALTER USER app_user QUOTA 50G ON data_tbs;

4. Назначение привилегии UNLIMITED TABLESPACE (Осторожно)

Предоставляет неограниченную квоту на абсолютно все табличные пространства в БД:

GRANT UNLIMITED TABLESPACE TO app_user;
💡 Практика специалистов: Для служебной учетной записи 1С:Предприятия всегда назначайте команду ALTER USER usr1cv8 QUOTA UNLIMITED ON <имя_табличного_пространства>, чтобы избежать сбоев при реструктуризации метаданных.

Частые вопросы (FAQ)

Почему роли RESOURCE больше недостаточно в Oracle 12c/19c?

Начиная с Oracle 11g Release 2, привилегия UNLIMITED TABLESPACE была исключена из роли RESOURCE в целях повышения безопасности. Теперь квоту необходимо выдавать явно.

Теряются ли данные пользователя при установке квоты в 0?

Нет, существующие данные сохраняются, но любые попытки добавить новые строки или расширить сегменты будут блокироваться ошибкой ORA-01536 / ORA-01950.

Нужна ли квота на временное табличное пространство (TEMP)?

Нет, на Temporary Tablespace квоты пользователей не распространяются, так как они выделяются динамически для сортировок.

Как проверить, на какие tablespace у пользователя есть права создания объектов?

Проверьте представление DBA_TS_QUOTAS, а также системные привилегии в DBA_SYS_PRIVS на наличие 'UNLIMITED TABLESPACE'.

Полезные материалы
Рекомендуем