Página 1 de 2

Criar bases no mesmo servidor

Enviado: 24 Nov 2011, 16:00
por Gisele
Olá, Boa tarde!

Deixa eu explicar o que quero fazer. Vou dar um exemplo: Eu quero criar umas 5 bases do biblivre, o que será correspondente as franquias, só que isso no mesmo servidor e cada franquia irá acessar este servidor e sua base correspondente. Quero criar assim, biblivre1, biblivre2 e assim por diante até 5. Copiei o original e criei um .war chamado biblivre1, ele criou tudo que deveria criar. Pensei que fosse só trocar a base no arquivo biblivre1.xml no diretório C:\Arquivos de programas\Apache Software Foundation\Tomcat 6.0\conf\Catalina\localhost, colocando a base a que ele deve acessar, porém isso não adiantou. Teria algum outro arquivo a ser alterado, porque já olhei vários e não vi nada que tivesse essa necessidade além do biblivre1.xml.

Att,
Gisele

Re: Criar bases no mesmo servidor

Enviado: 25 Nov 2011, 11:10
por wlucas
Boa tarde Gisele.

Da forma que vc esta fazendo, vc até que consegue criar 5 aplicações no Tomcat, no entanto todas elas irão acessar o mesma banco de dados ( biblivre3 ), pois no código de conexão (jdbc) esta apontado para esse banco, portanto se vc mudar o nome do banco, para outro qualquer, o Biblivre 3 , não funcionará.

No momento o único jeito de vc ter 5 aplicações ( Biblivre 3 ) acessando cada uma seu próprio banco de dados, seria por virtualização, ou seja, 5 máquinas virtuais. Vc pode fazer isso pelo vmware ou virtual box.

Existe uma proposta dessa idéia em andamento, no entanto isso será para o futuro.

Atenciosamente. :ugeek:

Re: Criar bases no mesmo servidor

Enviado: 26 Nov 2011, 20:37
por Gisele
Ok, WLucas!! Obrigada pela atenção.

Re: Criar bases no mesmo servidor

Enviado: 28 Nov 2011, 19:12
por Victor
Boa Noite,

Acredito que a Equipe Biblivre deveria criar uma versão especifica para atender está situação.

Uma versão que atenda uma estrutura de rede de bibliotecas de uma determinada instituição. Por exemplo: bibliotecas das escolas de uma rede estadual ou municipal.

Victor

Re: Criar bases no mesmo servidor

Enviado: 29 Nov 2011, 10:05
por wlucas
wlucas escreveu:Boa tarde Gisele.

Existe uma proposta dessa idéia em andamento, no entanto isso será para o futuro.

Atenciosamente. :ugeek:
Não sou eu que estou tratando dessa parte, mas obtive informações recentes, que já existe um módulo de teste, atendendo essa necessidade, e deverá ser parte da próxima versão do Biblivre.

Obrigado pelas considerações. :mrgreen:

Re: Criar bases no mesmo servidor

Enviado: 16 Dez 2011, 14:50
por Victor
wlucas escreveu:
wlucas escreveu:Boa tarde Gisele.

Existe uma proposta dessa idéia em andamento, no entanto isso será para o futuro.

Atenciosamente. :ugeek:
Não sou eu que estou tratando dessa parte, mas obtive informações recentes, que já existe um módulo de teste, atendendo essa necessidade, e deverá ser parte da próxima versão do Biblivre.

Obrigado pelas considerações. :mrgreen:
Estamos precisando com urgência desta solução. A demora pode inviabilizar a continuidade e ampliação para as demais escolas de nossa rede.

Re: Criar bases no mesmo servidor

Enviado: 16 Dez 2011, 16:45
por wlucas
Boa tarde Victor.

Infelizmente essa solicitação não poderá ser atendida, visto que ainda esta em fase de desevolvimento.

Atenciosamente. :ugeek:

Re: Criar bases no mesmo servidor

Enviado: 30 Out 2012, 15:44
por vanderlei
Gisele,

Não sei se vc já resolveu a questão, mas, vamos lá.

Eu tb abri um post com o mesmo assunto e ainda não foi publicado, não tinha visto o seu, no meu caso eu consequi fazer funcionar, porém, perguntei se o procedimento estava correto e era só aquilo que deveria ser feito.

De qualquer forma vai ai o que eu fiz:

Uso servidor linux e usei o manual para instalação, para criar o banco uso o arquivo creaddatabase.sql do biblivre.
Vou usar o nomes biblivre3 e bib3gua nos meus bancos.

Segundo banco.

1 – copiei e alterei o creadedatabae.sql para creaddatabase2.sql, tirando o role para o usuário biblivre, pois o mesmo já existia e alterei o nome do banco, ficando assim:

CREATE DATABASE bib3gua

WITH OWNER = biblivre
ENCODING = 'UTF8';

