Perl en Español

  1. Home
  2. Tutoriales
  3. Foro
  4. Artículos
  5. Donativos
  6. Publicidad
 

Huawei
Ir a página 1, 2  Siguiente
 
Publicar nuevo tema   Responder al tema    Foros de discusión -> Bases de Datos
Mensaje Vie Jul 27, 2007 4:27 pm
Kiloko
Perlero Adicto
Perlero Adicto
Registrado: 10 Jul 2007
Mensajes: 234
Ubicación: MOnterrey NL
Huawei Responder citando

Los chinitos de Huawei, están entrando en el mercado cada vez más fuerte... tanto es así que aquí ya tengo uno de sus equipos. Cuestan 4 veces menos que los Cisco y jalan igual o hasta mejor... en fin... el problema es que el manejador de bases de datos que tienen es muy cerrado y necesito extraer información, directamente de la base, pero, no sé dónde esta la cosa, (por ejemplo el encabezado, o un nombre, o algún dato) Ah, por cierto, todo esto bajo Sybase... es todo un show.

¿Alguien que me recomiende un programa para ver la base de datos y saber qué corresponde a cada cosa, para después sacar la información y poderla armar conforme a mis necesidades? De preferencia que jale bajo Linux y que sea gráfica... Very Happy

Saludos...
Mensaje Vie Jul 27, 2007 4:35 pm
Kiloko
Perlero Adicto
Perlero Adicto
Registrado: 10 Jul 2007
Mensajes: 234
Ubicación: MOnterrey NL
Responder citando

Ah, por cierto, el SO es SUN 5.8.
Mensaje Vie Jul 27, 2007 5:07 pm
Kiloko
Perlero Adicto
Perlero Adicto
Registrado: 10 Jul 2007
Mensajes: 234
Ubicación: MOnterrey NL
Responder citando

Y si también pueden mandar respuestas psíquicas, después de las 8:00...
Smile
Mensaje Vie Jul 27, 2007 5:51 pm
creating021
Vive para Perl en Español
Vive para Perl en Español
Registrado: 23 Feb 2006
Mensajes: 467
Ubicación: Frente al monitor
Responder citando

http://freshmeat.net/search/?q=sybase&section=projects&Go.x=0&Go.y=0
Wink
Mensaje Lun Jul 30, 2007 11:41 am
Kiloko
Perlero Adicto
Perlero Adicto
Registrado: 10 Jul 2007
Mensajes: 234
Ubicación: MOnterrey NL
Responder citando

Excelente, ya tengo el programa, ahora solo que al parecer no está configurado el puerto. ¿De casualidad no sabrás cómo configurar el puerto o dónde se encontrará el archivo, sybase.config?
Mensaje Mar Jul 31, 2007 3:58 pm
Kiloko
Perlero Adicto
Perlero Adicto
Registrado: 10 Jul 2007
Mensajes: 234
Ubicación: MOnterrey NL
Responder citando

Ya bajé un programa pero no se a qué puerto lo conecto, ¿no conocerán el comando para saber qué puerto se conecta a la base de datos?
Mensaje Mar Jul 31, 2007 5:31 pm
creating021
Vive para Perl en Español
Vive para Perl en Español
Registrado: 23 Feb 2006
Mensajes: 467
Ubicación: Frente al monitor
Responder citando

Kiloko escribió:
Ya bajé un programa pero no se a qué puerto lo conecto, ¿no conocerán el comando para saber qué puerto se conecta a la base de datos?

nmap 127.0.0.1

PD: espero que no estés en Alemania o la máquina que vas a escanear.
Mensaje Mie Ago 01, 2007 10:34 am
Kiloko
Perlero Adicto
Perlero Adicto
Registrado: 10 Jul 2007
Mensajes: 234
Ubicación: MOnterrey NL
Responder citando

Me leíste la mente, ese mismo instalé, pero no sabia que tenía versión gráfica, bueno el caso es que me despliega esto:

