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 Marilde Santos.

Apresentações semelhantes


Apresentação em tema: "Laboratório de Banco de Dados SGBD Oracle 10 G Marilde Santos."— 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 –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. –Putty –SSH: falcon.comp.ufscar.br –Login e senha : Pessoal da mig. »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: 1.Create role gerencia; 2.Grant create table, create view to gerencia; 3.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 é 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 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 Marilde Santos."

Apresentações semelhantes


Anúncios Google