![]() |
![]() |
![]() |
![]() |
![]() |
FTP | ![]() |
![]() |
CCD | ![]() |
![]() |
Buscar | ![]() |
![]() |
Trucos | ![]() |
![]() |
Trabajo | ![]() |
![]() |
Foros | ![]() |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
![]() |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
|||
|
|||
Como trabajar una DB en red?
Buenos Dias amigos.
Estoy intentando leer una base de datos que esta en otro equipo en mi red de trabajo. No me he podido conectar y no se porque. Supuestamente solamente es invocar el path de la base de datos y ya, pero no me funciona. Como debe ser la configuracion entonces? Debe ser local, remota, que es eso de la direccion isc4.gdb? Debo reintalar el servicio del firebird? Ayudenme por favor.... estoy en un apuro. Gracias! |
#2
|
||||
|
||||
Hola,
Me duele decirlo, pero, creo yo que no estaría demás que especificaras unas cuantas cosas, conviene a saber, la herramienta que estás usando (¿Delphi, C++ Builder, otra?), y su versión. Tampoco estará demás que expliques cuanto más detalladamente mejor cómo estás tratando de conectar: si puede ser incluye el código fuente que puedas considerar oportuno. En fin, que me parece a mí que si estás en un apuro bien podías molestarte (si es molestia) en describir cuanto más mejor tu problema, puesto que si no se perderá mucho tiempo solamente en averiguar todo el abanico de datos que podrías desde ya proporcionar. A continuación se verá qué puede hacerse por ti, que ya sabes de otras ocasiones que por intentarlo no quedará. |
#3
|
|||
|
|||
Hola Dec, mira la situacion es la siguiente:
Tengo una aplicacion que escribe en una base de datos local, hasta ahí no hay ningun problema. Pero al cambiarle el path de la base de datos me sale el error " EIBInterbase Error with message operating system directive Create file failed Acceso denegado". Estoy usando Builder. Mi pregunta es : cuando la base de datos es aqui en el mismo equipo funciona perfecto. Pero cuando la intento leer de otro equipo la misma base de datos, me sale ese error. Cual debe ser la configuracion del Firebird? Debo hacer desde el principio la DB para decirle que va a ser leida remotamente? ya esta corriendo el servicio pero ya no se que hacer.... Gracias por tu ayuda. |
#4
|
|||
|
|||
Se me escapaba un detalle importante...
En el equipo donde está la bese de datos me sale el siguiente error: Missing configuration file C:|Archivos de programa\firebird\firebird_1_5\aliases.conf Tal vez esa sea la clave, pero no la he podido descifrar... Gracias. |
#5
|
||||
|
||||
Hola,
Aquí estoy yo tratando de ayudarte con algo que no conozco ni medio mal siquiera... en fin. Se me ocurre que otros lo harían (o lo harán) me... aparte. Se me ocurre que refieras aquí mismo la ruta de la base de datos a que te estás tratando de conectar, más que nada por ver si esta sigue un "patrón" correcto, puesto que creo que has de incluir antes de la misma la dirección IP de la máquina en que esté la base de datos, y eso para empezar... ![]() |
#6
|
|||
|
|||
lo que estoy haciendo es compartir la carpeta de la base de datos en la red,
y asi ahorrarme la IP. Yo creo que la conexión está bien porque sino no sacaría el error en la otra máquina. Lo que falla creo que es la configuracion del servicio. Tambien he intentado abrir la DB desde el Firebird manager, y saca el mismo error. El codigo que utilizo es el siguiente: IBDatabase1->DatabaseName=OpenDialog1->FileName; IBDatabase1->Connected=true; IBTransaction1->DefaultDatabase= IBDatabase1; IBTransaction1->Active=true; IBTable1->Transaction=IBTransaction1; IBTable1->Database=IBDatabase1; IBTable1->TableName="PACIENTES"; IBTable1->Active=true; DataSource1->DataSet=IBTable1; DBGrid1->DataSource=DataSource1; Y funciona si la base de datos esta ubicada aquí en el mismo equipo. Gracias por tu buena disposición para ayudarme, soy un novato en este tema de las bases de datos. |
#7
|
||||
|
||||
En principio al ser remota:
- Tendrás que instalar Firebird SQL Server (como servicio o como aplicación, según quieras) yo tengo instalado este: Firebird-1.5.0.4288_RC9_Win32.exe creo que ya anda la 2.0 por ahí. - La carpeta donde resida la BBDD deberá estar compartida en el servidor, con acceso de escritura. - Cuidado con los Firewalls (cortafuegos) que corten el puerto usado por Firebird. - En tu programa, tendrás que dar doble clic sobre el IBdatabase, y ahí especificar que la conexión es "remote" indicando los parámetros. - Si estas usando Interbase que viene con delphi, ten en cuenta que solo tienes licencias para 3 usuarios concurrentes. Si van a ser más de 3 usuarios, te recomiendo, por ejemplo, los Mercury No sé si se me escapa algo. Saludos
__________________
Si usted entendió mi comentario, contácteme y gustosamente, se lo volveré a explicar hasta que no lo entienda, Gracias. |
#8
|
|||
|
|||
Sabes que puerto utiliza el FireBird?
y otra pregunta, es necesario bajar el Firebird SQL server? Como son los parámetros en la configuracion de la DB? En Server va la IP? Que es SQL rol? y como se indica el path? Muchas gracias por tu colaboración. |
#9
|
|||||
|
|||||
Cita:
Cita:
Cita:
Lamento no poder darte los datos correctos, no tengo delphi a mano. Cita:
![]() Cita:
![]() saludos
__________________
Si usted entendió mi comentario, contácteme y gustosamente, se lo volveré a explicar hasta que no lo entienda, Gracias. |
#10
|
|||
|
|||
Ya lo hice! Gracias a tu ayuda Lepe, sin embargo hay un problema.
Sale una excepción donde está la DB remota, diciendo que el archivo aliases no esta la base de datos... luego le doy aceptar, y si me carga la base de datos. Como configuro ese archivo aliases? Sabes como se configura ese archivo para que la lea? Gracias! |
#11
|
||||
|
||||
Unos detallitos:
Cita:
Cita:
Si necesitas más licencias de interbase puedes comprarlas o pasarte a firebird que es libre y no tiene limitación en ese aspecto. En cuanto a los componentes Mercury también son libres y sin limitaciones. Saluditos.
__________________
La otra guía de estilo | Búsquedas avanzadas | Etiquetas para código | Colabora mediante Paypal |
#12
|
|||
|
|||
Gracias a todos!
Su ayuda fue fundamental! |
#13
|
|||
|
|||
Pero una última cosa.... cuando sale el error de aliases.conf, que se debe hacer?
|
#14
|
||||
|
||||
probablemente hayas borrado el archivo. Simplemente crea un archivo en blanco con ese nombre en la carpeta donde está instalado firebird.
Hasta luego. ![]()
__________________
Juan Antonio Castillo Hernández (jachguate) Guía de Estilo | Etiqueta CODE | Búsca antes de preguntar | blog de jachguate |
#15
|
||||
|
||||
Otra posibilidad es que no estes enviando la ruta completa de la bd en la cadena de conexión, con lo que el motor trata de buscar un alias para dicha cadena (confieso que desconozco el comportamiento en ese caso).
He probado en local, renombrando mi aliases.conf, y he podido conectarme cuando envío la ruta completa. Si envio el un alias, digamos "repuesto", busca un archivo llamado "repuesto" en "c:\documents and settings\jachguate". uso firebird 1.5.3. Hasta luego. ![]()
__________________
Juan Antonio Castillo Hernández (jachguate) Guía de Estilo | Etiqueta CODE | Búsca antes de preguntar | blog de jachguate |
#16
|
|||
|
|||
Ahí esta el archivo pero ay que registrar el alias.... sabes como se registra el alias?
Gracias. |
#17
|
||||
|
||||
En el fichero aliases.conf escribe un alias para la ruta de la base de datos.
Ejemplo: Código:
MisDatos = 192.168.0.1:c:\datos\mibasedatos.fdb Si no tienes alias, seguramente el alias será el mismo nombre de la base de datos. Ejemplo: Código:
mibasedatos.fdb = 192.168.0.1:c:\datos\mibasedatos.fdb Creo recordar que es así.
__________________
La otra guía de estilo | Búsquedas avanzadas | Etiquetas para código | Colabora mediante Paypal Última edición por Casimiro Notevi fecha: 27-10-2005 a las 21:37:37. Razón: Puntualizar un dato |
#18
|
||||
|
||||
Cita:
Cita:
En todo caso, definir alias, aunque es recomendable, es optativo. Es decir, no necesitas un alias para conectarte a una base de datos desde la red. Podes seguirte conectando con la cadena de conexión incluyendo la ubicación completa del archivo de base de datos. Hasta luego. ![]()
__________________
Juan Antonio Castillo Hernández (jachguate) Guía de Estilo | Etiqueta CODE | Búsca antes de preguntar | blog de jachguate |
#19
|
||||
|
||||
Cita:
Cita:
__________________
Si usted entendió mi comentario, contácteme y gustosamente, se lo volveré a explicar hasta que no lo entienda, Gracias. |
#20
|
||||
|
||||
Cita:
Como ejemplo siempre pongo el caso del restaurante, nosotros como clientes hacemos peticiones al servidor (camarero) y es el camarero el que accede a la cocina (base de datos de alimentos), pero nosotros como clientes no tenemos acceso directo a la cocina (base de datos), muchas veces ni siquiera podemos verla. Así que el único que tiene acceso a la base de datos, en este caso, es firebird, nosotros, como cliente, únicamente podemos hacerle peticiones y él nos contesta (nos sirve) ![]() Por lo tanto, al servidor no debemos tener ningún tipo de acceso, más que nada por seguridad. Saludos.
__________________
La otra guía de estilo | Búsquedas avanzadas | Etiquetas para código | Colabora mediante Paypal |
![]() |
|
|
![]() |
|