在进行序列比对时总是报错
BLAST Database error: No alias or index file found for nucleotide database [/home/blast/nuclblastdb/GRCh38_latest_genomic.fna] in search path [/home/blast:/home/blast/protblastdb:]
找不到索引文件啥的,查了很久也没解决,最后的方法是通过写数据库别名解决的.
你可以按照下面的方法尝试
1. 先看查询参数对不对,如下表,Blastn就是用于核酸,Blastp用于蛋白质等等,如果命令不对也会出现错误
2. 查看比对文件,库文件的各种路径对不对
3. 重点
在建库的时候有没有给上-out参数?
-out是用来给数据库起别名的,可以把之前的库删掉,重新执行命令建库,如下命令
makeblastdb -in 数据库文件 -dbtype 序列类型 -parse_seqids -out 库别名
注意序列类型也要选择正确,nucl为核苷酸,prot为蛋白
然后再进行比对时把之前的xxx.fasta换成这个别名,如下
以前的: blastn -query /home/blast/query/query.fasta -db /home/blast/blastdb/SRR7.fasta -out /home/blast/result/result.txt
替换后: blastn -query /home/blast/query/query.fasta -db /home/blast/blastdb/数据库别名 -out /home/blast/result/result.txt