日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > 数据库 >内容正文

数据库

mysql和ORTHOMCL_Orthomcl的详细使用

發布時間:2025/3/12 数据库 33 豆豆
生活随笔 收集整理的這篇文章主要介紹了 mysql和ORTHOMCL_Orthomcl的详细使用 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

參考了眾多文章并結合實際操作后的感想。

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的详细使用的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。