跳到主要内容
内容阅读

在知识库中专注阅读,并随时返回相关工具与课程

ORA-01950常见安全

无表空间权限

No privileges on tablespace

错误描述

用户在尝试创建对象的表空间上没有配额。需要表空间配额或 UNLIMITED TABLESPACE 权限。

可能原因

  • 未向用户授予表空间配额
  • 用户的默认表空间已更改但未在新表空间上授予配额
  • 在 12c+ 中 RESOURCE 角色不再授予 UNLIMITED TABLESPACE

解决方案

  1. 1授予配额:ALTER USER username QUOTA UNLIMITED ON tablespace_name;
  2. 2或授予特定配额:ALTER USER username QUOTA 500M ON tablespace_name;
  3. 3授予系统权限:GRANT UNLIMITED TABLESPACE TO username;

诊断命令

SELECT tablespace_name, username, max_bytes FROM dba_ts_quotas WHERE username = 'USERNAME';
SELECT username, default_tablespace FROM dba_users WHERE username = 'USERNAME';
SELECT * FROM dba_sys_privs WHERE grantee = 'USERNAME' AND privilege = 'UNLIMITED TABLESPACE';
#security#tablespace#quota#privilege

同类错误码(安全)

想系统掌握这个领域?

「安全」在课程 Day 81-90 中有 10 篇完整实战教程

完整操作步骤真实截图踩坑总结
查看完整课程¥128/月起 · 解锁全部 2738+ 篇
ORA-01950: 无表空间权限 - 原因与解决方案 | DBA 学习之路