参考了众多文章并结合实际操作后的感想。

Orthomcl需要的linux详细配置,简单叙述。

系统:unix

BLAST

Database:oracle 或 mysql

内存4G,硬盘100G

perl: DBI module 和 DBD-mysql

MCL程序

详细操作过程及需要注意的点:

1.数据库安装和配置

我用的mysql,为避免mysql运行出问题,最好修改mysql配置文件:

1.设置myisam_sort_buffer_size为可用内存的一半

2.设置myisam_max_sort_file_size为orthomclBlastParser程序生成文件similarSequences.txt的5倍大小

3.设置read_buffer_size的值为???,或者尽量大

2.安装MCL

$ ./configure

$ make

$ make install

#注意出现make[] Nothing to be done for '***'

make[] leaving directory '/*/*/***'

不是make错误!make时最好用root权限

3.安装配置Orthomcl software

下载地址 http://orthomcl.org/common/downloads/software/v2.0/ 我下的是orthomclSoftware-v2.0.9.tar.gz

下载完成后解压文件 $ tar -xf orthomclSoftware-v2.0.9.tar.gz,解压完成后包括bin config doc lib 四个文件夹

把bin目录加到环境变量里,方便以后操作

$ vim .bashrc #在~目录下执行此操作

在最后一行加 export PATH=$PATH:/home/abc/.../orthomclSoftware/bin

$source .bashrc

在Orthomcl software主文件夹下创建文件夹my_orthomcl_dir作为工作目录,把/doc/OrthoMCLEngine/Main/orthomcl.config.template文件复制到my_orthomcl_dir下,命令如下:[当前路径在my_orthomcl_dir]

$ mkdir my_orthomcl_dir

$ cd my_orthomcl_dir

$ cp ../doc/OrthoMCLEngine/Main/orthomcl.config.template orthomcl.config #重命名为orthomcl.config

打开orthomcl.config:

##

dbVendor=mysql  #使用的数据库为mysql,若为oracle,则改成oracle

dbConnectString=dbi:mysql:orthomcl  #连接到mysql里的orthomcl数据库

dbLogin=test  #数据库的用户名

dbPassword=123  #与用户名相对应的密码

orthologTable=Ortholog

inParalogTable=InParalog

coOrthologTable=CoOrtholog

interTaxonMatchView=InterTaxonMatch

percentMatchCutoff=50

evalueExponentCutoff=-5

oracleIndexTblSpc=NONE

4.在mysql中创建数据库,并创建表

$ mysql -u root -p  #先用root登录创建名为orthomcl的数据库(如果test用户有权限创建数据库的话就用test用户登录创建)

mysql> create database orthomcl;

mysql> grant all on orthomcl.* to 'test'@'%';  #赋予test用户操作orthomcl数据库的所有权限,test处为用户名,%代表任何主机

$ orthomclInstallSchema orthomcl.config mysql.log species  #执行orthomclInstallSchema命令,按照orthomcl.config的配置,在数据库中创建表,mysql.log记录日志文件(选) species为每个表名后加物种名(选)

5.格式化orthomcl输入文件

orthomcl的输入文件要求为fasta格式,且需满足一定的要求,格式要求为如下:

>taxoncode|unique_protein_id  #taxoncode为物种代码一般为3-4个字母;unique_protein_id为蛋白id,taxoncode和蛋白id之间用|隔开

MFAXGETHFD..........

如:

>Dha|CAG25565

MKFGHA...........

使用orthomclAdjustFasta程序可以把从NCBI上下载下来的序列文件转换成orthomcl的标准格式,转换格式前先在my_orthomcl_dir目录下创建名为compliantFasta的文件夹,命令如下:[当前路径为my_orthomcl_dir]

$ mkdir compliantFasta

$ cd compliantFasta

$ orthomclAdjustFasta hsa ../Homo_sapiens.NCBI36.53.pep.all.fa 1  #hsa为物种代码;***.fa为序列文件,存放在my_orthomcl_dir目录下;1代表在id前加物种名和|

执行完上述命令后,产生的文件为hsa.fasta存放在compliantFasta目录下,格式如下:

>hsa|TIG25566

MHSJKXG..........

compliantFasta文件夹下存放各个物种的蛋白组,如Hsa.fasta Dha.fasta Ali.fasta Kla.fasta......

当然,,,自己编写的脚本也很容易完成格式转换,,,

6.过滤序列

