在Django settings.py中,我这样设置数据库选项

DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.mysql',
        'NAME': os.path.join(BASE_DIR, 'mysql'),
        'USER': 'root',
        'PASSWORD': 'sp153426',
        'HOST': '127.0.0.1',
        'PORT': '3306',
    }
}

我执行了这个命令

Python manage.py syncdb

但由于这个错误而失败了

  File "manage.py", line 10, in <module>
    execute_from_command_line(sys.argv)
  File "/Library/Python/2.7/site-packages/django/core/management/__init__.py", line 399, in execute_from_command_line
    utility.execute()
  File "/Library/Python/2.7/site-packages/django/core/management/__init__.py", line 392, in execute
    self.fetch_command(subcommand).run_from_argv(self.argv)
  File "/Library/Python/2.7/site-packages/django/core/management/base.py", line 242, in run_from_argv
    self.execute(*args, **options.__dict__)
  File "/Library/Python/2.7/site-packages/django/core/management/base.py", line 285, in execute
    output = self.handle(*args, **options)
  File "/Library/Python/2.7/site-packages/django/core/management/base.py", line 415, in handle
    return self.handle_noargs(**options)
  File "/Library/Python/2.7/site-packages/django/core/management/commands/syncdb.py", line 57, in handle_noargs
    cursor = connection.cursor()
  File "/Library/Python/2.7/site-packages/django/db/backends/__init__.py", line 160, in cursor
    cursor = self.make_debug_cursor(self._cursor())
  File "/Library/Python/2.7/site-packages/django/db/backends/__init__.py", line 132, in _cursor
    self.ensure_connection()
  File "/Library/Python/2.7/site-packages/django/db/backends/__init__.py", line 127, in ensure_connection
    self.connect()
  File "/Library/Python/2.7/site-packages/django/db/utils.py", line 99, in __exit__
    six.reraise(dj_exc_type, dj_exc_value, traceback)
  File "/Library/Python/2.7/site-packages/django/db/backends/__init__.py", line 127, in ensure_connection
    self.connect()
  File "/Library/Python/2.7/site-packages/django/db/backends/__init__.py", line 115, in connect
    self.connection = self.get_new_connection(conn_params)
  File "/Library/Python/2.7/site-packages/django/db/backends/mysql/base.py", line 435, in get_new_connection
    conn = Database.connect(**conn_params)
  File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/MySQL_python-1.2.4b4-py2.7-macosx-10.6-intel.egg/MySQLdb/__init__.py", line 81, in Connect
    return Connection(*args, **kwargs)
  File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/MySQL_python-1.2.4b4-py2.7-macosx-10.6-intel.egg/MySQLdb/connections.py", line 187, in __init__
    super(Connection, self).__init__(*args, **kwargs2)
django.db.utils.OperationalError: (1049, "Unknown database '/users/ohyunjun/work/astral/mysql'")

推荐答案

'NAME'是您的数据库的名称.使用MySQL,您还需要手动创建数据库.比方说,如果你运行:

$ mysql -u root -p

mysql> CREATE DATABASE mydb;
Query OK, 1 row affected (0.02 sec)

您的配置应该是:

DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.mysql',
        'NAME': 'mydb',
        'USER': 'root',
        'PASSWORD': 'sp153426',
        'HOST': '127.0.0.1',
        'PORT': '3306',
    }
}

Database相关问答推荐

如何使授权服务器与外部数据库保持同步?

将数据集上传到 Hub 时停止运行时会导致什么?

仅对表中的一列授予更改

Symfony2:spl_object_hash() expects parameter 1 to be object, string given in Doctrine

使用 Java 对 mysql 数据库进行简单备份和恢复

数据库设计:喜欢表?

我可以在 mysql 中的 select 语句上启动触发器吗?

在 PostgreSQL 上获取数据库创建日期

SQL Server 简单插入语句超时

如何将视图的所有权限授予任意用户

数据库设计—应该避免一对一的关系吗?

MySQL 转储所有数据库并在导入时创建(或重新创建)它们?

如何在一行中显示 redis 中的所有键?

是否有标准的Electron 商务数据库架构来将折扣/税收/礼券应用于产品?

如何从 T-SQL 中的表中 Select 前 N 行?

什么时候用R,什么时候用SQL?

如何使用 Entity Framework CF 在父级之前删除子实体?

数据库触发器的命名约定

您是否应该将自引用表列设为外键?

数据库与纯文本