Usuarios y esquemas de base de datos.
Tenemos dos tipos de usuarios.
Uno: Para el usuario que ingresará a la base de datos a consultar tablas/vistas/procedimientos/paquetes de otros usuarios o simplemente datos.
Primeramente creamos el usuario con la instrucción:
Create user usr_oracleros identified by oracleros2012;
Asignamos un tablespace para el usuario.
alter user usr_oracleros default tablespace USER_DATA;
En este caso el tablepaces ya estaba creado en la base de datos, en caso de que no exista dicho tablespace procedemos a crear con la siguiente instrucción:
Create tablespace USER_DATA datafile ‘/oradata/db/db_data01.dbf’ size 1000M autoextend on next 1024M maxsize 22000M;
Oracle nos da la opcion de limitar ese espacio para el usuario de tal manera a que el usuario no se exceda al momento de crear sus objetos. Para este caso vamos a definir que utilice todo lo que necesita.
alter user usr_oracleros quota unlimited on USER_DATA;
Ahora procedemos a dar el privilegio para la conexión a la base de datos.
grant create session to Usr_oracleros;
Con esto ya el usuario puede ingresar a la base de datos pero requiere de privilegios para ver los objetos.
Si necesita eliminar algún usuario en la base de datos lo debera hacer de la siguiente manera:
drop user nanfer cascade;
Dos: Usuarios de esquemas de base de datos.
Cuando creamos un sistema nuevo necesitamos definir que tablas vamos a necesitar y crear asi como tambien que procedimientos, vistas, indices puede llegar a requerir nuestro sistema, es allí cuando la solucion a esos objetos que requiere el sistema, es necesario crearlo bajo un usuario, es alli donde el usuario pasa a convertirse en esquema. Pero porque esquema? El usuario seguirá siendo usuario siempre y cuando no tenga objetos creados en la base de datos bajo su nombre, su rol sea de uso exclusivo para consultar, modificar, eliminar datos en esquemas de otros, cuando el usuario crea un objeto bajo su mismo usuario, directamente pasa a ser esquema de base de datos.
Ejemplo: Una tabla para pedidos del esquema oracleros. La tabla seria oracleros.pedidos o un procedimiento para alta de pedidos oracleros.altabajapedidos.
Recuerden que siempre se antepone el nombre del esquema y luego el objeto de base de datos. Solo para los usuarios dueños de objetos no es necesario anteponer el nombre.
Ejemplo: Tabla Pedidos, Procedimiento Altabajapedidos
Un usuario que tiene un objeto creado bajo su nombre pasa a convertirse en esquema de base datos.