[pgbr-geral] RES: Banco Multiempresa
Oi pessoal, To vendo essa conversa se estender, e quero dar minha opinião, pois tenho sistema multiempresa rodando. Quando vejo a discussão sobre as permissões no banco de dados, me pergunto por que o usuário terá a liberdade de operar em cima dele fora do sistema. Creio que somente o DBA devesse ter esse direito. Sendo assim, no sistema, ao iniciar, seta-se uma variável global com o código da empresa atual, e somente esses dados serão carregados/listados/alterados. E ninguém tem a senha de login no banco, exceto o DBA. Criar esquemas vai gerar um custo muito alto de manutenção desse banco, pra sincronizar metadados, mesmo que seja para CX2, como disseram. E separar em tabelas distintas também. Concordo plenamente com o Mozart. De: Adriano Espinoza de Oliveira [mailto:adrianoespin...@gmail.com] Enviada em: quinta-feira, 11 de dezembro de 2008 13:52 Para: Comunidade PostgreSQL Brasileira Assunto: Re: [pgbr-geral] Banco Multiempresa Mozart, concordo com você!!! Mas, como você mesmo, pode servir para alguem... No caso do Saulo, está na cara que trata-se de um caixa 2, e bla bla bla... APARENTEMENTE digo APARENTEMENTE uma esquartejada de leve não vai trazer problemas Adriano 2008/12/11 Mozart Hasse mozart.ha...@usa.net Bases separadas?! Para brincar até dá, mas... e se o teu banco tiver mais 800 tabelas?? O que é que se faz com as 2000 chaves estrangeiras e os 4000 índices?! Cria em todas as bases de filiais ?! Lindo, e aí é só configurar alguns arquivinhos super triviais do SLONY para sincronizar as míseras 200 tabelas de uso comum a todas as filiais. Vamos pensar *médio*. E se você quiser tirar um relatório gerencial das 30 filiais do mesmo *estado* ? (Brasil inteiro não, que eu propus pensar *médio*!) Quantos UNIONs você vai ter de fazer se a consulta de uma empresa só você já precisa de umas 8? Quanto tempo você acha que o planejador vai gastar só descobrindo se ele dá conta de rodar um comando desse tamanho? Agora o divertido mesmo vai ser atualizar a estrutura desse negócio. Que tal rodar o mesmo script ALTER TABLE nas 30 filiais? Acha que um scriptzinho criado via cut-paste ou macros mirabolantes para usar na linha de comando quebram teu galho? Bom, o interessante vai ser explicar para o cliente que ele vai precisar de um DBA toda a vez que quiser cadastrar uma filial nova. Fico imaginando quanto tempo o cliente vai gastar com DBAs só monitorando o SLONY para garantir que ele atualizou as tabelas comuns em todas essas bases e que todas as tabelas estão com a mesma estrutura. O legal mesmo vai ser alguém precisar rodar (ou precisar de algo equivalente) um UPDATE em todas as filiais de uma vez, dentro de uma só transação... Sinto muito, essa idéia de esquartejar bases até pode servir para alguém, mas no meu caso, na-na-ni-na-não. Mozart Hasse Sobre o assunto, eu *não* misturaria dados de empresas distintas em uma mesma tabela sem utilizar um controle de permissões a nível de registros (como os descritos acima) porque seria fácil, senão trivial, conseguir dados indevidos. Como alguns colegas sugeriram, eu optaria por utilizar esquemas para separar empresas e utilizaria a nomenclatura nomedomodulo_nomedoobjeto para designar os objetos (tabelas, funções, visões, etc). ___ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral ___ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
[pgbr-geral] RES: Banco Multiempresa
No meu caso também não. Fica muito complicado. Mas a idéia de permissões por registros, como no Veil, é bem interessante. Alguém da lista está usando, para nos passar feedbacks? At.te, Alisson Viegas [EMAIL PROTECTED] --- Acsiv Sistemas www.acsiv.com.br -Mensagem original- De: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] Em nome de Mozart Hasse Enviada em: quinta-feira, 11 de dezembro de 2008 12:59 Para: pgbr-geral@listas.postgresql.org.br Assunto: Re: [pgbr-geral] Banco Multiempresa Bases separadas?! Para brincar até dá, mas... e se o teu banco tiver mais 800 tabelas?? O que é que se faz com as 2000 chaves estrangeiras e os 4000 índices?! Cria em todas as bases de filiais ?! Lindo, e aí é só configurar alguns arquivinhos super triviais do SLONY para sincronizar as míseras 200 tabelas de uso comum a todas as filiais. Vamos pensar *médio*. E se você quiser tirar um relatório gerencial das 30 filiais do mesmo *estado* ? (Brasil inteiro não, que eu propus pensar *médio*!) Quantos UNIONs você vai ter de fazer se a consulta de uma empresa só você já precisa de umas 8? Quanto tempo você acha que o planejador vai gastar só descobrindo se ele dá conta de rodar um comando desse tamanho? Agora o divertido mesmo vai ser atualizar a estrutura desse negócio. Que tal rodar o mesmo script ALTER TABLE nas 30 filiais? Acha que um scriptzinho criado via cut-paste ou macros mirabolantes para usar na linha de comando quebram teu galho? Bom, o interessante vai ser explicar para o cliente que ele vai precisar de um DBA toda a vez que quiser cadastrar uma filial nova. Fico imaginando quanto tempo o cliente vai gastar com DBAs só monitorando o SLONY para garantir que ele atualizou as tabelas comuns em todas essas bases e que todas as tabelas estão com a mesma estrutura. O legal mesmo vai ser alguém precisar rodar (ou precisar de algo equivalente) um UPDATE em todas as filiais de uma vez, dentro de uma só transação... Sinto muito, essa idéia de esquartejar bases até pode servir para alguém, mas no meu caso, na-na-ni-na-não. Mozart Hasse Sobre o assunto, eu *não* misturaria dados de empresas distintas em uma mesma tabela sem utilizar um controle de permissões a nível de registros (como os descritos acima) porque seria fácil, senão trivial, conseguir dados indevidos. Como alguns colegas sugeriram, eu optaria por utilizar esquemas para separar empresas e utilizaria a nomenclatura nomedomodulo_nomedoobjeto para designar os objetos (tabelas, funções, visões, etc). ___ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral ___ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
Re: [pgbr-geral] RES: Banco Multiempresa
Sou novo na área de TI, e estou criando um projeto de um Sistema OpenSource, para empresas de TI mas com esta discussão acabei ficando curioso com uma coisa... como se comportaria a sincronização de um banco multi-empresa, caso a Internet ficasse indisponível? (sendo que o banco das filiais filiais replicam entre si, e entre a matriz)...? *quais as melhores ferramentas/ metodologias, para gerenciar esta replicação dos dados?* a questão da indisposição da Internet deve ser levada em conta durante a criação de um sistema deste porte (multi-empresa), certo? *então deve ser um requisito que o sistema (base de dados) sozinho, volte a sincronizar os dados atrasados, sem a necessidade de um DBA, certo?* 2008/12/11 Alisson Viegas | Acsiv Sistemas [EMAIL PROTECTED] No meu caso também não. Fica muito complicado. Mas a idéia de permissões por registros, como no Veil, é bem interessante. Alguém da lista está usando, para nos passar feedbacks? At.te, Alisson Viegas [EMAIL PROTECTED] --- Acsiv Sistemas www.acsiv.com.br -Mensagem original- De: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] Em nome de Mozart Hasse Enviada em: quinta-feira, 11 de dezembro de 2008 12:59 Para: pgbr-geral@listas.postgresql.org.br Assunto: Re: [pgbr-geral] Banco Multiempresa Bases separadas?! Para brincar até dá, mas... e se o teu banco tiver mais 800 tabelas?? O que é que se faz com as 2000 chaves estrangeiras e os 4000 índices?! Cria em todas as bases de filiais ?! Lindo, e aí é só configurar alguns arquivinhos super triviais do SLONY para sincronizar as míseras 200 tabelas de uso comum a todas as filiais. Vamos pensar *médio*. E se você quiser tirar um relatório gerencial das 30 filiais do mesmo *estado* ? (Brasil inteiro não, que eu propus pensar *médio*!) Quantos UNIONs você vai ter de fazer se a consulta de uma empresa só você já precisa de umas 8? Quanto tempo você acha que o planejador vai gastar só descobrindo se ele dá conta de rodar um comando desse tamanho? Agora o divertido mesmo vai ser atualizar a estrutura desse negócio. Que tal rodar o mesmo script ALTER TABLE nas 30 filiais? Acha que um scriptzinho criado via cut-paste ou macros mirabolantes para usar na linha de comando quebram teu galho? Bom, o interessante vai ser explicar para o cliente que ele vai precisar de um DBA toda a vez que quiser cadastrar uma filial nova. Fico imaginando quanto tempo o cliente vai gastar com DBAs só monitorando o SLONY para garantir que ele atualizou as tabelas comuns em todas essas bases e que todas as tabelas estão com a mesma estrutura. O legal mesmo vai ser alguém precisar rodar (ou precisar de algo equivalente) um UPDATE em todas as filiais de uma vez, dentro de uma só transação... Sinto muito, essa idéia de esquartejar bases até pode servir para alguém, mas no meu caso, na-na-ni-na-não. Mozart Hasse Sobre o assunto, eu *não* misturaria dados de empresas distintas em uma mesma tabela sem utilizar um controle de permissões a nível de registros (como os descritos acima) porque seria fácil, senão trivial, conseguir dados indevidos. Como alguns colegas sugeriram, eu optaria por utilizar esquemas para separar empresas e utilizaria a nomenclatura nomedomodulo_nomedoobjeto para designar os objetos (tabelas, funções, visões, etc). ___ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral ___ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral -- Lucas de Souza D'Ávila Graduando em Sistema de Informação - Escola Superior de Criciúma, ESUCRI (localizada em Criciuma, SC) CV Lattes: http://lattes.cnpq.br/9245658982061645 ___ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
Re: [pgbr-geral] RES: Banco Multiempresa
2008/12/11 Lucas Souza [EMAIL PROTECTED]: Sou novo na área de TI, e estou criando um projeto de um Sistema OpenSource, para empresas de TI mas com esta discussão acabei ficando curioso com uma coisa... como se comportaria a sincronização de um banco multi-empresa, caso a Internet ficasse indisponível? (sendo que o banco das filiais filiais replicam entre si, e entre a matriz)...? quais as melhores ferramentas/ metodologias, para gerenciar esta replicação dos dados? a questão da indisposição da Internet deve ser levada em conta durante a criação de um sistema deste porte (multi-empresa), certo? então deve ser um requisito que o sistema (base de dados) sozinho, volte a sincronizar os dados atrasados, sem a necessidade de um DBA, certo? Lucas, veja o histórico. esse é um assunto bastante discutido. procure por slony, master/slave, coisas assim... um abraço -- Atenciosamente, Sebastian Selau Webber Colombo ___ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
[pgbr-geral] RES: Banco Multiempresa
Pessoal, não da pra usar esquemas, porque to usando eles para separar os setores. Por exemplo: schema financeiro schema cadastro A opção de deixar o código da empresa das tabelas tbm é uma boa, porem os dados não vão ficar juntos, o outro banco vai ficar em uma HD externa. Aí vem outra questão. Criei um tablespace pra um banco dentro da HD e funcionou blz, mas fiz pequenos testes. Alguém tem algum banco funcionando dentro de pen drive ou HD externa? De: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] Em nome de Adriano Espinoza de Oliveira Enviada em: terça-feira, 9 de dezembro de 2008 23:48 Para: [EMAIL PROTECTED]; Comunidade PostgreSQL Brasileira Assunto: Re: [pgbr-geral] Banco Multiempresa Isso é óbvio, mas de qq forma é + lento do que as outras idéias... 2008/12/9 Shairon Toledo [EMAIL PROTECTED] - dblink é lento depende do enlace entre os nós. 2008/12/9 Adriano Espinoza de Oliveira [EMAIL PROTECTED] Esqueci... ai vc da permissão ao usuario de acordo com o numero da empresae por ai vai... Adriano Espinoza 2008/12/9 Adriano Espinoza de Oliveira [EMAIL PROTECTED] - dblink é lento - acho uma boa usar schemas... - mas vc pode tb colocar a coluna com o codigo da empresa... nas tabelas... - na hora de totalizar.. ta facil... Adriano Espinoza 2008/12/9 Sebastian SWC [EMAIL PROTECTED] 2008/12/9 Shairon Toledo [EMAIL PROTECTED]: Dblink é uma boa para gerar relatórios multibancos. pode até ser. mas é muito mais simples e prático utilizar os esquemas. -- Atenciosamente, Sebastian Selau Webber Colombo ___ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral ___ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral -- [ ]'s Shairon Toledo http://www.hashcode.eti.br ___ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral ___ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
Re: [pgbr-geral] RES: Banco Multiempresa
2008/12/10 Saulo Morais Lara [EMAIL PROTECTED]: Pessoal, não da pra usar esquemas, porque to usando eles para separar os setores. Por exemplo: schema financeiro schema cadastro Ainda não vi o porque de não usar esquemas... hj talvez seja mais dificil jogar todos os dados em vários bancos. mas se um dia você precisar junta-los novamente será um baita trabalho! será muito mais eficiente se você declarar na pk o código da empresa, filial ou unidade. A opção de deixar o código da empresa das tabelas tbm é uma boa, porem os dados não vão ficar juntos, o outro banco vai ficar em uma HD externa. Como assim? para que usar um hd externo com velocidade de leitura e gravação inferior aos do servidor? Aí vem outra questão. Criei um tablespace pra um banco dentro da HD e funcionou blz, mas fiz pequenos testes. Alguém tem algum banco funcionando dentro de pen drive ou HD externa? Eu não seria louco de deixar um banco em produção dessa forma! se queimar o pendrive posso dizer adeus aos dados e ter que voltar ao backup. Pelo que vejo você precisa de uma solução de backup mais eficiente e não deixar o banco em um disco externo. Como alguém já disse muito aqui na lista: Qual é o valor dos seus dados? -- Atenciosamente, Sebastian Selau Webber Colombo ___ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
[pgbr-geral] RES: Banco Multiempresa
Como assim? para que usar um hd externo com velocidade de leitura e gravação inferior aos do servidor? Não sei como explicar aqui, mas os dados não pode ficar no servidor. E a única maneira que vi foi gravando em alguma coisa externa e que possa ser removível. E criando um segundo banco nela. ___ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
Re: [pgbr-geral] RES: Banco Multiempresa
Acho a opção dos Schemas a melhor, pois como já foi dito na hora de juntar os dados é bem mais simples. Agora, nesta fase inicial, dará mais trabalho, mas acho melhor trabalhar com a visão de futuro. Quanto ao HD externo: - O banco ficará disponível 24x7, se sim não vejo pq usar o externo é mais trabalhoso (como já foi dito) - Caso o banco não seja 24x7, usa um job pra fazer o backup e restore em horários definidos (início e término de expediente) e ae vc limpa os dados do server e os guarda no HD externo. Mas durante o uso ficam disponíveis no servidor que é mais rápido. Mas saliento o que já foi dito... NÃO É A MELHOR OPÇÃO. Tácio Vilela MSN: [EMAIL PROTECTED] SKYPE: taciovilela ...E que a luz dos meus olhos não se apague, ainda que eles se fechem... - Evite imprimir. Colabore com o Meio Ambiente. ___ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
Re: [pgbr-geral] RES: Banco Multiempresa
On Wed, Dec 10, 2008 at 10:44 AM, Saulo Morais Lara [EMAIL PROTECTED] wrote: Como assim? para que usar um hd externo com velocidade de leitura e gravação inferior aos do servidor? Não sei como explicar aqui, mas os dados não pode ficar no servidor. E a única maneira que vi foi gravando em alguma coisa externa e que possa ser removível. E criando um segundo banco nela. O.o Porque não deixar o banco de dados em um servidor externo e permitir acesso a ele através de webservices ou coisa parecida? -- Atenciosamente, Sebastian Selau Webber Colombo ___ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
Re: [pgbr-geral] RES: Banco Multiempresa
A opção de deixar o código da empresa das tabelas tbm é uma boa, porem os dados não vão ficar juntos, o outro banco vai ficar em uma HD externa. Como assim? para que usar um hd externo com velocidade de leitura e gravação inferior aos do servidor? isso ta com uma cara de caixa 2 ___ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
Re: [pgbr-geral] RES: Banco Multiempresa
Segate: eu ja implemente um negóssimo assim e ficou show de bola! - dados da empresa 1 e 2 ficavam no mesmo banco com o codigo da empresa separando tudo - quando o usuario logava no sistema colocando o @ no final do nome, ele enchergava a empresa 2, por exemplo: [EMAIL PROTECTED] - e na aplicação, que era feita em Delphi, eu olhava o era @, para montar as queries com union... Ficou transaparente e facil e no caso de necessidade basta o usuário logar com seu proprio nome: ex: adriano No seu caso... vc quer separar o banco... talvez o uso do dblink seja o mais indicado e vc tenha que montar as queries dinamicamente dentro da aplicação. Isso foi válido p/ mim porque eu tinha somente duas empresas, e seria sempre assim! Se voce tiver que fazer isso com mais de uma empresa, ai é loucura fazer dessa forma. Adriano 2008/12/10 Saulo Morais Lara [EMAIL PROTECTED] Pessoal, não da pra usar esquemas, porque to usando eles para separar os setores. Por exemplo: schema financeiro schema cadastro A opção de deixar o código da empresa das tabelas tbm é uma boa, porem os dados não vão ficar juntos, o outro banco vai ficar em uma HD externa. Aí vem outra questão. Criei um tablespace pra um banco dentro da HD e funcionou blz, mas fiz pequenos testes. Alguém tem algum banco funcionando dentro de pen drive ou HD externa? *De:* [EMAIL PROTECTED] [mailto: [EMAIL PROTECTED] *Em nome de *Adriano Espinoza de Oliveira *Enviada em:* terça-feira, 9 de dezembro de 2008 23:48 *Para:* [EMAIL PROTECTED]; Comunidade PostgreSQL Brasileira *Assunto:* Re: [pgbr-geral] Banco Multiempresa Isso é óbvio, mas de qq forma é + lento do que as outras idéias... 2008/12/9 Shairon Toledo [EMAIL PROTECTED] - dblink é lento depende do enlace entre os nós. 2008/12/9 Adriano Espinoza de Oliveira [EMAIL PROTECTED] Esqueci... ai vc da permissão ao usuario de acordo com o numero da empresae por ai vai... Adriano Espinoza 2008/12/9 Adriano Espinoza de Oliveira [EMAIL PROTECTED] - dblink é lento - acho uma boa usar schemas... - mas vc pode tb colocar a coluna com o codigo da empresa... nas tabelas... - na hora de totalizar.. ta facil... Adriano Espinoza 2008/12/9 Sebastian SWC [EMAIL PROTECTED] 2008/12/9 Shairon Toledo [EMAIL PROTECTED]: Dblink é uma boa para gerar relatórios multibancos. pode até ser. mas é muito mais simples e prático utilizar os esquemas. -- Atenciosamente, Sebastian Selau Webber Colombo ___ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral ___ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral -- [ ]'s Shairon Toledo http://www.hashcode.eti.br ___ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral ___ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral ___ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
[pgbr-geral] RES: Banco Multiempresa
Tô acompanhando a discussão e uso chave estrangeira para ligar à tabela de empresas. Tá funcionando bem assim. Mas gostaria de saber como fazer o sugerido pelo colega abaixo: - - - Esqueci... ai vc da permissão ao usuario de acordo com o numero da empresae por ai vai... - - - Adriano Espinoza Como dar permissão para usar o registro caso a coluna empresa esteja preenchida com o 1 e não com 2? E for prático isso, seria uma boa ter isso no banco e não na aplicação! At.te, Alisson Viegas [EMAIL PROTECTED] --- Acsiv Sistemas www.acsiv.com.br http://www.acsiv.com.br/ De: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] Em nome de Saulo Morais Lara Enviada em: quarta-feira, 10 de dezembro de 2008 13:48 Para: 'Comunidade PostgreSQL Brasileira' Assunto: [pgbr-geral] RES: RES: Banco Multiempresa Blz pessoal. Agradeço todas opiniões. vou fazer os testes e retorno. De: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] Em nome de Adriano Espinoza de Oliveira Enviada em: quarta-feira, 10 de dezembro de 2008 11:43 Para: Comunidade PostgreSQL Brasileira Assunto: Re: [pgbr-geral] RES: Banco Multiempresa Segate: eu ja implemente um negóssimo assim e ficou show de bola! - dados da empresa 1 e 2 ficavam no mesmo banco com o codigo da empresa separando tudo - quando o usuario logava no sistema colocando o @ no final do nome, ele enchergava a empresa 2, por exemplo: [EMAIL PROTECTED] - e na aplicação, que era feita em Delphi, eu olhava o era @, para montar as queries com union... Ficou transaparente e facil e no caso de necessidade basta o usuário logar com seu proprio nome: ex: adriano No seu caso... vc quer separar o banco... talvez o uso do dblink seja o mais indicado e vc tenha que montar as queries dinamicamente dentro da aplicação. Isso foi válido p/ mim porque eu tinha somente duas empresas, e seria sempre assim! Se voce tiver que fazer isso com mais de uma empresa, ai é loucura fazer dessa forma. Adriano 2008/12/10 Saulo Morais Lara [EMAIL PROTECTED] Pessoal, não da pra usar esquemas, porque to usando eles para separar os setores. Por exemplo: schema financeiro schema cadastro A opção de deixar o código da empresa das tabelas tbm é uma boa, porem os dados não vão ficar juntos, o outro banco vai ficar em uma HD externa. Aí vem outra questão. Criei um tablespace pra um banco dentro da HD e funcionou blz, mas fiz pequenos testes. Alguém tem algum banco funcionando dentro de pen drive ou HD externa? De: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] Em nome de Adriano Espinoza de Oliveira Enviada em: terça-feira, 9 de dezembro de 2008 23:48 Para: [EMAIL PROTECTED]; Comunidade PostgreSQL Brasileira Assunto: Re: [pgbr-geral] Banco Multiempresa Isso é óbvio, mas de qq forma é + lento do que as outras idéias... 2008/12/9 Shairon Toledo [EMAIL PROTECTED] - dblink é lento depende do enlace entre os nós. 2008/12/9 Adriano Espinoza de Oliveira [EMAIL PROTECTED] Esqueci... ai vc da permissão ao usuario de acordo com o numero da empresae por ai vai... Adriano Espinoza 2008/12/9 Adriano Espinoza de Oliveira [EMAIL PROTECTED] - dblink é lento - acho uma boa usar schemas... - mas vc pode tb colocar a coluna com o codigo da empresa... nas tabelas... - na hora de totalizar.. ta facil... Adriano Espinoza 2008/12/9 Sebastian SWC [EMAIL PROTECTED] 2008/12/9 Shairon Toledo [EMAIL PROTECTED]: Dblink é uma boa para gerar relatórios multibancos. pode até ser. mas é muito mais simples e prático utilizar os esquemas. -- Atenciosamente, Sebastian Selau Webber Colombo ___ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral ___ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral -- [ ]'s Shairon Toledo http://www.hashcode.eti.br ___ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral ___ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral ___ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
Re: [pgbr-geral] RES: Banco Multiempresa
hummm qdo eu fiz isso eu fiz na aplicação...Mas no banco seria interessante...talvez colocando em duas tabelas diferentes... com um usuario que tem permissao somente para uma tabela e outro usuario que tem permissao para as duas... usando meu exemplo: se for @ usa um usuario, se não for usa outro e monta a query dinamicamente... Adriano 2008/12/10 Alisson Viegas | Acsiv Sistemas [EMAIL PROTECTED] Tô acompanhando a discussão e uso chave estrangeira para ligar à tabela de empresas. Tá funcionando bem assim. Mas gostaria de saber como fazer o sugerido pelo colega abaixo: - - - Esqueci... ai vc da permissão ao usuario de acordo com o numero da empresae por ai vai... - - - Adriano Espinoza Como dar permissão para usar o registro caso a coluna empresa esteja preenchida com o 1 e não com 2? E for prático isso, seria uma boa ter isso no banco e não na aplicação! At.te, Alisson Viegas [EMAIL PROTECTED] --- Acsiv Sistemas www.acsiv.com.br *De:* [EMAIL PROTECTED] [mailto: [EMAIL PROTECTED] *Em nome de *Saulo Morais Lara *Enviada em:* quarta-feira, 10 de dezembro de 2008 13:48 *Para:* 'Comunidade PostgreSQL Brasileira' *Assunto:* [pgbr-geral] RES: RES: Banco Multiempresa Blz pessoal. Agradeço todas opiniões. vou fazer os testes e retorno. *De:* [EMAIL PROTECTED] [mailto: [EMAIL PROTECTED] *Em nome de *Adriano Espinoza de Oliveira *Enviada em:* quarta-feira, 10 de dezembro de 2008 11:43 *Para:* Comunidade PostgreSQL Brasileira *Assunto:* Re: [pgbr-geral] RES: Banco Multiempresa Segate: eu ja implemente um negóssimo assim e ficou show de bola! - dados da empresa 1 e 2 ficavam no mesmo banco com o codigo da empresa separando tudo - quando o usuario logava no sistema colocando o @ no final do nome, ele enchergava a empresa 2, por exemplo: [EMAIL PROTECTED] - e na aplicação, que era feita em Delphi, eu olhava o era @, para montar as queries com union... Ficou transaparente e facil e no caso de necessidade basta o usuário logar com seu proprio nome: ex: adriano No seu caso... vc quer separar o banco... talvez o uso do dblink seja o mais indicado e vc tenha que montar as queries dinamicamente dentro da aplicação. Isso foi válido p/ mim porque eu tinha somente duas empresas, e seria sempre assim! Se voce tiver que fazer isso com mais de uma empresa, ai é loucura fazer dessa forma. Adriano 2008/12/10 Saulo Morais Lara [EMAIL PROTECTED] Pessoal, não da pra usar esquemas, porque to usando eles para separar os setores. Por exemplo: schema financeiro schema cadastro A opção de deixar o código da empresa das tabelas tbm é uma boa, porem os dados não vão ficar juntos, o outro banco vai ficar em uma HD externa. Aí vem outra questão. Criei um tablespace pra um banco dentro da HD e funcionou blz, mas fiz pequenos testes. Alguém tem algum banco funcionando dentro de pen drive ou HD externa? *De:* [EMAIL PROTECTED] [mailto: [EMAIL PROTECTED] *Em nome de *Adriano Espinoza de Oliveira *Enviada em:* terça-feira, 9 de dezembro de 2008 23:48 *Para:* [EMAIL PROTECTED]; Comunidade PostgreSQL Brasileira *Assunto:* Re: [pgbr-geral] Banco Multiempresa Isso é óbvio, mas de qq forma é + lento do que as outras idéias... 2008/12/9 Shairon Toledo [EMAIL PROTECTED] - dblink é lento depende do enlace entre os nós. 2008/12/9 Adriano Espinoza de Oliveira [EMAIL PROTECTED] Esqueci... ai vc da permissão ao usuario de acordo com o numero da empresae por ai vai... Adriano Espinoza 2008/12/9 Adriano Espinoza de Oliveira [EMAIL PROTECTED] - dblink é lento - acho uma boa usar schemas... - mas vc pode tb colocar a coluna com o codigo da empresa... nas tabelas... - na hora de totalizar.. ta facil... Adriano Espinoza 2008/12/9 Sebastian SWC [EMAIL PROTECTED] 2008/12/9 Shairon Toledo [EMAIL PROTECTED]: Dblink é uma boa para gerar relatórios multibancos. pode até ser. mas é muito mais simples e prático utilizar os esquemas. -- Atenciosamente, Sebastian Selau Webber Colombo ___ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral ___ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral -- [ ]'s Shairon Toledo http://www.hashcode.eti.br ___ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral ___ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral ___ pgbr-geral mailing list pgbr-geral
Re: [pgbr-geral] RES: Banco Multiempresa
Adriano Espinoza de Oliveira escreveu: hummm qdo eu fiz isso eu fiz na aplicação... Mas no banco seria interessante...talvez colocando em duas tabelas diferentes... com um usuario que tem permissao somente para uma tabela e outro usuario que tem permissao para as duas... Isso se chama permissão a nível de registros. Existe um projeto chamado veil [1] que faz exatamente isso. Seguindo a mesma linha, está em processo de revisão o SE-PostgreSQL [2] que é um controle de acesso baseado na política de segurança do SELinux; se tudo correr bem, ele estará no 8.4. Sobre o assunto, eu *não* misturaria dados de empresas distintas em uma mesma tabela sem utilizar um controle de permissões a nível de registros (como os descritos acima) porque seria fácil, senão trivial, conseguir dados indevidos. Como alguns colegas sugeriram, eu optaria por utilizar esquemas para separar empresas e utilizaria a nomenclatura nomedomodulo_nomedoobjeto para designar os objetos (tabelas, funções, visões, etc). [1] http://pgfoundry.org/projects/veil/ [2] http://wiki.postgresql.org/wiki/SEPostgreSQL -- Euler Taveira de Oliveira http://www.timbira.com/ ___ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
Re: [pgbr-geral] RES: Banco Multiempresa
Sem duvida sua sugestão é mais segura.boa!Adriano 2008/12/10 Euler Taveira de Oliveira [EMAIL PROTECTED] Adriano Espinoza de Oliveira escreveu: hummm qdo eu fiz isso eu fiz na aplicação... Mas no banco seria interessante...talvez colocando em duas tabelas diferentes... com um usuario que tem permissao somente para uma tabela e outro usuario que tem permissao para as duas... Isso se chama permissão a nível de registros. Existe um projeto chamado veil [1] que faz exatamente isso. Seguindo a mesma linha, está em processo de revisão o SE-PostgreSQL [2] que é um controle de acesso baseado na política de segurança do SELinux; se tudo correr bem, ele estará no 8.4. Sobre o assunto, eu *não* misturaria dados de empresas distintas em uma mesma tabela sem utilizar um controle de permissões a nível de registros (como os descritos acima) porque seria fácil, senão trivial, conseguir dados indevidos. Como alguns colegas sugeriram, eu optaria por utilizar esquemas para separar empresas e utilizaria a nomenclatura nomedomodulo_nomedoobjeto para designar os objetos (tabelas, funções, visões, etc). [1] http://pgfoundry.org/projects/veil/ [2] http://wiki.postgresql.org/wiki/SEPostgreSQL -- Euler Taveira de Oliveira http://www.timbira.com/ ___ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral ___ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral