Guys I need to switch from FreeBSD to Windows for a while and thus I am trying to run MySQL with PHP on Windows IIS (Yes it is possible!).
Here are the steps:
1. Install MySQL from http://dev.mysql.com/get/Downloads/MySQL-5.0/mysql-essential-5.0.27-win32.msi/from/http://mirror.x10.com/mirror/mysql/ and put the mysql-install-dir/bin/ in the Windows PATH Variable. Instruction available at php site http://in.php.net/manual/en/faq.installation.php#faq.installation.addtopath .
To test installation open command-prompt and type “telnet localhost 3306″ [without quotes]. This should dump the following junk in the console:

7
 4.1.14-nt#UpU;dh[n,☻8i.CJ(&'1_m(

Press ENTER and get rid of it, your MYSQL is working!
If this fails, then you might need to start the service of mysql by tryping "net start mysql" [without quotes]. Then try telnet as earlier.

Remember the password you have set up for the root login of mysql, we will need it in step3.

2. Install PHP in C:/PHP folder by downloading MSI from  http://in.php.net/get/php-5.2.0-win32-installer.msi/from/www.php.net/mirror  and then download http://in.php.net/get/php-5.2.0-Win32.zip/from/www.php.net/mirror and extract into the C:/php folder as well (Yes it will overwrite many files, let it do, because we need the files in EXT folder). Download and extract the dlls from http://in.php.net/get/pecl-5.2.0-Win32.zip/from/www.php.net/mirror in c:/php/ext if you plan to use those extra PHP Dll’s (not needed for our job though).
Make sure that C:/PHP/ext directory has the php_mysql.dll otherwise download this specific dll from http://dev.mysql.com/downloads/connector/php/ (Direct link: http://dev.mysql.com/get/Downloads/Connector-PHP/php_5.2.0_mysql_5.0.27-win32.zip/from/pick ) and extract the dll into C:/PHP/ext .
Add PHP to PATH as explained in http://in.php.net/manual/en/faq.installation.php#faq.installation.addtopath .
Now to test PHP installation create a file phpinfo.php inside the C:/Inetpub/wwwroot and type just the following one line and save:

<?php phpinfo(); ?>

Now open the browser and type http://localhost/phpinfo.php and you should see the PHP Version and other details about your PHP Installation. Enjoy :)

3. Now to manage MySQL, there is a cool tool called phpMyAdmin which can be downloaded from http://prdownloads.sourceforge.net/phpmyadmin/phpMyAdmin-2.9.1.1-all-languages-utf-8-only.zip?download . You need to extract this in a folder. For me it is C:/phpMyAdmin.
Now you need to do certain tweaks to make it work.
Create a file config.inc.php inside the C:/phpMyAdmin and type the following:
<?php

$i=0;
$i++;
$cfg['Servers'][$i]['auth_type'] = ‘config’;
$cfg['Servers'][$i]['port'] = ‘3306′;
$cfg['Servers'][$i]['user'] = ‘root’;
$cfg['Servers'][$i]['password'] = ‘password-of-mysql-for-root’;

?>

Save the config.inc.php file.

Now open the C:/WINDOWS/php.ini file and search for “extension_dir “. Replace the line with:
extension_dir = “C:/PHP/ext/”

Also uncomment the line saying extension=php_mysql.dll in the C:/WINDOWS/php.ini .
Now save the C:/WINDOWS/php.ini file.

You need to give ‘web share’ access to  C:/phpMyAdmin directory by opening it in explorer and right-click  on the C:/phpMyAdmin directory and  go to ‘properties’  now in the pop-up window  go to ‘web-sharing’ tab and select the share-this-folder radio button and this will pop-up (I know it is windows and this sounds like pop-up-video of VH1). Write phpMyAdmin in the ALIAS Text Box of pop-up and select on WRITE and SCRIPT SOURCE ACCESS box. In APPLICATION PERMISSION choose SCRIPTS radio button.

To test phpMyAdmin open http://localhost/phpMyAdmin/index.php in browser and you should see “localhost phpMyAdmin – 2.9.1.1″. You are done with this now :)

4. For PERL. you need http://www.activestate.com/store/activeperl/download anyways, so click and download it first. Install this in C:/PERL directory then use the instruction at http://www.visualwin.com/Perl/ .

To test the PERL – CGI installation, create a file called test.pl inside the directory C:\Inetpub\wwwroot\cgi-bin and type:
#!/usr/bin/perl
$time=time;$len=80;
print “Content-type:text/html\n\n”;
@base=qw/A T G C/;
print “>Seq$time $len random bases<p>”;
while($c<$len){
    $c++;
    print “@base[int(rand(4))]“;
}

Now save the test.pl and test weather the link http://localhost/cgi-bin/test.pl generates a random DNA Fasta file of 80 bases.

In the next tutorial I will lead you into creating a bioinformatics database of sequences and then using it to align using muscle and store back in MySQL db… till then bye!

powered by performancing firefox

Leave a Reply