blast2go本地化-2017教程

Blast2go本地化教程网上也有不少,但是都是13年之前的,由于最近有这个需求,我也重新收集了下资料,然后整理了下:

主要参考:

http://blog.shenwei.me/local-blast2go-installation/ 
http://www.blast2go.com/b2glaunch/resources/35-localb2gdb 
各种baidu+google

通常我们上游分析得到的蛋白序列需要和主流的数据库进行比对,完成功能注释。常用数据库一共有以几种:

    Nr:NCBI官方非冗余蛋白数据库,包括PDB, Swiss-Prot, PIR, PRF; 如果要用DNA序列,就是nt库
    Pfam: 蛋白结构域注释的分类系统
    Swiss-Prot: 高质量的蛋白数据库,蛋白序列得到实验的验证
    KEGG: 代谢通路注释数据库.
    GO: 基因本体论注释数据库

这里我们就讲解如何本地化Blast2go完成蛋白序列到GO数据库的注释。

前期准备

  1. Mysql,这个肯定不用说了,必须的要的,我的是ubuntu 14.04,用apt默认安装的,然后将默认数据库目录改到自己的空间大的目录下,我是改到home目录下了,可参考修改mysql默认数据库目录

  2. Java,这个教程里面说是1.6 or 1.7,但我试了下1.8也是可以用的,那肯定就是用1.8咯,教程点明必须要Oracle JDK版,我也没试过open版到底行不行,所以还是听教程的,安装步骤很简单,使用add-apt进行安装

    sudo add-apt-repository ppa:webupd8team/java
    sudo apt-get update
    sudo apt-get install oracle-java8-installer

  3. 数据的下载,其实就是一个需要导入mysql库的数据,主要用于比对后的id mapping

    这些直接用wget下载就行了

    • godatabase: http://archive.geneontology.org/latest-full/ 下载go_monthly-assocdb-data.gz即可

    • gene2accession.gz: ftp://ftp.ncbi.nlm.nih.gov/gene/DATA/gene2accession.gz

    • gene_info.gz: ftp://ftp.ncbi.nlm.nih.gov/gene/DATA/gene_info.gz

    • idmapping.tb.gz: ftp://ftp.pir.georgetown.edu/databases/idmapping/idmapping.tb.gz

  4. 下载安装文件: local_b2g_db.zip

文件整理

新建一个目录blast2go(名字随意),解压上述文件,并将所有文件都放到blast2go目录下,然后cd到blast2go目录下,进行后续操作,文件总共有这几个:

b2gdb.sql  
b2gdb.sql~  
gene2accession  
gene_info  
go_monthly-assocdb-data  
idmapping.tb
mysql-connector-java-5.0.8-bin.jar

导入数据库
  1. 将b2gdb.sql导入mysql数据库,并添加几个表格(前提你有root权限,没有权限的话,请参照上面的参考文章)

    mysql -u root -p password < b2gdb.sql

  2. 创建mysql数据库的一个用户blast2go,密码为blast4it(自己记住密码),方便后续调用这个数据库(我对数据库不熟悉,反正我照做了)

    mysql -u root -p password -e "GRANT ALL ON b2gdb.* TO 'blast2go'@'localhost' IDENTIFIED BY 'blast4it';"
    mysql -u root -p password -e "FLUSH PRIVILEGES;"

  3. 接下来就是导入各个数据了

    mysql -s -u root -p password b2gdb < go_monthly-assocdb-data  #这步耗时会很久
    mysql -u root -p password b2gdb -e "LOAD DATA LOCAL INFILE '/home/anlan/blast2go/gene2accession' INTO TABLE gene2accession FIELDS TERMINATED BY '\t' LINES TERMINATED BY '\n';"
    mysql -u root -p password b2gdb -e "LOAD DATA LOCAL INFILE '/home/anlan/blast2go/gene_info' INTO TABLE gene_info FIELDS TERMINATED BY '\t' LINES TERMINATED BY '\n';"

  4. 最后导入mapping数据(如果你b2gdb密码设置的不是blast4it,记得下面的命令也跟着改,后续的一些的配置文件中的b2gdb的密码也要跟着改)

    java -cp .:mysql-connector-java-5.0.8-bin.jar: ImportIdMapping /home/anlan/blast2go/idmapping.tb localhost b2gdb blast2go blast4it

测试

理论上,上述的步骤都没报错的话,下面的测试肯定没问题的

  1. 下载官网的测试例子https://blast2go.com/data/blast2go/b2g4pipe_v2.5.zip,其实也是之后正式使用的执行文件

  2. 修改配置文件b2gPipe.properties,如下:

    // GO and B2G Data Access Basic
    Dbacces.dbname=b2gdb
    Dbacces.dbhost=your_ip:3306
    Dbacces.dbuser=blast2go
    Dbacces.dbpasswd=blast4it

    your_ip即为你的ip地址,如果你有root权限的话,安装mysql时默认是3306端口的,不是的话,需要改为你设置的端口

  3. 运行自带的例子

    sh ./runPipeExample.sh

    结果会出现在当前目录下的result文件夹中,主要的也就是.dat和.annot两个文件了

