[firebase-br] Ref. Colocar banco em rede
Carlos Magno P Souza
delphimagno em uol.com.br
Qui Dez 11 10:50:22 -03 2008
Omar
Alem das respostas que os colegas já deram, você tem que lembrar que a
configuração da canexão na sua aplicação precisa fornecer o NOME ou IP da
máquina servidora. Pela mensagem de erro que v. mensionou, a sua
configuração de conexão define o servidor como LOCALHOST e isso não vai
funcionar quando v. instalar o programa no cliente.
Eu costumo gravar estas informações em arquivo .INI e redefinir a conexão em
tempo de execução, no momento em que o formulário principal da aplicação é
instanciado. Veja o exemplo:
ARQUIVO .INI
[DATABASE]
Server=INDELSERVER
Database=E:\Sistemas\GestoR\Gestor_Indel\Dados\GESTORDB.FDB
---------
CONFIGURAÇÃO DINÂMICA DA CONEXÃO (Delphi com ADO)
procedure ConfigDatabase(ADOConnection:TADOConnection);
var ini: TIniFile;
ts: TStrings;
begin
ini := TIniFile.Create(Global_AppPath+'gestor.ini');
Global_DatabaseServer := ini.ReadString('DATABASE','Server','');
Global_Database := ini.ReadString('DATABASE','Database','GESTORDB.GDB');
ini.Free;
with ADOConnection do begin
// Connected := False;
ConnectionString :=
'Provider=IBOLE.Provider.v4;'+
'Password=121159;'+
'User ID=GESTOR;'+
'Data Source='+Global_DatabaseServer+':'+Global_Database +';'+
'Mode=Share Deny None;'+
'Extended Properties="";'+
'Isolation Level=4096;'+
'Lock Resolution=1;'+
'Logging Level=0;'+
'Role="";Silent Mode=False;SQL Dialect=3;'+
'Thread Model=1;Character Set=""';
try
KeepConnection := True;
Connected := True;
except
on e: Exception do begin
ts := TStringList.Create;
ts.Add(E.Message );
ts.Add('');
ts.Add(_dmPrincipal.ADOConnection1.ConnectionString);
ts.SaveToFile(Global_AppPath + 'erro_conexao.txt');
ts.Free;
ShowMessage('ERRO NA CONEXÃO COM O BANCO DE DADOS.'+#13+E.Message);
Application.Terminate;
end;
end;
end;
end;
----- Original Message -----
From: "Omar Haddad" <omarhaddadm em gmail.com>
To: "FireBase" <lista em firebase.com.br>
Sent: Thursday, December 11, 2008 8:02 AM
Subject: [firebase-br] Ref. Colocar banco em rede
Bom dia amigos,
Salve. Sei que já perguntei isto, mas ontem a tarde passei por uma
dificuldade em colocar uma
aplicação numa estação cliente conectando a um banco firebird em outra
máquina:
Ao tentar conectar exibiu uma mensagem com o seguinte texto:
"SQL Error: Unable to complete network request to host "localhost". Failed
to estalish a connection.
Nenhuma conexão pode ser feita porque a máquina de destino as recusou
ativamente.
Error code: -902"
[01]. Será que isto foi porque o meu componente ZConnection ficou setado
True como padrão ?
[02]. Qual instalação do firebird eu preciso fazer nas estações clientes ?
Tentei instalar o Firebird SS 1.5, mas com a instalação mínima não
funcionou.
[03].O que é necessário eu definir para colocar as estações enxergando o
banco em uma outra máquina?
Preciso compartilhar algo ? Alguma pasta ? Algo mais ?
Obrigado a todos.
Abraço
--
Att.
Omar Marques Haddad
Analista de Sistemas Sênior
______________________________________________
FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
Para saber como gerenciar/excluir seu cadastro na lista, use:
http://www.firebase.com.br/fb/artigo.php?id=1107
Para consultar mensagens antigas: http://firebase.com.br/pesquisa
Mais detalhes sobre a lista de discussão lista