UCE SOCIEDAD ANONIMA (SAUCE)

Page 78

´ CAP´ITULO 5. IMPLEMENTACION



y todo tipo de estad´ısticas e ficheros de log sobre ellos. Entendiendo que, al fin y al cabo, no es m´as que un script de Perl, esta posibilidad es poco costosa y puede valer la pena en, sin duda, con una implementaci´on basada hilos ser´a menos complicada a la hora de modificar.

5.2.

Pruebas previas

Finalmente, como se ha dicho al principio del cap´ıtulo, conviene probar algunas librer´ıas b´asicas de Perl, para asegurar su funcionamiento y ganar confianza con ellas antes de utilizarlas de manera sistem´ atica. Anteriormente, se ha mostrado ejemplos de c´odigo formando parte de una discusi´ on entre varias dos posibilidades, ahora se har´a, aunque no haya m´as de una posibilidad, por lo decisivas que son estas librer´ıas y aprender a utilizarlas correctamente.

5.2.1.

Acceso a Bases de Datos con Perl

Perl tiene varias librer´ıas que se ocupan de esta cuesti´on. Lo interesante en este caso es resolver la comunicaci´on con MySQL. Para conectarse con exito a MySQL desde un script hay que tener un login y un password h´abiles en MySQL (esto es igual que si se accede por consola) y adem´as hay que conocer tres cosas, a saber: El nombre de la m´aquina donde est´a montada la base de datos de MySQL (puede ser la misma donde corra el script o no). El nombre de la base de datos al cual hay que acceder. Habitualmente MySQL cede una base de datos llamada test a todos los usuarios, as´ı que puede utilizarse esta (en principio). El socket de escucha de MySQL. Este es desconocido, no puede intentarse una conexi´on ((manual)) por ´el. Est´a guardado siempre en /var/lib/mysql/mysql.sock. Una secuencia de conexi´ on v´ alida para Perl ser´ıa: use DBI; my $driver="DBI:mysql:database=test"; my $host="host=$maquina"; my $socket="mysql_socket=/var/lib/mysql/mysql.sock"; my $dsn=join ’;’,($driver,$host,$socket); $dbh = DBI->connect($dsn,$login,$passwd) or $error="$DBI::errstr"; if ($dbh) { @dbs = $dbh->func(’_ListDBs’); }


Issuu converts static files into: digital portfolios, online yearbooks, online catalogs, digital photo albums and more. Sign up and create your flipbook.