SET client_encoding = 'UTF8';
SET standard_conforming_strings = off;
SET check_function_bodies = false;
SET client_min_messages = warning;
SET escape_string_warning = off;

2 - rodei a opção de criar o banco com o novo creaddatabase.sql
# psql -U postgres template1 < /root/createdatabase2.sql

3 – rodei a opção de criar as tabelas no novo banco.
psql -U postgres bib3gua < /root/biblivre3.sql

4 - Copiei arquivo biblivre3.war para bib3gua.war e coloquei na pasta webapps do Tomcat6 e reinicei o tomcat6.

5 – alterei o arquivo /var/lib/tomcat6/weapps/bib3gua/META-INF/context.xml
url="jdbc:postgresql://127.0.0.1:5432/bib3gua"

6 - alterei o arquivo /var/lib/tomcat6/conf/Catalina/localhost/bib3gua.xml
<Resource auth="Container" driverClassName="org.postgresql.Driver" logAbandoned="false" maxActive="20" maxIdle="10" maxWait="-1" name="jdbc/biblivre3" password="abracadabra" removeAbandoned="true" removeAbandonedTimeout="60" type="javax.sql.DataSource" url="jdbc:postgresql://127.0.0.1:5432/bib3gua" username="biblivre"/>

7 - Este eu alterei tb, porém, fiz o teste sem alterar e funcionou (via das dúvidas alterei), arquivo /var/lib/tomcat6/webapps/bib3gua/WEB-INF/classes/config.bib
DATABASE_NAME=bib3gua
RECORDS_PER_PAGE=10
HEADER_COLOR=3deb1a
BORDER_COLOR=08325e
MONEY_LOCALE=R$
ASSET_PREFIX=Bib
LIBRARY_NAME=Biblioteca CEDTEC - Guarapari
BACKGROUND_COLOR=daf5c4
BACKGROUND_LIGHT_COLOR=f5faff
FINE_AMOUNT=1,00
DIGITAL_MEDIA=
LIBRARY_SUBNAME=v. 3.0.22

8 - Postgressql - alterei o Pg_hba.conf, seguindo esta observação no manaul do postgres
Alerta: este arquivo é examinado sequencialmente para cada tentativa de conexão.
A ordem dos registros é significativa.
Caso um registro que venha primeiro entre em conflito com outro que vem em seguida, o primeiro será executado e o segundo, não.

ficou assim: (padrão dhcP da Minha rede = 192.168.1.0)

# Database administrative login by UNIX sockets
local all postgres md5

# TYPE DATABASE USER CIDR-ADDRESS METHOD

# "local" is for Unix domain socket connections only
local all all md5

# IPv4 local connections:
host biblivre3 biblivre 192.168.1.0/24 md5
host bib3gua biblivre 192.168.1.0/24 md5
host all all 127.0.0.1/32 md5

# IPv6 local connections:
host all all ::1/128 md5

apesar de tarde, espero ter ajudado.

sds

Re: Criar bases no mesmo servidor

Enviado: 03 Nov 2012, 11:28
por Alberto Wagner
Olá Vanderlei,

O modo descrito por você é a forma "não oficial" de rodar mais de uma base no mesmo computador.

Quando digo não oficial é por estarmos desenvolvendo uma maneira própria, que seja bem mais fácil para o usuário, e será lançada no Biblivre versão 4.

Entretanto, o que você fez funciona corretamente, mas somente após a versão 3.0.18, que é quando criamos a configuração "DATABASE_NAME" no arquivo config.bib. Esta configuração indicará ao Biblivre qual contexto usar (que está no arquivo context.xml, alterado corretamente por você). Se esta configuração não for alterada, todas as versões do Biblivre instaladas na mesma máquina apontarão para o mesmo database.

A alteração no arquivo pg_hba.conf só é necessária se o Biblivre estiver rodando em um computador diferente do postgresql, caso contrário, a configuração padrão deve resolver (exceto no caso da instalação manual do linux).

Apesar de tudo parecer funcionar corretamente, não lançamos um tutorial como este antes por existirem alguns pequenos problemas, principalmente na parte de Backup e Restore da base de dados. Você terá que fazer backups do PostgreSQL manualmente.

No Biblivre 4, a solução para várias bibliotecas em um mesmo computador será de fácil acesso, com todas as tarefas, inclusive backup, restore e migração de bibliotecas entre servidores, funcionando como especificado.

De qualquer forma, agradecemos o tutorial enviado e pensaremos sobre replicá-lo para ambientes Windows, com a ressalva de que o Backup e Restore não funcionará por completo.

Atenciosamente,

Re: Criar bases no mesmo servidor

Enviado: 03 Nov 2012, 11:31
por Alberto Wagner
Outro detalhe que passará a não funcionar bem é a atualização da versão do Biblivre, através do Atualizador.

Ele atualizará somente a versão principal.