Código:
PORT      STATE SERVICE
7/tcp     open  echo
9/tcp     open  discard
13/tcp    open  daytime
19/tcp    open  chargen
21/tcp    open  ftp
22/tcp    open  ssh
23/tcp    open  telnet
25/tcp    open  smtp
37/tcp    open  time
79/tcp    open  finger
111/tcp   open  rpcbind
512/tcp   open  exec
513/tcp   open  login
514/tcp   open  shell
515/tcp   open  printer
540/tcp   open  uucp
587/tcp   open  submission
665/tcp   open  unknown
898/tcp   open  sun-manageconsole
4045/tcp  open  lockd
5801/tcp  open  vnc-http-1
5802/tcp  open  vnc-http-2
5803/tcp  open  vnc-http-3
5901/tcp  open  vnc-1
5902/tcp  open  vnc-2
5903/tcp  open  vnc-3
6000/tcp  open  X11
6001/tcp  open  X11:1
6002/tcp  open  X11:2
6003/tcp  open  X11:3
6112/tcp  open  dtspc
7100/tcp  open  font-service
32771/tcp open  sometimes-rpc5
32772/tcp open  sometimes-rpc7
32773/tcp open  sometimes-rpc9
32774/tcp open  sometimes-rpc11
32775/tcp open  sometimes-rpc13
32779/tcp open  sometimes-rpc21
32780/tcp open  sometimes-rpc23
Device type: general purpose
Running: Sun Solaris 8
OS details: Sun Solaris 8 (SPARC)
Uptime: 364.678 days (since Tue Aug  1 19:13:59 2006)
Network Distance: 3 hops


Y probé con todos, pero con ninguno se conecta, le pongo el puerto y se queda pensando y no se conecta, estoy tratando con el programa (solo).

¿Qué crees que esté pasando?

SAludos
Mensaje Mie Ago 01, 2007 11:24 am
explorer
Moderador
Moderador
Registrado: 24 Jul 2005
Mensajes: 3915
Ubicación: Valladolid, España
Responder citando

Os estáis complicando un poco, me parece...

Código:
explorer@portatil:~> fgrep -i sybase /etc/services
sybase-sqlany   1498/tcp    # Sybase SQL Any
sybase-sqlany   1498/udp    # Sybase SQL Any
sybasedbsynch   2439/tcp   # SybaseDBSynch
sybasedbsynch   2439/udp   # SybaseDBSynch
sybaseanywhere  2638/tcp   # Sybase Anywhere
sybaseanywhere  2638/udp   # Sybase Anywhere
y si no aparecen esos puertos escuchando, (cosa que se puede saber con el comando netstat sin tener que instalar nmap), es que no se han activado. Muchas bases de datos no activan sus puertos tcp salvo por indicación expresa, para evitar problemas de seguridad.
Mensaje Mie Ago 01, 2007 11:56 am
Kiloko
Perlero Adicto
Perlero Adicto
Registrado: 10 Jul 2007
Mensajes: 234
Ubicación: MOnterrey NL
Responder citando

Vale, tío. Me conecto a la máquina con Sybase y ejecuto el comando pero nada, y dentro de ese archivo no aparece.

Por lo visto no están activados... y la pregunta de los 64mill, ¿cómo los activo?

Según yo veo es modificando el archivo sybase.cfg pero el jodido archivo no está por ningún lado, (cabe la posibilidad de que no lo pueda ver por que mi usuario está algo restringido).

Y ya aprovechando también estoy trantando de conectarme por Perl pero me sale el siguiente error:

Perl:
#!/usr/bin/perl -w
package conectarsb;

use strict;
use DBI;
use DBD::Sybase;

# variables a editar
my $db_user = "X";
my $db_pass = "X";
my $host_name = "172.21.50.55";
my $db_name = "iMapAlarmDB";
my $q_string = "dbi:Sybase=$host_name;database=$db_name";
sub connect
{
return (DBI->connect($q_string, $db_user, $db_pass,{PrintError => 0, RaiseError => 1}));
}
1;


