En esta entrada voy a enseñaros como podéis solucionar el error de Oracle «ORA-01950: no privileges on tablespace XXXXX».
Los principales motivos que causan este error son los siguientes:
- El usuario no tiene suficientes privilegios.
- El usuario no tiene asignada una cuota en el tablespace
Conceder privilegios al usuario
Para poder crear tablas, insertar datos, etc.. es importante que el usuario tenga asignados los roles CONNECT y RESOURCE. Sino los tiene podéis asignárselos ejecutando las siguientes instrucciones:
GRANT CONNECT TO NOMBRE_USUARIO; GRANT RESOURCE TO NOMBRE_USUARIO;
Asignar una cuota al usuario en el tablespace
Para asignar una cuota al usuario en el tablespace para que pueda por ejemplo insertar datos usaremos las siguientes sentencias en función de si queremos limitar el uso de espacio al usuario o no:
--Cuota ilimitada ALTER USER nombre_usuario quota unlimited on nombre_tablespace; --Cuota limitada a 100 MB ALTER USER nombre_usuario quota 100M on nombre_tablespace;
Y listo siguiendo estos pasos se debe haber solucionado el error.
Espero os haya sido de utilidad.
Entradas relacionadas
- Linux: Instalación Oracle 18c XE en CentOS 8 mediante consola
- Oracle: Como crear un esquema en Oracle 11g, 12c o 18c
- Oracle: Como saber si nuestra instancia se encuentra levantada
- Linux: Inicio automático de Oracle
Me dedico a la Administración de Sistemas y he creado este blog para compartir mis conocimientos con toda la comunidad y así aportar mi granito de arena y ayudar a todo el que lo necesite.
Mil gracias!!!
No podía solucionar este error, y los primeros 2 comandos me ayudaron.
Saludos desde méxico!