Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

MPS2

Owner Oracle

Recommended Posts

Olá.

 

Como posso com o mesmo owner para usuários diferentes?

 

Exemplo: OWNER ABC para criação dos objetos (tabela) e ter 2 usuários (usuário 1 e usuário 2). Sendo que o usuário1 terá seus objetos e o usuário 2 terá seus objetos independentes um do outro.

 

Obrigado

Compartilhar este post


Link para o post
Compartilhar em outros sites

Basta o User ter os privilégios de criar os objetos passa a ser um Owner.

 

Veja o manual para maiores detalhes.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Obrigado pela resposta Motta, mas vou tentar explicar minha dúvida de uma outra forma.

 

Tenho o modelo de dados com os objetos (tabelas, constraints, index, sequence) e estes objetos estão com o owner "secretaria" (exemplo) já determinados.

 

A intenção é criar 2 usuários (secretaria_desenvolvimento e secretaria_testes) no mesmo banco de dados e que cada usuário tenha seu conjunto de objetos, embora os script DDL seja o mesmo. Ou seja, a equipe de desenvolvimento irá concetar com secretaria_desenvolvimento e a equipe de teste irá conectar com o usuário secretaria_testes. Cada equipe irá trabalhar em separado, porém no mesmo banco (mesma SID ORCL). Quando estou logado com secretaria_desenvolvimento as tabelas deste usuário não podem ser compartilhadas com as do usuário secretaria_testes, embora o script DDL seja o mesmo.

 

Ambas as equipes (desenvolvimento e testes) irão trabalhar no mesmo projeto, porém não compartilham da mesma estrutura. Cada equipe irá enxergar seus dados.

 

O problema começa quando tenho que executar o script DDL logado com o usuário secretaria_desenvolvimento ou secretaria_testes. Isso porque o modelo de dados está configurado com o owner "secretaria".

 

Não adianta eu criar os objetos (executar o script DDL) com o usuário "secretaria" e depois dar grant nos objetos para os usuários "secretaria_desenvolvimento" e "secretaria_testes" porque não queremos que a equipe de teste altere os dados que a equipe de desenvolvimento está trabalhando.

 

Como no Oracle schema = user = owner não sei como resolver esta situação.

 

Tem alguma sugestão?

Compartilhar este post


Link para o post
Compartilhar em outros sites

O ideal é ter produção e testes separados, se possível até em servidores diferentes, segurança é o aspecto mais importante nisto.

 

Como você quer trabalhar bastaria se logar ora com um user , ora com outro.

 

Não tendo outro servidor, instale outra instância.

 

A conexão ao BD pode ser feita de diversas formas, no Front-end você configura a instãncia a ser utilizada.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Não basta ora conectar com um usuário ora com outro. Não consigo nem executar o script da forma como descrevi.

 

Concordo que a melhor situação é ter ambientes diferentes. Estou de acordo com você.

 

O que preciso saber neste momento é: Com uma única instância é possível fazer o que mencionei ou um caso imposível de se fazer?

Compartilhar este post


Link para o post
Compartilhar em outros sites

O usuário Joao pode ter uma tabela Xpto, e a usuária Maria também.

 

Cada um que faça SELECT * FROM xpto terá seus dados separados.

 

Pelo que entendi cada script vai gerar os objetos para cada User/Owner.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Não Motta.

 

Eu terei um único script DDL onde os objetos estarão pre-fixados já com o owner "secretaria".

 

Então, gostaria de executar este script DDL logado tanto com os usuários "secretaria_dese" e depois executar logado com o usuário "secretaria_teste". Só que dá erro porque estou logado com um usuário e o owner no script DDL é outro.

 

Creio que a única solução para este caso é retirar o owner dos objetos que estão no script e quando executar logado com os usuários (secretaria_dese e secretaria_teste) cada um será o dono dos objetos em separado.

Compartilhar este post


Link para o post
Compartilhar em outros sites
Creio que a única solução para este caso é retirar o owner dos objetos que estão no script e quando executar logado com os usuários (secretaria_dese e secretaria_teste) cada um será o dono dos objetos em separado.

 

Sim, dentro da forma que pretende fazer.

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.