Este lo ejecuta bien, pero al ejecutar
Perl:
use lib "conectarsb";
use conectarsb;
use DBI;
use DBD::Sybase;

my($dbh,$sth,@data);
$dbh =conectarsb->connect();
$sth = $dbh->prepare('SELECT * FROM tabla WHERE edad = ?') or die("Couldn't prepare statement: " . $dbh->errstr);
$sth->execute("19") or die("Couldn't execute statement: " . $sth->errstr);
while(@data = $sth->fetchrow_array()){
print "Si se pudo"
}
$sth->finish;
print "$sth/n";
$dbh->disconnect;
aparece el error:
Código:
Can't connect to data source 'dbi:Sybase=172.21.50.50;database=iMapAlarmDB' because I can't work out what driver to use (it doesn't seem to contain a 'dbi:driver:' prefix and the DBI_DRIVER env var is not set) at /root/workspace/Servidor/conectarsb.pm line 16
Mensaje Mie Ago 01, 2007 12:16 pm
explorer
Moderador
Moderador
Registrado: 24 Jul 2005
Mensajes: 3915
Ubicación: Valladolid, España
Responder citando

La línea de la conexión está mal escrita. Según el manual del DBD::Sybase debe ser así:

Perl:
my $q_string = "dbi:Sybase:host=$host_name;database=$db_name";
Mensaje Mie Ago 01, 2007 12:42 pm
Kiloko
Perlero Adicto
Perlero Adicto
Registrado: 10 Jul 2007
Mensajes: 234
Ubicación: MOnterrey NL
Responder citando

Efectivamente, pero ahora aparece.

Perl:
DBI connect('host=172.21.50.50;database=iMapTopoDB','X',...) failed: (no error string) at /root/workspace/Servidor/conectarsb.pm line


que sería esta línea:
Perl:
DBI->connect($q_string, $db_user, $db_pass,{PrintError => 0, RaiseError => 1}));
Mensaje Mie Ago 01, 2007 12:46 pm
Kiloko
Perlero Adicto
Perlero Adicto
Registrado: 10 Jul 2007
Mensajes: 234
Ubicación: MOnterrey NL
Responder citando

Creo yo que la solución por el puerto está descartada completamente, no hay forma de alterarlo con los permisos de usuario que poseo. El dichoso archivo no aparece y todo indica que el puerto está cerrado...
Mensaje Mie Ago 01, 2007 1:07 pm
explorer
Moderador
Moderador
Registrado: 24 Jul 2005
Mensajes: 3915
Ubicación: Valladolid, España
Responder citando

Yo veo al menos tres dificultades a resolver. En el lado del cliente (el tuyo), debes tener instalada la librería Open Client Library, definir la variable SYBASE dentro del programa cliente y que en el servidor esté funcionando Sybase con los puertos tcp.

De los dos primeros, te los comentan en el manual de DBD::Sybase. Del tercero, hay algunas referencias en Internet. Yo creo que buscando un poco más aparecerá el manual de instalación de Sybase y dirá cómo activarlo. Pero si no tienes permiso para editar el fichero de configuración en el servidor, no puedes hacer nada. Nada al menos desde fuera. Si al menos puedes entrar por consola en el servidor... podrías hacer el programa cliente en la propia máquina, por lo que entonces no necesitas conectarte a ningún puerto tcp y sólo necesitarías definir la variable de entorno DSQUERY.
Mensaje Mie Ago 01, 2007 2:14 pm
Kiloko
Perlero Adicto
Perlero Adicto
Registrado: 10 Jul 2007
Mensajes: 234
Ubicación: MOnterrey NL
Responder citando

¿Programa Cliente y eso cómo se come? ¿te refieres a que desde esa máquina me conecte a mi máquina externa?
Publicar nuevo tema   Responder al tema    Foros de discusión -> Bases de Datos Todas las horas son GMT - 6 Horas
Ir a página 1, 2  Siguiente
Página 1 de 2



Powered by phpBB © 2001, 2005 phpBB Group