ORA-01950: no privileges on tablespace 'name'(表領域に対する権限がない)
Oracle意味
ユーザーに、書き込もうとしている表領域のクォータがない。Oracle では、オブジェクトに領域を割り当てるには、ユーザーがその表領域のクォータを持っている必要がある。
原因
ユーザーに表領域のクォータが付与されていない。典型的には UNLIMITED TABLESPACE システム権限を持たない新規ユーザーが、デフォルト表領域でテーブル/インデックスの作成やデータの挿入を試みる。INSERT、CREATE TABLE、またはインデックスの拡張時に発生する。
対処方法
DBA としてユーザーにクォータを付与する: ALTER USER app_user QUOTA UNLIMITED ON tablespace_name; または特定の上限を付与する: ALTER USER app_user QUOTA 500M ON users; 代わりに (慎重に使うこと) GRANT UNLIMITED TABLESPACE TO app_user; を付与することもできるが、これはすべての表領域に対する無制限の権利を与えるため、一般には推奨されない。
同じデータベースの他の項目
- latch: cache buffers chains待機: cache buffers chains ラッチの競合
- ORA-00955name is already used by an existing object(名前は既存のオブジェクトが使用している)
- ORA-02449unique/primary keys in table referenced by foreign keys(表の一意/主キーが外部キーにより参照されている)
- ORA-01110data file N: 'path'(データファイル N: 'path')
- ORA-16038log N sequence# M cannot be archived(ログ N (順序番号 M) をアーカイブできない)
- ORA-19809limit exceeded for recovery files(リカバリファイルの制限超過)
- ORA-00376file N cannot be read at this time(ファイル N は現在読み取れない)