I made a short how-to on how to get a unix machine connected to a SQL server using all 
free software, and it seems to be working great. This is a little more updated than 
the one in the FAQ, and describes better how to install the needed modules, as well as 
has a test script.. Thanks for a great product, guys!

#=================================
Here is a small overview of what we're going to set up:

Unix Client              | Network | NT Server (running MS SQL)
-------------------------------------------------------------------------------------------------
perl script | DBI::Proxy |---------| DBI::ProxyServer | DBD::ODBC | ODBC Connection | 
SQL Server


On your NT server running MSSql:

1) Install active perl from activestate.com
2) Open a command prompt, and start the perl package manager (ppm.exe)
3) "install Storable" to install Storable
4) "install DBI" to install DBI, DBI::ProxyServer, and DBD::Proxy
5) "install DBD::ODBC" to install DBD::ODBC
6) Download nmake at 
http://download.microsoft.com/download/vc15/Patch/1.52/W95/EN-US/Nmake15.exe
7) Extract nmake, and put the resulting files in your perl bin directory (probably 
c:\perl\bin)
8) Download Net-Daemon and PlRPC from ftp://ftp.cpan.org (they can't be installed with 
ppm)
9) For each of these, extract the archive with something like winzip, cd into the 
directory, run "perl Makefile.pl", "nmake", "nmake install". You can then delete the 
archive you downloaded, as well as the directorys.
10) Set up an ODBC connection, making sure to note what you put for the Name field. 
This will be what you refer to the connection by on the unix side. Make sure you're 
set to authenticate via a SQL password, and you also might want to set a default 
database.
11) Create a new shortcut to the dbiproxy.bat file in your perl bin directory (this 
was installed with DBI)
12) Edit the shortcut propertys, and add at least these two items to the command line: 
--pidfile=c:\temp\dbiproxy.pid and --localport=1334. You can make the pid go into 
whatever directory you want, and you can change the port number to whatever free port 
you want. You will need the port number on the unix side.
13) Fire up the shortcut. If all is well, you'll get just a plain black window.

On your unix-like machine:
1) Most modern distributions come with perl. If yours doesn't, install it.
2) run "perl -MCPAN -e shell" to start the CPAN module (Answer "no" if it wants to 
configure)
3) "install Storable" to install Storable
4) "install Net::Daemon" to install Net::Daemon
5) "install RPC" to install PlRPC
6) "install RPC::PlClient" to install RPC::Client
7) "install DBI" to install DBI and DBD::Proxy
8) "quit" to leave the CPAN module

9) Test the connection by making a new perl script similar to this:
#!/usr/bin/perl

require DBI;

$username = "platypusdb";
$password = "test";
$server = "database-server.company.com";
$port = "1334";
$ODBCConnectionName = "PLATYPUS";

$datasource = "dbi:Proxy:hostname=$server;port=$port;dsn=dbi:ODBC:$ODBCConnectionName";

$dbh = DBI->connect($datasource, $username, $password);

You should probably get an error logging in, unless you put in a valid name and 
password. Once you can get logged in, you should be able to set up a Radiatior AuthBy 
SQL, PLATYPUS, EMERALD, or any other database connection scheme, that has ODBC drivers 
as long as the right ODBC connection is available. Here is an example of an AuthBy SQL:

 DBSource       dbi:Proxy:hostname=database-server;port=1334;dsn=dbi:ODBC:PLATYPUS
 DBUsername     sa
 DBAuth         sa

If you have problems, make sure you have the same version modules for both the NT 
server and the Unix client. You may also want to put the DBIPROXY.BAT shortcut in the 
startup items on your NT server (just in case it needs to be rebooted. NT? rebooted? 
Nahhh...)

===
Archive at http://www.starport.net/~radiator/
Announcements on [EMAIL PROTECTED]
To unsubscribe, email '[EMAIL PROTECTED]' with
'unsubscribe radiator' in the body of the message.

Reply via email to