请教高人指点postgresql

Web、Mail、Ftp、DNS、Proxy、VPN、Samba、LDAP 等基础网络服务
zyx5652558
帖子: 6
注册时间: 2009-08-08 22:44

请教高人指点postgresql

#1

帖子 zyx5652558 » 2009-08-08 22:50

在用postgresql是遇到以下问题,我所用的是一个生物信息学软件annot8r需要装postgresql ,之后遇到以下问题
DBI connect('dbname=a8r_gobase','',...) failed: could not connect to server: 没有该文件或目录
Is the server running locally and accepting
connections on Unix domain socket "/var/run/postgresql/.s.PGSQL.5432"? at /usr/local/bin/annot8r.pl line 2326
Can't call method "do" on an undefined value at /usr/local/bin/annot8r.pl line 2328, <> line 2.


上面提到的/var/run/postgresql/.s.PGSQL.5432我根本找不到那个文件
我用的是ubuntu8.04 64bit ,请高人指点下如何解决,全文如下
###########################################################
### ###
### annot8r.pl ###
### a tool for sequence annotation ###
### based on BLAST results Vs 1.1 ###
### ###
### BANG 2007 ###
### ###
### For news and upgrades and help: ###
### nematodes.bioinf@ed.ac.uk ###
### ###
###########################################################



Please select the option you want to run.

1. Download relevant files.
2. Extract data from files into databases.
3. Prepare your Blast searches.
4. Blast your sequences.
5. Annotate your sequences.
6. Quit.
2

##### DATABASE SETUP OPTIONS #####

This option reads the relevant data from the files downloaded
in the previous option into three postgresql databases:
a8r_go, a8r_ec, a8r_kegg

1. Create or update a8r_go database.
2. Create or update a8r_ec database.
3. Create or update a8r_kegg database.
4. Create or update all of them.
5. Back to main menu.
4


CHECK POSTGRESQL OK => Postmaster running

密码:

Looking up a8r_gobase database. Please wait ...

Couldn't connect to the database a8r_gobase, creating it now.
口令:
DBI connect('dbname=a8r_gobase','',...) failed: could not connect to server: 没有该文件或目录
Is the server running locally and accepting
connections on Unix domain socket "/var/run/postgresql/.s.PGSQL.5432"? at /usr/local/bin/annot8r.pl line 2326
Can't call method "do" on an undefined value at /usr/local/bin/annot8r.pl line 2328, <> line 2.
头像
O_O_BOT
帖子: 2461
注册时间: 2009-05-20 19:32

Re: 请教高人指点postgresql

#2

帖子 O_O_BOT » 2009-08-08 22:57

irc <iDracaena> say: sudo /etc/init.d/postgresql restart
irc 聊天室
ubuntu-cn 的irc 频道为
irc.ubuntu.com 8001 #ubuntu-cn
UTF8编码 可用 irssi xchat pidgin weechat 登录

http://webchat.freenode.net/?channels=ubuntu-cn
[url]irc://irc.freenode.net/ubuntu-cn[/url]
soiamso
帖子: 418
注册时间: 2008-09-06 2:00

Re: 请教高人指点postgresql

#3

帖子 soiamso » 2009-08-08 23:02

如果 socket 是 unix abstract 型的话应该不会在文件系统显示, 所以在GUI找不到,也应该找不到。

/usr/local/bin/annot8r.pl line 2326
需要研究一下那个/var/run/postgresql/.s.PGSQL.5432 的socket地址是如何获得的,
有可能annot8r.pl用错误的方法获得(组合)了这个socket的地址。可能这个 socket的地址在其他linux变种下是成立的
zyx5652558
帖子: 6
注册时间: 2009-08-08 22:44

Re: 请教高人指点postgresql

#4

帖子 zyx5652558 » 2009-08-09 9:42

soiamso 写了:如果 socket 是 unix abstract 型的话应该不会在文件系统显示, 所以在GUI找不到,也应该找不到。

