Подключение к MySQL из Django - PullRequest
       4

Подключение к MySQL из Django

4 голосов
/ 31 января 2011

это мой первый проект с django .. я уже пробовал соединение с sqlite.but теперь m, используя соединение django с mysql nm, получаю следующую ошибку ...

D:\project\wogma>manage.py syncdb
Traceback (most recent call last):
  File "D:\project\wogma\manage.py", line 11, in <module>
    execute_manager(settings)

  File "C:\Python26\lib\site-packages\django\core\management\__init__.py", line
340, in execute_manager
    utility.execute()

  File "C:\Python26\lib\site-packages\django\core\management\__init__.py", line
295, in execute
    self.fetch_command(subcommand).run_from_argv(self.argv)

  File "C:\Python26\lib\site-packages\django\core\management\base.py", line 192,
 in run_from_argv
    self.execute(*args, **options.__dict__)

  File "C:\Python26\lib\site-packages\django\core\management\base.py", line 218,
 in execute
    self.validate()

  File "C:\Python26\lib\site-packages\django\core\management\base.py", line 246,
 in validate
    num_errors = get_validation_errors(s, app)

  File "C:\Python26\lib\site-packages\django\core\management\validation.py", lin
e 65, in get_validation_errors
    connection.validation.validate_field(e, opts, f)

  File "C:\Python26\lib\site-packages\django\db\backends\mysql\validation.py", l
ine 8, in validate_field
    db_version = connection.get_server_version()

  File "C:\Python26\lib\site-packages\django\db\backends\mysql\base.py", line 27
7, in get_server_version
    self.cursor()

  File "C:\Python26\lib\site-packages\django\db\backends\__init__.py", line 56,
in cursor
    cursor = self._cursor(settings)

  File "C:\Python26\lib\site-packages\django\db\backends\mysql\base.py", line 26
2, in _cursor
    self.connection = Database.connect(**kwargs)

  File "C:\Python26\lib\site-packages\MySQLdb\__init__.py", line 81, in Connect
    return Connection(*args, **kwargs)
  File "C:\Python26\lib\site-packages\MySQLdb\connections.py", line 188, in __in
it__
    super(Connection, self).__init__(*args, **kwargs2)

_mysql_exceptions.OperationalError: (1049, "Unknown database 'd:/project/wogma/w
ogma'")

я выполнял команды в mysqlследует .. я уже создал базу данных wogma, просто используя команду create database ni предоставил привилегии .. в mysql.Что такое PRB ??

Ответы [ 4 ]

7 голосов
/ 31 января 2011

Вы пытаетесь указать базу данных по пути к файлу (который будет работать для SQLite).MySQL нужно имя базы данных (например, 'wogma').Вы должны будете следовать инструкциям, чтобы установить MySQL, создать нового пользователя, базу данных и т. Д. Похоже, что вы работаете в Windows, поэтому я не могу помочь больше, чем это.

4 голосов
/ 31 января 2011
  1. откройте консоль sql и введите SHOW DATABASES;
  2. если появляется wogma, просто установите это в своих настройках (вы используете django 1.1):

    DATABASE_ENGINE = 'django.db.backends.mysql'

    DATABASE_NAME = 'wogma'

    DATABASE_HOST = '127.0.0.1'

    DATABASE_PORT = '3306'

  3. если нет, просто создайте его в этой консоли CREATE DATABASE <code>wogma; и повторите шаги.

3 голосов
/ 21 июня 2014

Попробуйте с этой конфигурацией соединения:

DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.mysql',
        'NAME': 'MY_DATABASE_NAME',
        'USER': 'root',
        'PASSWORD': 'MY_PASSWORD',
    }
}

Но Сначала , создайте базу данных в вашем mysql.

0 голосов
/ 01 марта 2019

Как указано в ответах выше, приведенный ниже код не будет работать

    DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.mysql',
        'NAME': 'MY_DATABASE_NAME',
        'USER': 'root',
        'PASSWORD': 'MY_PASSWORD',
    }
 }

Вы должны загрузить MySQL Connector. Прочтите этот пост, чтобы настроить базу данных MySQL в Django 2.1.x

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...