How To Install and Use NCBI Blast on Windows
This page was prepared for the people who want to use NCBI Blast+ on local machines, because we found most of the NCBI Blast+ information available on the Internet is out-dated or inaccurate.
For example, we found the instruction in http://www.ncbi.nlm.nih.gov/staff/tao/URLAPI/pc_setup.html is inaccurate and the installer will not work as described.  If you are confused, please try ours.
 

Procedure below is confirmed to work fine on Windows 7 only.  This instruction does not cover all blast derivatives, such as blastx, mega blast or psiblast.  If you want to use these blast programs, please refer to http://www.ncbi.nlm.nih.gov/books/NBK1763/.  We hope information there is correct.

 If you want to try on different version of Windows, such as Windows XP or Windows Vista, some modifications may be needed.  

 
If you don't understand any part of the instruction below, we recommend you to try BlastStation-Local or BlastStation-Local64 to save time.  You can start Blast search in less than five minutes with the intuitive manner of operation, amazing easy-to-use interface, and useful extra functions including summary table exporting in CSV format and hit sequence exporting in FASTA format.

Up-to-date as of 4/2/2011

 
 
1. Installation
1.1. Click the link to download installer from ftp://ftp.ncbi.nlm.nih.gov/blast/executables/blast+/2.2.25/ncbi-blast-2.2.25+-win32.exe
2.2.24 is still available at ftp://ftp.ncbi.nlm.nih.gov/blast/executables/blast+/2.2.24/ncbi-blast-2.2.24+-win32.exe
2.2.23 is still available at ftp://ftp.ncbi.nlm.nih.gov/blast/executables/blast+/2.2.23/ncbi-blast-2.2.23+-win32.exe
1.2. Double click ncbi-blast-2.2.25+-win32.exe to launch installer
1.3. Follow the instructions of installer
    All program will be installed under "C:Program Files\NCBI\blast-2.2.25+\bin"
    README.txt which contains the link to he BLAST Help web page will be installed in "C:Program Files\NCBI\blast-2.2.25+\doc". user_manual.pdf is not bundled with the installer anymore.
2. Setup environments
2.1. Make ncbi.ini text file in C:\Windows directory. One example is shown below.  Since \ should be escaped with \ in this file, there are two \s instead of one.
; Start the section for BLAST configuration
[BLAST]
; Specifies the path where BLAST databases are installed
BLASTDB=C:\\blast\\db
; Specifies the data sources to use for automatic resolution
; for sequence identifiers
DATA_LOADERS=none
; Specifies the BLAST database to use resolve protein sequences
;BLASTDB_PROT_DATA_LOADER=nr
; Specifies the BLAST database to use resolve protein sequences
;BLASTDB_NUCL_DATA_LOADER=nt
; Windowmasker settings (experimental)
[WINDOW_MASKER]
WINDOW_MASKER_PATH=C:\\blast\\db\\windowmasker
; end of file
2.2. Create BLAST database directory.
2.2.1. Open command prompt. If you don't know how to do this, visit http://www.sevenforums.com/tutorials/947-command-prompt.html for example.
2.2.2. Type "cd C:\"
2.2.3. Type "mkdir blast\db" and type return.
3. Download database
3.1. Click the link to visit NCBI ftp server. ftp://ftp.ncbi.nih.gov/blast/db/
3.2. Double click the database file you want to download, such as nt.00.tar.gz.
3.3. Save the file in C:\blast\db.
3.4. Extract downloaded tar.gz file.  If you don't have such a software, visit   http://www.ofzenandcomputing.com/zanswers/2558 for example.
4. Create database
4.1. Download or create FASTA file.  File name is assumed to be testdb.fasta.
4.2. Copy testdb.fasta to C:\blast\db directory using Windows Explorer.
4.3. Open command prompt. If you don't know how to do this, visit http://www.sevenforums.com/tutorials/947-command-prompt.html for example.
4.4. Type "cd C:\blast\db" and type return.
4.5. Type "makeblastdb -in testdb.fasta -out testdb -dbtype nucl" for DNA or "makeblastdb -in testdb.fasta -out testdb -dbtype prot" for Protein and type return to get the database named testdb.
4.6. Type "makeblastdb -help" for advanced options.  Sample output is shown below. 
>makeblastdb -help
USAGE
makeblastdb [-h] [-help] [-in input_file] [-dbtype molecule_type]
[-title database_title] [-parse_seqids] [-input_type type] [-hash_index]
[-mask_data mask_data_files] [-gi_mask]
[-gi_mask_name gi_based_mask_names] [-out database_name]
[-max_file_sz number_of_bytes] [-taxid TaxID] [-taxid_map TaxIDMapFile]
[-logfile File_Name] [-version]

