psql在缺省情况下是用当前用户的用户名作登陆用户名和数据库名的
可以这样
su postgres
createdb root
exit
psql

解决方案 »

  1.   

    原因是root用户没有权限访问数据库su postgres
    psql [database]
    createuser root createdb createuser;   //新建名为root的数据库用户,使root有权限
                                           //登陆数据库,权限为可以新建数据库和数据库
                                           //用户。
    \q
    exitpsql [database]