[firebase-br] Res: Base em Linux

Igor Aguiar igor_aguiar em yahoo.com.br
Ter Jun 26 00:09:48 -03 2007


Olá,
Retirado do "Firebird Quick Start Guide" sobre acesso a uma base de dados atravé da rede:
"Firebird server – and any databases you create or connect to – must reside on a hard drive that is phys-
ically connected to the host machine. You cannot locate components of the server, or any database, on
a mapped drive, a filesystem share or a network filesystem."

Até onde sei, a maneira recomendada de acessar a base de dados é através do servidor firebird.
Para isso existem várias bibliotecas clientes que permitem o acesso a servidor através da rede.

Para acessar a base de dados em outra máquina (tanto windows como linux), via TCP/IP,
as propriedades de conexão mais comuns que devem ser especificadas são:
    1) HOST: o endereço da máquina onde o servidor firebird está rodando (host/ip)
    2) PORT: a porta em que o servidor firebird está "escutando" (padrão: 3050)
    3) DATABASE: o caminho para o banco de dados (ou o alias).
        Por exemplo: Windows -> C:\firebird\base.fdb, Linux: /var/lib/firebird2/data/base.fdb
    4) USER
    5) PASSWORD

Um alias para a base de dados funciona como um atalho. Ele é configurado no arquivo aliases.conf.
Por exemplo, configurando o seguinde alias no arquivo aliases.conf "base=/var/lib/firebird2/data/base.fdb"
você poderá configurar a propriedade DATABASE da sua conexão apenas como "base", ao invés de
/var/lib/firebird2/data/base.fdb.

Um exemplo de acesso remoto a uma base de dados firebird:
   - Digamos que o servidor firebird (linux) na sua rede possua o ip 192.168.1.10 e base de dados está 
   localizada em /var/lib/firebird2/data/base.fdb
   - Você quer fazer o backup da base utilizando a ferramenta gbak.
   - O camando que você executaria na sua máquina (windows por exemplo) seria o seguinte:
         "gbak -b -v -user SYSDBA -password masterkey 192.168.1.10:/var/lib/firebird2/data/base.fdb c:\backup.fdk"
Isso fará que o aplicativo gbak se conecte ao servidor em 192.168.1.10 e execute o backup da base, gerando
o arquivo de backup na sua máquina (windows) em c:\backup.fdk;

Outro exemplo de conexão remota em java:
    Class.forName("org.firebirdsql.jdbc.FBDriver");
    //Utilizando alias para acesso à base.
    Connection connection = DriverManager.getConnection("jdbc:firebirdsql://192.168.1.10:3050/base", "SYSDBA", "masterkey");

Mais um exemplo usando a biblioteca IBPP (C++):
    Database db = DatabaseFactory("192.168.1.10", "/var/lib/firebird2/data/base.fdb", "SYSDBA", "masterkey");
    
A comunicação entre a biblioteca cliente e o servidor é feita de maneira transparente para o usuário,
tudo que precisa ser feito é configurar as propriedades de acesso (host, porta, database) e de autenticação(user, password).




       
____________________________________________________________________________________
Novo Yahoo! Cadê? - Experimente uma nova busca.
http://yahoo.com.br/oqueeuganhocomisso 


Mais detalhes sobre a lista de discussão lista