我是一个数据库小白,正在为我的django项目设置PostgreSQL。为此我也使用了psycopg2。但是数据库很复杂。个人而言,我希望能有一种方式在一个地方获取所有我的数据库和用户设置/信息。这样我就知道要连接到哪里以及如何连接(因为我仍在本地运行,所以没有安全问题吗?)。
然而,似乎我没有创建这个数据库的“权限”,即使我连接到标准的“管理员”用户“postgres”。使用我在安装时输入的密码(“pw123”)。
Django项目(settings.py):
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.postgresql_psycopg2',
'NAME': 'django',
'USER': 'postgres',
'PASSWORD': 'pw123',
'HOST': '127.0.0.1',
'PORT': '5432',
}
}
CMD -> python manage.py shell (在导入 django.db connection 后)
>>> cursor = connection.cursor()
Traceback (most recent call last):
File "<console>", line 1, in <module>
File "C:\Python27\lib\site-packages\django\db\backends\__init__.py", line 165, in cursor
cursor = self.make_debug_cursor(self._cursor())
File "C:\Python27\lib\site-packages\django\db\backends\__init__.py", line 138, in _cursor
self.ensure_connection()
File "C:\Python27\lib\site-packages\django\db\backends\__init__.py", line 133, in ensure_connection
self.connect()
File "C:\Python27\lib\site-packages\django\db\utils.py", line 94, in __exit__
six.reraise(dj_exc_type, dj_exc_value, traceback)
File "C:\Python27\lib\site-packages\django\db\backends\__init__.py", line 133, in ensure_connection
self.connect()
File "C:\Python27\lib\site-packages\django\db\backends\__init__.py", line 122, in connect
self.connection = self.get_new_connection(conn_params)
File "C:\Python27\lib\site-packages\django\db\backends\postgresql_psycopg2\base.py", line 134, in get_new_connection
return Database.connect(**conn_params)
File "C:\Python27\lib\site-packages\psycopg2-2.5.4-py2.7-win32.egg\psycopg2\__init__.py", line 164, in connect
conn = _connect(dsn, connection_factory=connection_factory, async=async)
OperationalError: FATAL: database "django" does not exist
我在安装过程中做错了什么吗?我能纠正吗?我应该考虑重新安装所有东西吗?那我该怎么做呢?数据库让我感到困惑:P