免费注册 查看新帖 |

Chinaunix

广告
  平台 论坛 博客 文库
12下一页
最近访问板块 发新帖
查看: 10363 | 回复: 15
打印 上一主题 下一主题

如何在MS上创建postgres数据库? [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2006-11-09 22:05 |只看该作者 |倒序浏览

我现在用的是MS XP sp2,已经安装了postgresql for windows的版本。但在创建我想建立的数据库时,却提示如下错误:

  1. createdb:could not connect to database postgres: FATAL:  password authentication failed for user "cswzz"
复制代码

我这里用的是postgresql安装时创建的管理员口令,但还是不行。换成随机口令也不行。有哪位帮我看一下,好吗?

论坛徽章:
0
2 [报告]
发表于 2006-11-10 08:47 |只看该作者
从出错信息来看,是password验证的问题。

Windows平台下,PostgreSQL安装、运行需要一个Windows系统下的用户帐号。这个用户不是你连接PostgreSQL时用的username。你应该用PostgreSQL数据库管理的账号。缺省的用户名是,postgres。

如果你不清楚postgres的password,可以先修改data\pg_hba.conf中的验证设置,绕开验证。待重新设置密码或建立新的pgsql用户之后,再打开密码验证。

论坛徽章:
0
3 [报告]
发表于 2006-11-10 10:35 |只看该作者
原帖由 OneZ 于 2006-11-10 08:47 发表
从出错信息来看,是password验证的问题。

Windows平台下,PostgreSQL安装、运行需要一个Windows系统下的用户帐号。这个用户不是你连接PostgreSQL时用的username。你应该用PostgreSQL数据库管理的账号。缺省的用 ...


我看过我的postgresql安装目录data中的pg_hba.conf,最后一段是验证部分,具体为:

  1. # IPv4 local connections:
  2. host    all         all         127.0.0.1/32          md5
  3. # IPv6 local connections:
  4. #host    all         all         ::1/128               md5
复制代码

是不是host的问题呀?如何修改才能绕开postgres认证呢?

论坛徽章:
0
4 [报告]
发表于 2006-11-10 14:55 |只看该作者
md5 改成trust,然后修改密码后再改回来,要重新启动系统

论坛徽章:
0
5 [报告]
发表于 2006-11-10 20:30 |只看该作者
原帖由 OneZ 于 2006-11-10 08:47 发表
从出错信息来看,是password验证的问题。

Windows平台下,PostgreSQL安装、运行需要一个Windows系统下的用户帐号。这个用户不是你连接PostgreSQL时用的username。你应该用PostgreSQL数据库管理的账号。缺省的用 ...

我的C:\program files\postgresql\8.1
没有DATA 的folder
现在如何?
谢谢。

论坛徽章:
0
6 [报告]
发表于 2006-11-10 21:27 |只看该作者
原帖由 joint 于 2006-11-10 14:55 发表
md5 改成trust,然后修改密码后再改回来,要重新启动系统


你所指的修改密码是哪一个密码,postgresql的初始密码还是管理员的密码?现在我已经安装好了postgresql,从哪里开始修改呢?

论坛徽章:
0
7 [报告]
发表于 2006-11-11 10:02 |只看该作者
数据库管理员和能访问数据库的用户的密码,postgres和其他用户,不是windows里头的用户

首先登录到数据库,
psql template1 -u postgres

update user postgres set password=password('xxxx');
然后关闭数据库,修改pg_hba.conf, trust->md5
重启再登录

论坛徽章:
0
8 [报告]
发表于 2006-11-12 11:18 |只看该作者
原帖由 joint 于 2006-11-11 10:02 发表
数据库管理员和能访问数据库的用户的密码,postgres和其他用户,不是windows里头的用户

首先登录到数据库,
psql template1 -u postgres

update user postgres set password=password('xxxx');
然后关闭数 ...


我按照你给的方法试了一下,可以进去了。但在输入update命令后却给出这个提示:

  1. ERROR:  syntax error at or near "user" at charater 8
  2. LINE1:   update user postgres set password=password('xxxx');
复制代码

这是什么原因造成的呢?命令输对了。怎么会变成这个结果了呢?请帮我看一下,好吗?

论坛徽章:
0
9 [报告]
发表于 2006-11-13 00:17 |只看该作者
alter user postgres set password=password('xxxx');

论坛徽章:
0
10 [报告]
发表于 2006-11-13 00:18 |只看该作者
看一下postgresql的手册,上面有sql语句的说明
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP