psycopg2.OperationalError: FATAL: role "root" does not exist

7,056 views
Skip to first unread message

Zico

unread,
Sep 7, 2009, 5:04:05 PM9/7/09
to Django users
Hi, i have been trying to put the command: python manage.py syncdb in
my fixmystreet directory. But, these error shows: do you have any
idea.. how to solve this??

[root@fedora fixmystreet]# python manage.py syncdb
local_settings.py not set; using default settings
local_settings.py not set; using default settings
Traceback (most recent call last):
File "manage.py", line 11, in <module>
execute_manager(settings)
File "/usr/lib/python2.6/site-packages/django/core/management/
__init__.py", line 362, in execute_manager
utility.execute()
File "/usr/lib/python2.6/site-packages/django/core/management/
__init__.py", line 303, in execute
self.fetch_command(subcommand).run_from_argv(self.argv)
File "/usr/lib/python2.6/site-packages/django/core/management/
base.py", line 195, in run_from_argv
self.execute(*args, **options.__dict__)
File "/usr/lib/python2.6/site-packages/django/core/management/
base.py", line 221, in execute
self.validate()
File "/usr/lib/python2.6/site-packages/django/core/management/
base.py", line 249, in validate
num_errors = get_validation_errors(s, app)
File "/usr/lib/python2.6/site-packages/django/core/management/
validation.py", line 28, in get_validation_errors
for (app_name, error) in get_app_errors().items():
File "/usr/lib/python2.6/site-packages/django/db/models/loading.py",
line 131, in get_app_errors
self._populate()
File "/usr/lib/python2.6/site-packages/django/db/models/loading.py",
line 58, in _populate
self.load_app(app_name, True)
File "/usr/lib/python2.6/site-packages/django/db/models/loading.py",
line 74, in load_app
models = import_module('.models', app_name)
File "/usr/lib/python2.6/site-packages/django/utils/importlib.py",
line 35, in import_module
__import__(name)
File "/opt/fixmystreet/mainapp/models.py", line 3, in <module>
from django.contrib.gis.db import models
File "/usr/lib/python2.6/site-packages/django/contrib/gis/db/models/
__init__.py", line 5, in <module>
from django.contrib.gis.db.models.aggregates import *
File "/usr/lib/python2.6/site-packages/django/contrib/gis/db/models/
aggregates.py", line 2, in <module>
from django.contrib.gis.db.backend import SpatialBackend
File "/usr/lib/python2.6/site-packages/django/contrib/gis/db/backend/
__init__.py", line 12, in <module>
from django.contrib.gis.db.backend.postgis import
create_test_spatial_db, get_geo_where_clause, SpatialBackend
File "/usr/lib/python2.6/site-packages/django/contrib/gis/db/backend/
postgis/__init__.py", line 4, in <module>
from django.contrib.gis.db.backend.postgis.adaptor import
PostGISAdaptor
File "/usr/lib/python2.6/site-packages/django/contrib/gis/db/backend/
postgis/adaptor.py", line 5, in <module>
from django.contrib.gis.db.backend.postgis.query import
GEOM_FROM_WKB
File "/usr/lib/python2.6/site-packages/django/contrib/gis/db/backend/
postgis/query.py", line 27, in <module>
version_tuple = postgis_version_tuple()
File "/usr/lib/python2.6/site-packages/django/contrib/gis/db/backend/
postgis/management.py", line 45, in postgis_version_tuple
version = postgis_lib_version()
File "/usr/lib/python2.6/site-packages/django/contrib/gis/db/backend/
postgis/management.py", line 25, in postgis_lib_version
return _get_postgis_func('postgis_lib_version')
File "/usr/lib/python2.6/site-packages/django/contrib/gis/db/backend/
postgis/management.py", line 12, in _get_postgis_func
cursor = connection.cursor()
File "/usr/lib/python2.6/site-packages/django/db/backends/
__init__.py", line 81, in cursor
cursor = self._cursor()
File "/usr/lib/python2.6/site-packages/django/db/backends/
postgresql_psycopg2/base.py", line 98, in _cursor
self.connection = Database.connect(**conn_params)
psycopg2.OperationalError: FATAL: role "root" does not exist

Angel Cruz

unread,
Sep 7, 2009, 5:06:43 PM9/7/09
to django...@googlegroups.com
You don't have a user account named 'root' in your database. You should
probably use another user besides root. Change your settings.py file to the
correct database user?

Zico

unread,
Sep 7, 2009, 5:15:16 PM9/7/09
to django...@googlegroups.com, mrang...@gmail.com
On Tue, Sep 8, 2009 at 3:06 AM, Angel Cruz <mrang...@gmail.com> wrote:

You don't have a user account named 'root' in your database.  You should
probably use another user besides root.  Change your settings.py file to the
correct database user?

Ok, if i put my database user "fixmystreet" .. which is the exact user.. then this error comes:

psycopg2.InternalError: current transaction is aborted, commands ignored until end of transaction block


--
Best,
Zico

Angel Cruz

unread,
Sep 7, 2009, 5:18:20 PM9/7/09
to Zico, django...@googlegroups.com

Restart postgres, python manage.py syncdb, restart apachectl

 

If you still get the message below, it looks like you have a malformed query (it this a raw sql query of via the django ORM?).

 


Jan Ostrochovsky

unread,
Sep 8, 2009, 3:03:08 AM9/8/09
to Django users
How exactly did you put your database user? What is content of your
pg_hba.conf?
Maybe some parts of this could be helpful:
http://sharpe-s-postgres.blogspot.com/2009/09/how-to-install-and-configure-postgresql.html/

On Sep 7, 11:15 pm, Zico <mailz...@gmail.com> wrote:
> On Tue, Sep 8, 2009 at 3:06 AM, Angel Cruz <mrangelc...@gmail.com> wrote:
>
> > You don't have a user account named 'root' in your database.  You should
> > probably use another user besides root.  Change your settings.py file to
> > the
> > correct database user?
>
> Ok, if i put my database user "fixmystreet" .. which is the exact user..
> then this error comes:
>
> *psycopg2.InternalError: current transaction is aborted, commands ignored
> until end of transaction block*
>
> --
> Best,
> Zico

Angel Cruz

unread,
Sep 8, 2009, 10:12:06 AM9/8/09
to django...@googlegroups.com
That is another forum and postgresql question, and they provide fantastic documentation:
http://www.postgresql.org/docs/8.1/static/sql-createrole.html
 
I use pd-Admin tool myself to totally control the database.
I would suggest think you make sure you are able to play around with the database first creating tables, assigning values, etc.  (via psql or pg-Admin) with the user you have created before dealing with django.
Reply all
Reply to author
Forward
0 new messages