Practica en Oracle Hector Manuel Zara Perez
-
Upload
hector-manuel-zrt-prz -
Category
Documents
-
view
227 -
download
0
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