DESCRIPTION
Application to create BLAST databases, version 2.2.25+

OPTIONAL ARGUMENTS
-h
Print USAGE and DESCRIPTION; ignore other arguments
-help
Print USAGE, DESCRIPTION and ARGUMENTS description; ignore other arguments
-version
Print version number; ignore other arguments

*** Input options
-in <File_In>
Input file/database name; the data type is automatically detected, it may
be any of the following:
FASTA file(s) and/or
BLAST database(s)
Default = `-'
-dbtype <String, `nucl', `prot'>
Molecule type of input
Default = `prot'

*** Configuration options
-title <String>
Title for BLAST database
Default = input file name provided to -in argument
-parse_seqids
Parse Seq-ids in FASTA input
-input_type <String, `asn1_bin', `asn1_txt', `blastdb', `fasta', `xml'>
Type of the data specified in input_file (if not specified it will be
guessed)
-hash_index
Create index of sequence hash values.

*** Sequence masking options
-mask_data <String>
Comma-separated list of input files containing masking data as produced by
NCBI masking applications (e.g. dustmasker, segmasker, windowmasker)
-gi_mask
Create GI indexed masking data.
* Requires: parse_seqids
-gi_mask_name <String>
Comma-separated list of masking data output files.
* Requires: mask_data, gi_mask

*** Output options
-out <String>
Name of BLAST database to be created
Default = input file name provided to -in argumentRequired if multiple
file(s)/database(s) are provided as input
-max_file_sz <String>
Maximum file size for BLAST database files
Default = `1GB'

*** Taxonomy options
-taxid <Integer, >=0>
Taxonomy ID to assign to all sequences
* Incompatible with: taxid_map
-taxid_map <File_In>
Text file mapping sequence IDs to taxonomy IDs.
Format:<SequenceId> <TaxonomyId><newline>
* Incompatible with: taxid
-logfile <File_Out>
File to which the program log should be redirected
4.7. makeblastdb 2.2.24 never finishes with -parse-seqids option.  This bug is fixed in makeblastdb 2.2.25.  However, when we tried to format ftp://ftp.ncbi.nih.gov/blast/db/FASTA/nr on Windows 7 with 1GB memory with -parse_seqids option,  makeblastdb failed with "BLAST ran out of memory" error message.  This error did not happen with smaller FASTA file such as sts or Windows 7 with 2GB memory.  We recommend to use PC with at least 2GB memory when trying to format large FASTA file with -parse_seqids option or use formatdb in NCBI  Blast package.
5. Launch NCBI-Blast+ commands.
5.0. Create dna or protein query FASTA file.  It can contain multi FASTA data.  File name is assumed to be test_dna.fasta and test_protein.fasta here.  nt.00 is a dna database file and nr.00 is a protein database file available at ftp://ftp.ncbi.nih.gov/blast/db/.  These database files are assumed to be downloaded already.
5.1. blastn
5.1.1. Open command prompt.
5.1.2. Type "blastn -query test_dna.fasta -db nt.00 -out test.html -html" and type return.
5.1.3. Type "blastn -help" for advanced options. 
5.2. blastp
5.2.1. Open command prompt.
5.2.2. Type "blastp -query test_protein.fasta -db nr.00 -out test.html -html" and type return.
5.2.3. Type "blastp -help" for advanced options. 
 
 
 

  Copyright © 2005 - 2012 TM Software, Inc. All rights reserved.