/usr/local/bin/annot8r.pl line 2326
需要研究一下那个/var/run/postgresql/.s.PGSQL.5432 的socket地址是如何获得的,
有可能annot8r.pl用错误的方法获得(组合)了这个socket的地址。可能这个 socket的地址在其他linux变种下是成立的
以下是annot8r 2326行开始往下的几行
my $conn=DBI->connect("dbi:Pg:dbname=$database", "", "");
if($go_flag==1) {
my $result=$conn->do("create table go (db text null, dbo_id varchar(12) not null, dbo_sym varchar(12) not null, _not text null,
go_id varchar(12) not null, dbref text null, evid text null, w_f text null, asp text null, dbo_name text null,
dbo_syn text null, dbo_typ text null, taxon text null, date int null, as_by text null);");
}
zyx5652558
帖子: 6
注册时间: 2009-08-08 22:44

Re: 请教高人指点postgresql

#5

帖子 zyx5652558 » 2009-08-09 9:43

O_O_BOT 写了:irc <iDracaena> say: sudo /etc/init.d/postgresql restart
重启没作用的
头像
KongLingchun
帖子: 4
注册时间: 2009-03-22 14:28

Re: 请教高人指点postgresql

#6

帖子 KongLingchun » 2009-10-31 21:54

在“/var/run/postgresql/”里虽然没有.s.PGSQL.5432文件,但是有.s.PGSQL.5433这个文件(或者相似的),只要把这个名改了就行了,比如我的是将5433改成5432就好使了。
croon
帖子: 6
注册时间: 2012-12-24 22:27
系统: ubuntu

Re: 请教高人指点postgresql

#7

帖子 croon » 2012-12-24 22:33

我也遇到这个问题,哪位战友有好的解决办法。/var/run 下面根本没有postgresql文件夹。我用的是ubuntu 11.10
头像
hubert_star
论坛版主
帖子: 5373
注册时间: 2007-10-29 22:12
系统: OSX 10.9 + Ub 1304
来自: 江苏南京

Re: 请教高人指点postgresql

#8

帖子 hubert_star » 2012-12-24 23:58

不用localhost呢,修改主配置文件,监听127.0.0.1试试,用socket的话有时候不一定会跟客户端匹配得起来。
佛经说,人有八苦: 生、老、病、死、求不得、怨憎、爱别离、五阴盛 故我苦!
圣经说,人有七罪: 饕餮、贪婪、懒惰、淫欲、傲慢、嫉妒和暴怒  故我有罪!

我这篇帖子里面没有任何攻击我们伟大的中华人民共和国政府和任劳任怨的人民公仆(和本论坛高素质的版主)的文字和含义;

特此声明!

有些事,我们明知道是错的,也要去坚持,因为不甘心;有些人,我们明知道是爱的,也要去放弃,因为没结局;有时候,我们明知道没路了,却还在前行,因为习惯了。

欢迎来我的新浪微博@me
croon
帖子: 6
注册时间: 2012-12-24 22:27
系统: ubuntu

Re: 请教高人指点postgresql

#9

帖子 croon » 2012-12-25 14:34

hubert_star 写了:不用localhost呢,修改主配置文件,监听127.0.0.1试试,用socket的话有时候不一定会跟客户端匹配得起来。
小弟是新手,操作起来可能不对。
我把postgresql.conf 中的#listen_addresses = ‘localhost’ 改为#listen_addresses = ‘*’或#listen_addresses = ‘127.0.0.1’结果都一样,运行annot8r.pl还是出现和没改之前一样的报错。
运行netstat -tuln
结果如下:
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address Foreign Address State
tcp 0 0 127.0.0.1:631 0.0.0.0:* LISTEN
tcp 0 0 127.0.0.1:5432 0.0.0.0:* LISTEN
tcp6 0 0 :::80 :::* LISTEN
tcp6 0 0 ::1:631 :::* LISTEN
tcp6 0 0 ::1:5432 :::* LISTEN
udp 0 0 0.0.0.0:43061 0.0.0.0:*
udp 0 0 0.0.0.0:68 0.0.0.0:*
udp 0 0 0.0.0.0:5353 0.0.0.0:*
udp6 0 0 :::5353 :::*
udp6 0 0 :::41770 :::*
说明监听该是没问题的 :em20 。我还需要修改什么内容么? :em06
头像
nkadun
帖子: 444
注册时间: 2008-06-10 12:40

Re: 请教高人指点postgresql

#10

帖子 nkadun » 2012-12-25 14:40

唉,这种配置都写死的软件,我肯定不会用的 :em41 :em41
Macbook Pro 15 with Debian
又剁了一只手
croon
帖子: 6
注册时间: 2012-12-24 22:27
系统: ubuntu

