Practica en Oracle Hector Manuel Zara Perez

download Practica en Oracle Hector Manuel Zara Perez

of 23

Transcript of Practica en Oracle Hector Manuel Zara Perez

  • 7/22/2019 Practica en Oracle Hector Manuel Zara Perez

    1/23

    ASIGNATURA:

    Administracin de Base de Datos

    TEMA:

    Prcticas en ORACLE

    CATEDRTICO:

    Ing. Maribel Castillejo Toledo

    ALUMNO:

    Hctor Manuel Zarate Prez

    ESPECIALIDAD:

    Ing. Sistemas Computacionales

    SEMESTRE:

    6

    GRUPO:

    O

    HEROICA CD. DE JUCHITAN, OAX. A 25 DE MAYO DE 2014

  • 7/22/2019 Practica en Oracle Hector Manuel Zara Perez

    2/23

    ADMINISTRACIN DE BASE DE DATOS

    MANUAL DE PRACTICAS EN ORACLE

  • 7/22/2019 Practica en Oracle Hector Manuel Zara Perez

    3/23

    ADMINISTRACIN DE BASE DE DATOS

    MANUAL DE PRACTICAS EN ORACLE

    ARRANQUE Y CIERRE DE LA BASE DE DATOS EN ORACLE

    El arranque de la base de datos en Oracle, requiere de tres etapas:

    1. Arrancar la instancia

    2. Montar la base de datos

    3. Abrir la base de datos

    ARRANCAR UNA INSTANCIA:

    Creacin de los procesos background.

    Creacin de la SGA segn los parmetros del init.ora

    sqlp>startup nomount

    MONTAR LA BASE DE DATOS:

    La BD se conecta a una instancia.

    Se abren los archivos de control.

    Una BD montada y no abierta permite acciones del archivo redolog, conmutacin del modo de

    archivado, recuperacin completa de la BD, renombrado de archivos de la BD.

    sql>alter database mount

    ABRIR LA BASE DE DATOS:

    Disponible para uso normal.

    Se abren todos los archivos log y de datos.

    Recuperacin parcial.

    sql>alter database open

  • 7/22/2019 Practica en Oracle Hector Manuel Zara Perez

    4/23

    ADMINISTRACIN DE BASE DE DATOS

    MANUAL DE PRACTICAS EN ORACLE

    PRACTICA 1.-ARRANQUE DE LA BASE DE DATOS EN ORACLE

    Para poder iniciar el arranque de la base de datos de Oracle se prosigue a seguir las tres etapas

    siguientes: Arrancar la instancia, Montar la base de datos y Abrir la base de datos.

    1.-Abrimos la consola de comando de Windows (cmd)

    2.-Iniciamos sesin con el usuario administrador sys, que tiene todos los privilegios y el cual realizaralas operaciones para arrancar la base de datos.

    C:\Users\ProyectoH> sqlplus / as sysdba

  • 7/22/2019 Practica en Oracle Hector Manuel Zara Perez

    5/23

    ADMINISTRACIN DE BASE DE DATOS

    MANUAL DE PRACTICAS EN ORACLE

    3.- Arrancamos la instancia de la base de datos, En el indicador de lnea de comandos de SQL

    tecleamos los comandos:

    SQL>startup nomount

    4.-Montamos la base de datos

    SQL> alter database mount

  • 7/22/2019 Practica en Oracle Hector Manuel Zara Perez

    6/23

    ADMINISTRACIN DE BASE DE DATOS

    MANUAL DE PRACTICAS EN ORACLE

    5.- Se inicia la base de datos

    sql>alter database open

    ALTERNATIVAS DE ARRANQUE DE LA BASE DE DATOS

    Arranque con un slo comando, el comando startup, realiza los tres pasos para iniciar la base dedatos:

    SQL> startup

    Arrancar la instancia

    Monta la base de datos

    Abre la base de datos

  • 7/22/2019 Practica en Oracle Hector Manuel Zara Perez

    7/23

    ADMINISTRACIN DE BASE DE DATOS

    MANUAL DE PRACTICAS EN ORACLE

    DETENER BASE DE DATOS

    Para detener la Base de Datos Oracle se realiza mediante el comando SHUTDOWN desde

    SQL*DBA despus de haber establecido una conexin como SYS AS SYSDBA

    Existen tres tipos de shutdown:

    SHUTDOWN NORMAL

    Espera a que los usuarios conectados actualmente finalicen TODAS las operaciones.

    Evita nuevas conexiones.

    Los usuarios que intentan conectarse reciben el mensaje "Shutdown in progress".

    Cierra y desmonta la B.D.

    Cierra la SGA para los procesos background.

    No necesita recuperacion al arrancar la base de datos.

    SHUTDOWN IMMEDIATE

    Espera a que las transacciones actuales se completen.

    Evita nuevas transacciones y nuevas conexiones. Los usuarios que intentan conectarse o los que ya estn conectados al intentar realizar una

    nueva transaccin reciben el mensaje "Shutdown in progress".

    El proceso PMON finaliza las sesiones no activas y realiza ROLLBACK de aquellas

    transacciones que no estn validadas.

    Cierra y desmonta la B.D. Cierra la SGA para los procesos background.

    No necesita recuperacin al arrancar la base de datos.

    SHUTDOWN ABORT

    Parada drstica, no espera a que los usuarios conectados actualmente finalicen sus

    transacciones. El usuario conectado recibe el mensaje "No logged on".

    No se realiza ROLLBACK de las transacciones pendientes.

    El proceso PMON finaliza las sesiones no activas y realiza ROLLBACK de aquellas

    transacciones que no estn validadas.

    SI necesita recuperacin al arrancar la base de datos.

  • 7/22/2019 Practica en Oracle Hector Manuel Zara Perez

    8/23

    ADMINISTRACIN DE BASE DE DATOS

    MANUAL DE PRACTICAS EN ORACLE

    PRACTICA 1.- DETENER BASE DE DATOS

    SQL> shutdown

    SHUTDOWN IMMEDIATESQL> shutdown immediate

  • 7/22/2019 Practica en Oracle Hector Manuel Zara Perez

    9/23

    ADMINISTRACIN DE BASE DE DATOS

    MANUAL DE PRACTICAS EN ORACLE

    SHUTDOWN ABORT

    SQL> shutdown abort

  • 7/22/2019 Practica en Oracle Hector Manuel Zara Perez

    10/23

    ADMINISTRACIN DE BASE DE DATOS

    MANUAL DE PRACTICAS EN ORACLE

    PRIVILEGIOS, ROLES, PERFILES EN ORACLE

    USUARIOS

    Deben tener una cuenta asignada a travs de la cual entren en la BD y manipulen los

    objetos de la BD.

    PRIVILEGIOS

    A nivel de Objeto

    El derecho a ejecutar una accin sobre una tabla, vista, secuencia, disparador o

    procedimiento almacenado especfico.

    Puede incluir permisos para pasar privilegios de uno a otro usuario (with grant option).

    El propietario de un objeto adquiere automticamente todos los privilegios sobre dicho

    objeto.

    Los privilegios son: alter, execute, delete, index, insert, references, select, update, all.

    A nivel de Sistema

    Derecho a ejecutar un tipo de comando sobre objetos de un esquema, objetos de un tipo

    especificado, sobre el sistema o sobre un usuario.

    El dba puede tener cualquier variedad de privilegios del sistema.

    Existen unos 80 privilegios distintos disponibles.

    ROLES

    Grupo de privilegios que se concede a los usuarios o a otro rol.

    No son propiedad de nadie ni estn en un esquema.

    Se puede dar acceso a cualquier usuario a un rol excepto a uno mismo (reflexiva).

    Pueden ser activados y desactivados, por usuarios autorizados (contrasea).

    Las definiciones de roles son almacenadas en el diccionario.

    Un rol puede decidir el acceso se usuario a un objeto, pero no puede permitir la creacin de

    objetos.

    PERFILES

    Restringe la cantidad de recursos del sistema disponible para un usuario.

    Un usuario puede tener un perfil individual o utilizar los lmites por defecto.

    En principio, todos los perfiles por defecto son ilimitados.

  • 7/22/2019 Practica en Oracle Hector Manuel Zara Perez

    11/23

    ADMINISTRACIN DE BASE DE DATOS

    MANUAL DE PRACTICAS EN ORACLE

    PRIVILEGIOS DEL SISTEMA

    Privilegio Capacidades

    Manejo de Objetos ...

    CREATE ANY INDEX Crear cualquier ndice.

    CREATE [PUBLIC]SYNONYM Crear sinnimos [pblicos].

    CREATE [ANY] TABLECrear tablas. El usuario debe tener cuota en el espacio detablas, o ha de tener asignado el privilegio UNLIMITEDTABLESPACE.

    CREATE [ANY] VIEW Crear vistas.

    ALTER ANY INDEX Alterar cualquier ndice.

    ALTER ANY TABLE Alterar cualquier tabla

    DROP ANY INDEX Borrar cualquier ndice.

    DROP ANY SYNONYM Borrar cualquier sinnimo.

    DROP PUBLIC SYNONYM Borrar sinnimos pblicos.

    DROP ANY VIEW Borrar cualquier vista.

    DROP ANY TABLE Borrar cualquier tabla.

    SELECT ANY TABLE Efectuar selecciones de cualquier tabla o vista.

    INSERT ANY TABLE Insertar en cualquier tabla o vista.

    DELETE ANY TABLE Borrar filas de cualquier tabla o vista, y tambin truncar.ALTER SESSION Alterar los parmetros de la sesin.

    CREATE SESSION Conectarse a la BD.

    Gestin de la BD ...

    CREATE PROFILE Crear perfiles de usuario.

    CREATE ROLE Crear roles.

    CREATE ROLLBACKSEGMENT Creacin de segmentos de rollback.

    CREATE TABLESPACE Crear espacios de tablas.

    CREATE USER Crear usuarios.ALTER PROFILE Alterar perfiles existentes.

    ALTER ANY ROLE Alterar cualquier rol.

    ALTER ROLLBACKSEGMENT Alterar segmentos de rollback.

    ALTER TABLESPACE Alterar espacios de tablas.

    ALTER USER Alterar usuarios.

  • 7/22/2019 Practica en Oracle Hector Manuel Zara Perez

    12/23

    ADMINISTRACIN DE BASE DE DATOS

    MANUAL DE PRACTICAS EN ORACLE

    DROP PROFILE Borrar un perfil existente.

    DROP ANY ROLE Borrar cualquier rol.

    DROP ROLLBACK SEGMENTBorrar un segmento de rollback existente.

    DROP TABLESPACE Borrar un espacio de tablas.

    DROP USER Borrar un usuario. Aadir CASCADEsi el usuario posee objetos.

    ALTER DATABASE Permite una sentenciaALTER DATABASE.

    GRANT ANY PRIVILEGE Otorgar cualquiera de estos privilegios.

    GRANT ANY ROLE Otorgar cualquier rol a un usario.

    UNLIMITED TABLESPACE Puede usar una cantidad de almacenamiento ilimitada.

    DROP PROFILE Borrar un perfil existente.

    PERFILES DE USUARIO

    Recurso Descripcin

    SESSIONES_PER_USER El nmero de sesiones concurrentes que un usuario puedetener en una instancia.

    CPU_PER_SESSION El tiempo de CPU, en centenas de segundos, que una sesinpuede utilizar.

    CONNECT_TIME El nmero de minutos que una sesin puede permaneceractiva.

    IDLE_TIME El nmero de minutos que una sesin puede permanecer sinque sea utilizada de manera activa.

    LOGICAL_READS_PER_SESSION

    El nmero de bloques de datos que se pueden leer en unasesin.

    LOGICAL_READS_PER_CALLEl nmero de bloques de datos que se pueden leer en unaoperacin.

    PRIVATE_SGA La cantidad de espacio privado que una sesin puede reservaren la zona de SQL compartido de la SGA.

    COMPOSITE_LIMIT

    El nmero de total de recursos por sesin, en unidades deservicio. Esto resulta de un calculo ponderadode CPU_PER_SESSION, CONNECT_TIME,LOGICAL_READS_PER_SESSIONy PRIVATE_SGA, cuyos pesos se pueden variar con elcomando ALTER RESOURCE COST.

  • 7/22/2019 Practica en Oracle Hector Manuel Zara Perez

    13/23

    ADMINISTRACIN DE BASE DE DATOS

    MANUAL DE PRACTICAS EN ORACLE

    PRIVILEGIOS

    Privi legio Capacidades Otorgadas

    SELECT Puede consultar a un objeto.

    INSERT Puede insertar filas en una tabla o vista. Puede especificarse lascolumnas donde se permite insertar dentro de la tabla o vista.

    UPDATE Puede actualizar filas en una tabla o vista. Puede especificarse lascolumnas donde se permite actualizar dentro de la tabla o vista.

    DELETE Puede borrar filas dentro de la tabla o vista.

    ALTER Puede alterar la tabla.

    INDEX Puede crear ndices de una tabla.

    REFERENCESPuede crear claves ajenas que referencie a esta tabla.EXECUTE Puede ejecutar un procedimieto, paquete o funcin.

    CREACIN DE USUARIOS

    El objetivo de la creacin de usuarios es establecer una cuenta segura y til, que tenga los privilegios

    adecuados y los valores por defecto apropiados. En Oracle se puede especificar todo lo necesariopara abrir una cuenta con el comando CREATE USER. Los parmetros que se le pueden pasar son:

    Parmet ro Signi f icado

    Username Nombre del Usuario (Esquema)

    Password Palabra clave de la cuenta. Puede ser asociada directamente auna cuenta del sistema operativo.

    Default

    Tablespace

    Espacio de tablas por defecto en el que los objetos de esteusuario sern creados. Esto no da al usuario derechos de crearobjetos.

    TemporaryTablespace

    El espacio de tablas en el que se almacenarn los segmentostemporales de las ordenaciones.

    Quota Espacio mximo que puede ocupar en un espacio de tablas.

    Profile Asigna un perfil al usuario. Los perfiles se utilizan pararestringir el uso de recursos como el tiempo de CPU.

  • 7/22/2019 Practica en Oracle Hector Manuel Zara Perez

    14/23

    ADMINISTRACIN DE BASE DE DATOS

    MANUAL DE PRACTICAS EN ORACLE

    PRACTICA 2 CREACIN DE USUARIOS Y PRIVILEGIOS EN ORACLE.

    Esta prctica consiste en crear 3 usuarios en Oracle teniendo ciertos permisos y con la particularidad

    que los privilegios del usuario 3 es que puede asignarles privilegios a otros usuarios.

    Los privilegios son:

    - Usuario 1 solo tendr el privilegio de consultar la tabla Ventas.

    - Usuario 2 tendr el privilegio de hacer cualquier cosa con la tabla clientes.

    - Usuario 3 tendr todos los privilegios sobre todas las tablas de la Base de Datos

    Adems de poder crear usuarios nuevos y asignarle privilegios.

    USUARIO 1 SOLO TENDR EL PRIVILEGIO DE CONSULTAR LA TABLA.

    1. INGRESAMOS A LA CUENTA SYS

    SQL>sqlplus / as sysdba

    2. CREAMOS UN USUARIO

    SQL>create user hectorZPidentified by 123456;

    3. CONCEDER EL PERMISO DE CONECTARSE A LA BASE DE DATOS

    SQL> grant connect to hectorZP;

    4. CONCEDER EL PERMISO DE EFECTUAR SELECCIONES A LA TABLA VENTAS

    SQL> grant select on ventasto hectorZP;

    INGRESAR CON LA CUENTA CREADA A SQLPLUS

    C:\...> sqlplus

    Enter User-name: hectorZP

    Enter password: 123456

    SQL>

  • 7/22/2019 Practica en Oracle Hector Manuel Zara Perez

    15/23

    ADMINISTRACIN DE BASE DE DATOS

    MANUAL DE PRACTICAS EN ORACLE

    1.- CREAMOS UN USUARIO

    2.- INGRESAR CON LA CUENTA CREADA Y CONSULTAR LA TABLA VENTAS

    SQL> select * from ventas

  • 7/22/2019 Practica en Oracle Hector Manuel Zara Perez

    16/23

    ADMINISTRACIN DE BASE DE DATOS

    MANUAL DE PRACTICAS EN ORACLE

    USUARIO 2 TENDR EL TODOS LOS PRIVILEGIOS SOBRE LAS TABLAS

    1. CREAMOS UN USUARIO DESDE SYSDBA

    SQL>create user hectorZP2identified by 123456;

    SQL> grant connect to hectorZP2;

    2. CONCEDEMOS TODOS LOS PERMISOS DE EFECTUAR TODAS LAS OPERACIONES SOBRE LA TABLAVENDEDORES.

    SQL> grant all on vendedoresto hectorZP2;

    2.- INGRESAR CON LA CUENTA CREADA A SQLPLUS

    C:\...> sqlplus

    Enter User-name: hectorZP2

    Enter password: 123456

    SQL>

  • 7/22/2019 Practica en Oracle Hector Manuel Zara Perez

    17/23

  • 7/22/2019 Practica en Oracle Hector Manuel Zara Perez

    18/23

    ADMINISTRACIN DE BASE DE DATOS

    MANUAL DE PRACTICAS EN ORACLE

    USUARIO 3 TENDR TODOS LOS PRIVILEGIOS SOBRE TODAS LAS TABLAS: CLIENTES, VENDEDORES Y

    VENTAS.

    1. CREAMOS UN USUARIO DESDE SYSDBA

    SQL>create user hectorZP3identified by 123456;

    SQL> grant connect to hectorZP3;

    CONCEDEMOS TODOS LOS PERMISOS SOBRE LAS TABLAS: CLIENTES, VENDEDORES Y VENTAS.

    SQL> grant all on clientesto hectorZP3;

    SQL> grant all on vendedoresto hectorZP3;

    SQL> grant all on ventasto hectorZP3;

  • 7/22/2019 Practica en Oracle Hector Manuel Zara Perez

    19/23

    ADMINISTRACIN DE BASE DE DATOS

    MANUAL DE PRACTICAS EN ORACLE

    TABLESPACE

    Una de las tareas habituales en la administracin de una base de datos Oracle es la de crear un

    nuevo tablespace para contener nuevos objetos como tablas, ndices, etc.

    Un tablespace en Oracle es una unidad de almacenamiento lgica y utiliza datafiles para la parte

    fsica donde se guardarn las tablas, ndices.

    Existen tres tipos de TableSpace:

    2. Tablespace Permanente3. Tablespace Temporal4. Deshacer Tablespace

    TABLESPACE PERMANENTE

    Un tablespace permanente contiene objetos de esquema persistentes que se almacenan en archivos

    de datos.

    TABLESPACE TEMPORAL

    Un espacio de tablas temporal contiene objetos de esquema que se almacenan en archivos

    temporales que existen durante una sesin.

    UNDO TABLESPACE

    Un tablespace de deshacer se crea para administrar los datos de deshacer si la base de datos Oracle

    se ejecuta en el modo de gestin de deshacer automtico.

  • 7/22/2019 Practica en Oracle Hector Manuel Zara Perez

    20/23

  • 7/22/2019 Practica en Oracle Hector Manuel Zara Perez

    21/23

  • 7/22/2019 Practica en Oracle Hector Manuel Zara Perez

    22/23

    ADMINISTRACIN DE BASE DE DATOS

    MANUAL DE PRACTICAS EN ORACLE

    PRACTICA 5.- REVISAR PRIVILEGIOS DE LOS USUARIOS

    SQL>select table_name, privilege from dba_tab_privs wheregrantee='hectorZP';

    SQL>select table_name, privilege from dba_tab_privs wheregrantee='hectorZP2';

    SQL>select table_name, privilege from dba_tab_privs wheregrantee='hectorZP4';

    PRACTICA 6.- DENTRO DE LA TABLESPACE PRUEBA CREAR DOS USUARIOS

    SQL>create user hectorZP5identified by 123456;

    SQL> grant connect to hectorZP5;

    SQL>create user hectorZP6identified by 123456;

    SQL> grant connect to hectorZP6;

    ASIGNAR PRIVILEGIOS DE OBJETO AL USUARIO Y SELECT INSERT VENTAS Y VENDEDORES

    SQL> grant select,insert on vendedores to hectorZP5;

    SQL> grant select,insert on ventas to hectorZP5;

  • 7/22/2019 Practica en Oracle Hector Manuel Zara Perez

    23/23

    ADMINISTRACIN DE BASE DE DATOS

    MANUAL DE PRACTICAS EN ORACLE

    ASIGNAR PRIVILEGIOS DE SISTEMA AL USUARIO 6 CREATE TABLE

    SQL> grant create table to hectorZP6;

    BLOQUEAR A UN USUARIO

    Al bloquear a un usuario, este no tiene acceso al sistema aunque este registrado, hasta que se vuelva a activar

    su inicio sesin podr acceder.

    SQL> Alter user hectorZP6 account lock;

    Despus de haber bloqueado a un usuario este no tiene accesos

    USUARIO BLOQUEADO