martes, 19 de marzo de 2013

Comandos (bd oracle)

Conectarse a la base de datos
Para conectarse a la base de datos oracle hay que seguir los siguientes pasos:
1. Abrir una terminal
2. loguearse como su - oracle o en su caso hacer referencia a donde esta el HOME de su base de datos.
3. una vez escrita la contraseña correspondiente escribir sqlplus /nolog
4. Luego conectarse como usuario sys
   SQL>  connect sys as sysdba;
5. el siguiente paso es levantar la base de datos, para hacerlo se debe escribir:
  SQL> startup
y después de un minutos aprox.(dependiendo de la velocidad de tu maquina) nos dirá que la base de datos
a sido montada y abierta.
6. Una vez conectado a la BD ya puedes hacer consultas, cambios, modificaciones, etc. en la base de datos.

Conectarse a la base de datos con el usuario HR
Para hacerlo es necesario primero haberlo habilitado (luego subiré como hacerlo), una vez que ya esta habilitado debemos seguir los pasos 1-5 del apartado Conectarse a la base de datos y luego continuar con estos:
7. Salirse del usuario sys, para hacerlo solo escribe exit y damos enter.
8. Después de haber hecho el paso anterior la BD quedará montada pero el usuario sys desconectado así como sqlplus, por lo que tenemos que entrar nuevamente a sqlplus como en el paso 3.
 bash > sqlplus /nolog

9. El siguiente paso es conectarse con el usuario deseado (ver NOTA) en este caso hr.
   SQL> connect HR/HR;  donde el primer HR es el nombre del usuario y el segundo HR es la contraseña en este caso son la misma, la contraseña depende de cual le hayas asignado.
10. Una vez aquí ya podrás hacer lo que esta permitido para este usuario.

NOTA: El procedimiento es el mismo para cualquier usuario previamente ya creado.

Comandos para crear un PROFILE (perfil).


Profile
Un perfil sirve básicamente para definir el tiempo de sesión de un usuario, es decir para que el usuario no se ocupe recursos que posiblemente no este usando.
Crear un perfil llamado hrprofile, el cual tenga un limite de tiempo de 5 min.

  Ej. CREATE PROFILE hrprofile LIMIT
        SESSIONS_PER_USER                            UNLIMITED
        CPU_PER_SESSION                              UNLIMITED
        CPU_PER_CALL                                    3000
        CONNECT_TIME                                   5     
        LOGICAL_READS_PER_SESSION      DEFAULT
        LOGICAL_READS_PER_CALL            DEFAULT
        PRIVATE_SGA                                       15K
        COMPOSITE_LIMIT                               5000000;
        

Comandos para crear un ROLE

CREATE ROLE + nombre del rol;
   ej. CREATE ROLE hrclerk;
   ej. CREATE ROLE hrmanager;

 Dar permisos

Al role hrclerk permitirle, select, insert y update en la tabla hr.employees

  GRANT SELECT, INSERT, UPDATE on hr.employees  to hrclerk;

Al role hrmanager permitirle delete e insert de la tabla hr.employees

 GRANT INSERT, DELETE on hr.employees to hrmanager;

Para consultar los roles definidos y los privilegios otorgados a través de ellos, utilize las vistas:

SQL> SELECT * FROM DBA_ROLES;
SQL> SELECT * FROM DBA_ROLE_PRIVS order by GRANTEE;

En mi caso si quiero ver cuales son los usuarios asignados a cada role uso:
select * from dba_roles_privs where grantee_role = 'hrclerk' or grantee_role = 'hrmanager' order by grantee;

Levantar el listener en una Base de Datos Oracle
Es necesario levantar el listener cuando queremos hacer alguna acción que necesite la comunicación de la base de datos ya se con alguna otra bd (bd distribuida) o bien cuando se queremos hacer alguna conexión de nuestra base de datos con Java o alguna aplicación.

Para hacerlo primero
1.- Nos logueamos como su - oracle y escribimos la contraseña (la forma de loguearse es indistinta ya que puede haber varias formas de hacerlo pero el detalle es que tenemos que entrar al HOME de Oracle).

2.- Escribimos el comando: nom_listener start (ej. lsnrctl start).

Si queremos parar el listener podemos usar:
$ nom_listener stop (ej. lsnrctl stop)

Si solo queremos revisar el status del listener, estonces escribimos:
lsnrctl status

PL/SQL (Procedural Language/Structured Query Language)
Es un lenguaje de programación de oracle que soporta todas las consultas de SQL pero además sirve para crear: triggers, procedimientos, funciones, etc., una vez instalada la base de datos no es necesario instalar nada para pogramar en PL/SQL, bueno miento si es necesario que sepan programar en PL/SQL que realmente es muy sencillo si se tienen conocimientos de programación.

COMANDOS PARA CREAR UN PROCEDIMIENTO EN PL/SQL

continuara .....

Sus comentarios son muy importantes, pueden pedir que es lo que quieren saber, y con gusto lo subire.