注意:

  1. 如果是go_monthly-assocdb-data数据导入时卡了或者异常退出了,需要重新导入的话,只要重新执行下命令就行了

    mysql -s -u root -p password b2gdb < go_monthly-assocdb-data

  2. 如果是gene2accession和gene_info异常退出的话,需要先将mysql里面的对应的表格删除后,才能重新执行命令

    mysql> use b2gdb;
    mysql> truncate table gene2accession;
    mysql> truncate table gene_info;

  3. 如果是idmapping.tb异常退出的话,需要删除的表格是gi2uniprot,然后再重新执行命令

    mysql> use b2gdb;
    mysql> truncate table gi2uniprot;

后记

不知道有没有想过,做成一个R包呢?

(0)

相关推荐

  • Mysql数据库操作(命令行)

    Mysql数据库操作(命令行)

  • 1、数据库常用语句(启停、连接)

    #-u 用户 -p 密码 mysql -u root -p mysql -u root -p123123 #-D 数据库 mysql -u root -D test -p123123 #-S 指定哪个 ...

  • GO Level 到底是什么?

    最近忙着鼓捣硕士毕业论文...上周一重新确定了论文题目<XXX数据库的构建与应用>...于是用了大半周的时间搭了数据库和网站,然后开始整毕业论文.于是今天才上来看公众号,查看后台,连续看到 ...

  • 【商业教程】After Effects CC 2017更新教程

    --  微资讯 · 微课程  -- 利用零碎时间,走上超神之路! 课程介绍 课程专门针对CC2017软件更新制作的新功能讲解课程.这个课程主要是让快速学习CC2017的新功能,不需要去看冗长的更新文档 ...

  • 【商业教程】 maya 2017 材质贴图基础(新的节点流程)

    --  微资讯 · 微课程  -- 利用零碎时间,走上超神之路! 课程介绍 当你在maya中完成精致的建模之后,下一步就是创建材质和很有可能需要赋予贴图到模型上:在这个课程中,maya材质和贴图基础, ...

  • 【商业教程】Gnommon出品 maya 2017 入门教程

    --  微资讯 · 微课程  -- 利用零碎时间,走上超神之路! Gnomon 出品,必属精品!想当年小编学maya的时候基本上看Gnomon的都是大师级的教程,各种高级技术:不过很可惜,最近几年Gn ...

  • Photoshop cc 2017零基础入门教程

    本套课程适合完全零基础的同学,帮助你快速系统掌握Photoshop最实用的知识.区别于其他零基础入门教程,本课程中,老师还总结了初学设计时你会经常遇到的一些问题,直接带你解决最实际的设计需求,而不仅仅 ...

  • 新年快乐·2017年干货粘土教程打包送给你

    新年快乐! 时光如白驹过隙 转眼已是三年 这个叫粘土教程的公众号 虽步履蹒跚却前行坚定 感恩投稿人的信任 感恩关注者的厚爱 新年的伊始 该总结过去展望未来 给流逝的光阴以沉淀积累的价值 给未来将至的时 ...

  • 赵春秋冰雪画网络教程2017

    用雪地皴笔画雪障 浓墨找雪障的结构 用刷子雪地皴笔法淡墨刷出雪障的型 画雪障后面的树 用赭石 藤黄 少许淡墨调制画滩涂.并用淡墨拉底.*注意在笔中调色! 画小船.*注意衬托. 落款,盖章完成.

  • 生信技能树公众号2017年优秀教程

    一般不轻易发目录, 但是近半年招了一个实习生,并不是很愿意深入学习生物信息学,只好给她一个生信技能树公众号目录整理的工作,大材小用,我也很无奈.所以如果大家再应聘我的实习生,请务必三思而后行:实习职位 ...

  • Excel教程2017年4月李锐原创教程合集&资源放送

    Excel教程2017年4月李锐原创教程合集 一.李锐原创Excel应用教程 职场办公疑难问题解决方案大全 Excel里那些最常用最实用最简单最好学的函数公式,都在这里了!每个都带动态演示,进来看不? ...

  • Excel教程2017年3月合集&资源

    Excel教程2017年3月合集 一.原创Excel应用案例教程 学会这些Excel函数公式不仅能避免加班,还能涨工资,快收! 5个神技巧带你玩转Excel最强利器数据透视表 史上最牛查找函数组合In ...