======Using MS-SQL as collection database====== Tested Environment: Windows XP and Windows 2003 Server Tested MS-SQL installation: Microsoft SQL server 2005 Express Tested C++ Compiler: Microsoft Visual C++ 2008 Express Edition ====Build time setup==== * Modified files * perllib/dbutil.pm * Installation requirements * Microsoft SQL server 2005 * Microsoft SQL server 2005 Manager * Microsoft Visual C++ 2008 Express Edition * Active Perl * Perl Module required: DBD:ADO. To install DBD:ADO manually: * make sure ActivePerl is installed * Make sure Visual C++ is installed * Go to CPAN and download the source package * Untar it and run Makefile.PL * Run "nmake", "nmake test" and "nmake install" * Database creation: We need to create database manually, use the Manager and create a database. You can basically call it anything you like You will need to set this database name in the dbutil.pm * Configuration for the dbutil.pm: Open the dbutil.pm file and search for the following lines my $host = "localhost,1660"; # Need to look up your SQL server and see what port is it using. my $user = "sa"; my $pwd = "[When installing the MSSQL, you will be asked to input a password for the sa user, use that password]"; my $database = "[Create a database in MSSQL and use it here]"; * $host: Go to [Programs]=>[Microsoft SQL Server 2005]=>[Configuration Tools]=>[SQL Server Configuration Manager]. Under [SQL Server 2005 Network Configuration]=>[Protocols for SQLEXPRESS]. You need to make sure TCP/IP is enabled. Right click on the properties and find the "TCP Dynamic Ports" in the "IP Address" tab * $user and $pwd: When installing the "Microsoft SQL server 2005 Express". You should be asked to input a password for the "sa" user. * $database: Set it to whatever database you have created. Uncomment the following lines to enable DBD:ADO; use DBI; use DBD::ADO; Win32::OLE->Option(CP => Win32::OLE::CP_UTF8); * collect.cfg configuration: Open your collection's collect.cfg file and add (or set) "infodbtype mssql" * Additional information: Once the index is created, you will find the mssql connection information for the runtime code in index/text/[collection].mssdbinfo ====Runtime setup==== * Modified files * win32.mak * runtime-src/win32.mak * runtime-src/src/colservr/win32.mak * runtime-src/src/colservr/collectset.cpp * common-src/win32.mak * common-src/src/lib/win32.mak * common-src/src/lib/mssqldbclass.cpp * common-src/src/lib/mssqldbclass.h * msado: Make sure you have C:\Program Files\Common Files\System\ado\msado27.tlb If not, edit the mssqldbclass.h to use C:\Program Files\Common Files\System\ADO\msado15.dll instead * Build the system: In GSDLHOME, do nmake /f win32.mak USE_MSSQL=1