A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

Laboratório de Banco de Dados SGBD Oracle 10 G

Apresentações semelhantes


Apresentação em tema: "Laboratório de Banco de Dados SGBD Oracle 10 G"— Transcrição da apresentação:

1 Laboratório de Banco de Dados SGBD Oracle 10 G
Marilde Santos

2 Usuários e direitos… Segurança: Um dos pontos fortes do Oracle
Tabelas e views somente podem ser manipulados por outros caso o dono ou o DBA permitam. Usuários ao serem criados não possuem sequer direito de conexão ao banco. Os privilégios devem ser oferecidos para que possam conectar-se, criar e alterar tabelas, etc.

3 Conceitos iniciais… Usuário Schema
Indivíduo que se conecta ao banco e utiliza objetos dele. Pode criar objetos e permitir que outros usuários os manipulem. Schema Conjunto de objetos (tabelas, índices, visões, etc.) de um usuário. Select * from cat;

4 Conceitos iniciais… Privilégio: direito que um usuário recebe para fazer algo. de sistema: permitem desde realizar conexões até eliminar qualquer tabela. de objeto: afetam apenas um objeto desde ler até eliminar. Papel (Role) Conjunto de privilégios agrupados e com um nome. Facilita bastante a gerência de privilégios.

5 Conceitos iniciais… Perfil (Profile)
Limites que restringem as ações de um usuário. Quando os recursos disponíveis forem fatores críticos, o DBA pode criar profiles e atribuí-los a usuários. Limites que podem ser impostos: sessions_per_user, cpu_per_session, cpu_per_call, connect_time, idle_time, logical_reads_per_session, logical_reads_per_call, private_sga, comosite_limit, failed_login_attempts, password_*

6 Criando usuários… O DBA, ou alguém autorizado por ele, é quem cria usuários Sintaxe: Create user nome identified [by senha | externally] default tablespace nome temporary tablespace nome quota [inteiro [k | M] | unlimited] on tablespace

7 Criando usuários… Exemplo: Create user monica
identified [by leonardo | externally] default tablespace users quota 1 M on tablespace

8 Criando usuários… Para comprovar a existência de um usuário:
Select * from all_user; Para alterar a senha de acesso ao Oracle: Alter user monick identified by thiago; Pode-se suspender um usuário: Alter user monick account lock; (temporário) Drop user monick cascade; (definitivo) Para desbloquear: alter user monick account unlock

9 Conectando… Nosso ambiente: Servidor Windows: mustang.comp.ufscar.br
Servidor Linux: falcon.comp.ufscar.br SGBD Oracle Enterprise Edition Serviço: ora8_falcon.comp.ufscar.br Putty SSH: falcon.comp.ufscar.br Login e senha : Pessoal da mig. Prompt do linux: Sqlplus Login e senha: usuario oracle

10 Conectando… Nosso ambiente (cont): Laboratório LIG Putty
SSH: falcon.comp.ufscar.br Login e senha : Pessoal da mig. Prompt do linux: Sqlplus Login e senha: usuario oracle

11 Conectando… Nosso ambiente (cont): Outros locais Putty
SSH: mig.comp.ufscar.br Login e senha : Pessoal da mig. SSH: falcon.comp.ufscar.br Prompt do linux: Sqlplus Login e senha: usuario oracle

12 Concedendo privilégios…
Sintaxe: grant {privilégio [,privilégio, …] {on objeto} – tabela, view, sequence ou procedure to {usuário [,usuário,…]|role|public} [with admin option] – podem repassar os privilégios recebidos

13 Exemplos de privilégios
Grant select, insert on cursos to monick; Grant update (carga_horaria, preco) on cursos to monick with grant option; É melhor utilizar views! Grant all on cursos to public; Permissão a todos de fazer tudo em cursos!! Deve ser evitado a qualquer custo!!!

14 Criando Roles… Toda role é pública, não pertence a ninguém.
Create role nome_role [identified by senha]; Exemplo: Create role gerencia; Grant create table, create view to gerencia; Grant gerencia to monick;

15 Retirando privilégios…
Retirando privilégios de uma role: Revoke create view from gerencia; Retirando uma role de um usuário: revoke gerencia from monick;  Tais comandos só podem ser emitidos por quem emitiu os grant, ou tiver privilégios de sistema adequados!

16 Cuidado! Nem todos os privilégios de objeto podem ser concedidos a roles: References, index, read e write.

17 Criação de Tabelas Create table [schema.]tabela
(coluna1 tipo_dado [default expressão] [constraint_coluna], colunaN tipo_dado [default expressão] [constraint_coluna], [constraint-tabela] );

18 Tipos de Dados (oracle 9i)
Char(n) : cadeia de tamanho fixo. default é 1 e o máximo é 2000. Varchar2(n): cadeia de tamanho variável com o máximo de n (máximo 4000). Number(p,e): numérico p é precisão (max 38) e é escala (número de casas decimais) Date: data e hora, inclui século, ano, mes, dia, hora, minuto e segundo. Timestamp: data e horas com maior precisão.

19 Problema Controle Acadêmico
Aluno(RA, cpf, nro_rg, est_rg, Prenome, Sobrenome, telefone, endereço, UF, data_matricula) Histórico(cod_turma, RA, nota_final) Turma(cod_turma, sala, cod_instrutor, cód_curso) Instrutor(código instrutor, cpf, nro_rg, est_rg, Prenome, Sobrenome, fone, admissão) Curso(cód_curso, nome, carga_horaria, preco) PreRequisito(cod_curso, pré_requisito)

20 Exercício Criar em editor externo arquivos para criação de cada uma das tabelas do sistema de controle acadêmico (scripts) Todo comando SQL deve ser finalizado por ponto e vírgula (;) Salvar em arquivos .sql Para ativar o arquivo gerado, utilize o comando start

21 Exercício create table aluno
Aluno(RA, cpf, nro_rg, est_rg, Prenome, sobrenome, telefone, endereço, UF, data_matricula) create table aluno (RA number(3) constraint instr_pk primary key, cpf varchar2(11) constraint instr_cpf_nul not null, nro_rg varchar2(10) constraint inst_Nrg_nul not null, est_rg varchar2(2) constraint inst_Estrg_nul not null, prenome varchar2(15) constraint inst_pnome_nul not null, sobrenome varchar2(15) constraint inst_snome_nul not nul, fone varchar2(10), endereco varchar2(40), UF varchar2(2), data_matricula date default sysdate);


Carregar ppt "Laboratório de Banco de Dados SGBD Oracle 10 G"

Apresentações semelhantes


Anúncios Google