在centos安装postgresql数据库并创建rdkit和btree_gist等插件

centos安装带有rdkit的postgresql数据库

如果你要用到分子结构查询,那么rdkit可以帮你实现这个功能
我们的流程是:
安装anaconda
利用anaconda安装postgresql
安装postgresql
最终完成

安装anaconda

wget https://mirrors.tuna.tsinghua.edu.cn/anaconda/archive/Anaconda3-2019.03-Linux-x86_64.sh
bash Anaconda3-2019.03-Linux-x86_64.sh

中间遇到的该输入yes就输入yes,该回车就回车

利用anaconda安装postgresql

由于rdkit并不是postgresql自带的插件,所以我们如果直接下载posgresql数据库是找不到的,
官方给了一种方案,利用anaconda来安装

conda install -c rdkit rdkit-postgresql

指定数据库目录

[conda folder]/envs/my-rdkit-env/bin/initdb -D /folder/where/data/should/be/stored

开启服务

[conda folder]/envs/my-rdkit-env/bin/postgres -D /folder/where/data/should/be/stored

上面的[conda folder]代表你的conda目录,然后my-rdkit-env代表创建的虚拟环境

创建数据库表

createdb my_rdkit_db
psql my_rdkit_db

配置postgresql.conf

synchronous_commit = off      # immediate fsync at commit
full_page_writes = off            # recover from partial page writes
shared_buffers = 2048MB           # min 128kB                   # (change requires restart)
work_mem = 128MB              # min 64kB

进入数据库,来到想要开启插件的库,开启rdkit插件

create extension if not exists rdkit; 

创建分子子结构查询的索引

chembl_25=# select * into rdk.mols from (select molregno,mol_from_ctab(molfile::cstring) m  from compound_structures) tmp where m is not null;
SELECT 1870451
chembl_25=# create index molidx on rdk.mols using gist(m);
CREATE INDEX
chembl_25=# alter table rdk.mols add primary key (molregno);
ALTER TABLE

第一条语句是新建一个rdk下的mols表,然后把compound_structures表中的molfile从smiles数据变成mol类型数据。
其中mol_from_smiles(molfile::cstring)是rdkit函数,能够将molfile列作为字符串读取并转换为mol对象
第二条语句是对新创建的表创建一个能够进行子结构查询的索引
这里就用到了gist

再次下载postgresql

上面我们看到在创建分子子结构的索引时用到了gist
它是依赖于btree_gist插件的一个函数
但是我们通过conda下载的postgresql带的插件很少,所以我们没有这个插件
这里我们可以再次下载一个postgresql数据库,使用正常方式。
通过wget下载压缩包
解压压缩包
进入解压文件
执行./configure
make
sudo make install

然后可以直接进入到你想要安装的插件目录里面(contrib下)
然后进行make && sudo make install
然后你就可以把对应的sql文件和so文件一股脑的cp到之前用conda下载的数据库对应位置
然后就可以启用插件了

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值