转自:此处
关于postgresql用户登录的问题:安装完postgresql后,会自动生成一个数据库超级用户postgres,默认密码为空,所以不能用这个用户登录数据库。解决办法:在Terminal中执行su postgres,切换到postgres用户(我自己只能用sudo su postgres,输入密码后才能切换,至今不知道为什么),然后用psql命令连接数据库,连接上后执行:
SELECT * FROM pg_shadow; (这个表中记录了postgresql的所有用户和密码)
发现postgres这个用户根本没有存储密码,于是执行:
ALTER USER postgres PASSWORD '要设置的密码';
然后退出,重启服务,就可以用postgres用户登录数据库了。
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.postgresql_psycopg2',
'NAME': 'testdb',
'USER': 'postgres',
'PASSWORD': 'postgres',
'HOST': '127.0.0.1',
'PORT': '5432'
}
}