使用orthomclFilterFasta命令对compliantFasta文件夹下的序列进行过滤,orthomcl的推荐规则是允许protein序列最短长度为10,stop coden占的最大比例为20%,命令会在my_orthomcl_dir目录下产生goodProteins.fasta和poorProteins.fasta,goodProteins.fasta文件中包含所有comliantFasta文件夹下经过筛选的物种蛋白组。[当前路径为my_orthomcl_dir]

$ orthomclFilterFasta compliantFasta/ 10 20

7.创建blast数据库,对goodProteins.fasta做blastp

下载最新版本blast+,安装成功根据需求下载蛋白数据库,以我自己为例,我只需要compliantFasta文件夹下的几个物种蛋白组,即只需要goodProteins.fasta作为数据库

把blast添加到环境变量后,执行如下命令:[当前路径为blast主目录]

$ mkdir db  #创建文件夹db,作为blast数据库文件夹

$ cd db

$ makeblastdb -in goodProteins.fasta -dbtype prot -title orthomcl -parse_seqids -out orthomcl -logfile orthomcl.log  #以goodProteins.fasta为序列文件,创建名为orthomcl的blast数据库[当前路径为db]

$ blastp -db orthomcl -query goodProteins.fasta -seg yes -out orthomcl.blastout -evalue 1e-5 -outfmt 7 -num_threads 24  #goodProteins.fasta对orthomcl库做blast,产生的结果文件为orthomcl.blastout(自身对自身做blast,找出目标物种间的同源基因)

8.处理blast产生的结果(参考)[当前路径为db]

$ grep -P "^[^#]" orthomcl.blastout > blastresult  #将orthomcl.blastout中的注释行去掉,产生新文件blastresult。

$ cp blastresult /home/abc/.../orthomclSoftware/my_orthomcl_dir  #把blastresult复制到orthomcl工作目录下

$ cd /home/abc/.../orthomclSoftware/my_orthomcl_dir  #转到orthomcl工作目录

$ sed -i s/"gnl|"/""/g blastresult

$ orthomclBlastParser blastresult compliantFasta > similarSequences.txt  #使用orthomclBlastParser命令引入compliantFasta文件夹下文件,生成similarSequences.txt文件,找出相似性序列,从第1列到第8列分别是:query_id, subject_id, query_taxon, subject_taxon, evalue_mant, evalue_exp, percent_ident, percent_match。

$ perl -p -i -e 's/\t(\w+)(\|.*)orthomcl/\t$1$2$1/' similarSequences.txt  #将subject_taxon修改为正确的分类名

$ perl -p -i -e 's/0\t0/1\t-181/' similarSequences.txt  #修改evalue_mant, evalue_exp,将evalue为0修改为1e-181,为在后续步骤寻找pairwise relationships

9.将similarSequences.txt文件中的相似性序列载入mysql数据库中[当前路径为my_orthomcl_dir]

$ orthomclLoadBlast orthomcl.config similarSequences.txt  #将数据导入数据库中

10.寻找成对蛋白质[当前路径为my_orthomcl_dir]

$ orthomclPairs orthomcl.config orthomcl_pairs.log cleanup=no  #此命令对数据库中的空表进行操作

11.将数据从mysql数据库中导出[当前路径为my_orthomcl_dir]

$ orthomclDumpPairsFiles orthomcl.config  #此命令会在my_orthomcl_dir下生成一个mclInput文件和一个pairs文件夹,pairs文件夹下包含coorthologs.txt和inparalogs.txt和orthologs.txt三个文件

12.使用mcl对pairs进行聚类[当前路径为my_orthomcl_dir]

$ mcl mclInput --abc -I 1.5 -o mclOutput

13.提取mcl的结果,生成group.txt文件[当前路径为my_orthomcl_dir]

$ orthomclMclToGroups Fungi 1 < mclOutput > groups.txt  #生成groups.txt文件,每个同源组的编号从Fungi1开始,依次递增

至此orthomcl程序运行完毕,产生的groups.txt即为最终结果文件,可对其进行各种数据操作