Re: 请教高人指点postgresql

#11

帖子 croon » 2012-12-25 14:46

nkadun 写了:唉,这种配置都写死的软件,我肯定不会用的 :em41 :em41
小弟看到别人的文章里用的这个做的图还比较漂亮,所以才想用。折腾整整三天了还没运行起来==难道要换个软件么 :em20
头像
hubert_star
论坛版主
帖子: 5373
注册时间: 2007-10-29 22:12
系统: OSX 10.9 + Ub 1304
来自: 江苏南京

Re: 请教高人指点postgresql

#12

帖子 hubert_star » 2012-12-25 15:01

croon 写了:
hubert_star 写了:不用localhost呢,修改主配置文件,监听127.0.0.1试试,用socket的话有时候不一定会跟客户端匹配得起来。
小弟是新手,操作起来可能不对。
我把postgresql.conf 中的#listen_addresses = ‘localhost’ 改为#listen_addresses = ‘*’或#listen_addresses = ‘127.0.0.1’结果都一样,运行annot8r.pl还是出现和没改之前一样的报错。
运行netstat -tuln
结果如下:
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address Foreign Address State
tcp 0 0 127.0.0.1:631 0.0.0.0:* LISTEN
tcp 0 0 127.0.0.1:5432 0.0.0.0:* LISTEN
tcp6 0 0 :::80 :::* LISTEN
tcp6 0 0 ::1:631 :::* LISTEN
tcp6 0 0 ::1:5432 :::* LISTEN
udp 0 0 0.0.0.0:43061 0.0.0.0:*
udp 0 0 0.0.0.0:68 0.0.0.0:*
udp 0 0 0.0.0.0:5353 0.0.0.0:*
udp6 0 0 :::5353 :::*
udp6 0 0 :::41770 :::*
说明监听该是没问题的 :em20 。我还需要修改什么内容么? :em06
1 listen_addresses前面的#要去掉,然后重启pgsql
2 修改hba文件,确保127.0.0.1后面的方式是md5
3 在你的软件里面,找到链接部分,指定ip地址和用户信息
佛经说,人有八苦: 生、老、病、死、求不得、怨憎、爱别离、五阴盛 故我苦!
圣经说,人有七罪: 饕餮、贪婪、懒惰、淫欲、傲慢、嫉妒和暴怒  故我有罪!

我这篇帖子里面没有任何攻击我们伟大的中华人民共和国政府和任劳任怨的人民公仆(和本论坛高素质的版主)的文字和含义;

特此声明!

有些事,我们明知道是错的,也要去坚持,因为不甘心;有些人,我们明知道是爱的,也要去放弃,因为没结局;有时候,我们明知道没路了,却还在前行,因为习惯了。

欢迎来我的新浪微博@me
croon
帖子: 6
注册时间: 2012-12-24 22:27
系统: ubuntu

Re: 请教高人指点postgresql

#13

帖子 croon » 2012-12-25 16:09

1.我把listen_addresses 前面的#去掉了。
2.我把hba里的方式全改成了MD5.

又出现一个问题,创建postgreSQL数据库的时候,我是创建了一个postgres操作系统用户和一个annnot8r数据用户。现在我用数据用户连接数据库。但是annot8r.pl使用时用的是postgres操作系统用户,MD5验证时说我没有创建postgres用户(createuser)(数据用户)。大家帮忙到底,我该怎么做? :em06
onlylove
论坛版主
帖子: 5230
注册时间: 2007-01-14 16:23

Re: 请教高人指点postgresql

#14

帖子 onlylove » 2012-12-25 16:37

如果时间来得及,你看下postgres带的手册,如果来不及……说说你想做什么,或者把你的参考文献的地址弄来看看(内网就算了,把文档传上来,只收PDF,其他什么超星一概不认)
#include <stdio.h>
void main()
{
double world;
unsigned letter;
short stay;
long memories;
printf("I miss you.\n");
}
croon
帖子: 6
注册时间: 2012-12-24 22:27
系统: ubuntu

Re: 请教高人指点postgresql

#15

帖子 croon » 2012-12-25 17:29

hubert_star, 按照hubert_star战友的指导,我已经可以使用该软件了,尽管运行过程中还有些小问题(吐槽下),不过这个帖子里的问题已经解决.谢谢hubert_star,谢谢各位战友! :em11
回复