mysql和ORTHOMCL_Orthomcl的详细使用相关推荐

  1. mysql windows 管道连接,科技常识:Windows Server 2016 MySQL数据库安装配置详细安装教程...

    今天小编跟大家讲解下有关Windows Server 2016 MySQL数据库安装配置详细安装教程 ,相信小伙伴们对这个话题应该也很关注吧,小编也收集到了有关Windows Server 2016 ...

  2. Percona XtraBackup 关于 MySQL备份还原的详细测试

    Percona XtraBackup 关于 MySQL备份还原的详细测试 一. Percona XtraBackup 的优点. (1)无需停止数据库进行InnoDB热备: (2)增量备份MySQL: ...

  3. linux 安装mysql 8.0_Linux安装mysql 8.0的详细方法介绍(代码示例)

    本篇文章给大家带来的内容是关于Linux安装mysql 8.0的详细方法介绍(代码示例),有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助. 经过一番努力下载mysql文件,我们可以开始M ...

  4. MySQL 5.7.21详细下载安装配置教程

    MySQL 5.7.21详细下载安装配置教程 前言 在安装MySQL的时候会遇到很多问题,博客上有很多解决问题的办法,在这里我附上一些链接,遇到问题的朋友们可以阅读参考哈~本文主要针对于刚接触数据库的 ...

  5. mysql 5.5.29 winx64_【转载】MySQL 5.7.29详细下载安装配置教程winx64

    版权声明:本文为CSDN博主「liu_dong_mei_mei」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明. 原文链接:https://blog.csdn.n ...

  6. mysql中explain的详细解释

    mysql执行计划中的类型解释老是忘记,抄在这里帮助记忆吧: EXPLAIN为用于SELECT语句中的每个表返回一行信息.表以它们在处理查询过程中将被MySQL读入的顺序被列出.MySQL用一遍扫描多 ...

  7. python Django 连接mysql数据库创建表详细全过程

    python Django 连接mysql数据库创建表详细全过程 1,在数据库中新建一个要连接的数据库(在cmd命令行里登录数据库进行创建创建) mysql -u root -p**+密码** cre ...

  8. 仿网易考拉完整源码+答辩ppt(java+mysql+JavaScript)资源详细说明

    资源链接:https://download.csdn.net/download/qq_44009745/66153684 编写环境:Linux/windows64 编写的程序:Myeclipse 10 ...

  9. MySQL卸载教程(详细)

    系列文章 MySQL安装教程(详细) 本文链接:https://blog.csdn.net/youcheng_ge/article/details/126037520 文章目录 系列文章 前言 一.卸 ...

最新文章

  1. 搜索引擎的时效性需求满足
  2. 京东金融App收集用户敏感信息?致歉来了
  3. Altium Designer同一个工程里不同原理图导入到不同的PCB
  4. java map 迭代删除元素,java – 如何在迭代时删除和添加元素到TreeMap?
  5. 科普向,什么是 Lua 语言?
  6. Aroma's Search(暴力)
  7. 前端学习(2943):vue结合bs搭建首页
  8. [css] 如何使用CSS3的属性设置模拟边框跟border效果一样?
  9. 各种抠图动态图片_不用手。自动、智能抠图,图片去背景
  10. C++三大继承与多级派生
  11. windows c++ 服务 当前用户提权_windows xp 提权
  12. Fundamentals of Power Electronics 第1版第2版 pdf 资源
  13. selenium原理
  14. c++模板参数自动推导
  15. mac linux 引导分区,Paragon ExtFS For Mac v10.0.829 | Linux分区数据读写驱动 _ 黑苹果乐园...
  16. 快速制作机房3D效果图教程
  17. 程序员26条做网站的定律原理和效应
  18. W806芯片性能测试
  19. 一个口 光纤 两条线 交换机 上 光纤 两条线 双纤 单纤 尾纤 分光器 双纤 双纤转单纤 接 分光器
  20. 专门打游戏的手机精选:rog3散热好 续航好 玩游戏更好!

热门文章

  1. imx6 android快速启动,android启动不起来(已解决)
  2. snmp服务 2003 镜像_美国掌握全球70%根服务器,一旦对中国关闭,我们将无法上网?...
  3. mysql数据库的三级模式_2016年计算机三级MySQL数据库试题
  4. 钉钉调岗申请单怎么写 钉钉申请调岗的教程
  5. 世界之窗浏览器怎么隐藏收藏栏?
  6. 腾讯视频免费下载安装_怎样下载腾讯视频里的视频
  7. 电脑上我的文档图标不见了怎么办
  8. php如何将mysql数据库中的admin字段赋值给session_转php中使用session_set_save_handler()函数把session保存到MySQL数据库实例...
  9. JAVA对象集合转化为xml转换_xml转为Map集合以及对象转化为xml
  10. java调用c so动态库_jni 调用C动态库dll/so