Ошибка Django syncdb mysql на локальном хосте -> (1045, «Доступ запрещен для пользователя« ODBC »@« localhost »)

Надеюсь, кто-нибудь поможет мне подключить django к базе данных mysql на локальном хосте...

Я установил сайт Django в папку virtualenv на своем рабочем столе и шаг за шагом следую руководству по документации django.

У меня установлен mysqlclient через pip в соответствии с документами django.

У меня есть WAMP V2.5 с последней установленной и работающей версией phpmyadmin.

Тестовый сайт Django загружается с localhost:8000, и я могу легко настроить сайт с помощью sqli.

В localhost/phpmyadmin я создал пустую базу данных с именем «test_db» и в качестве примера для этого вопроса я использовал имя пользователя = «пользователь» и пароль = «pwd».

Мой файл settings.py настроен для настроек базы данных, как показано ниже:

DATABASES = {
    'default': 'django.db.backends.mysql',
    'NAME': 'test_db',
    'HOST': 'localhost',
    'PORT': '3306',
    'USERNAME': 'user',
    'PASSWORD': 'pwd',
    }
}

Как только я сохраняю скрипт settings.py, я запускаю команду:

python manage.py syncdb

Результат, который я получаю:

django.db.utils.OperationalError: 
(1045, "Access denied for user 'ODBC'@'localhost' (using password: YES)")

Я могу изменить имя пользователя и пароль на пользователя root и пароль, и все равно получаю тот же результат.

Я потратил несколько дней на поиск в Google и Youtube, но пока ничего не помогло... Любая помощь приветствуется.


person Baz    schedule 13.05.2015    source источник
comment
Вы создали базу данных? Вам нужно сделать это вручную в MySQL.   -  person wobbily_col    schedule 13.05.2015


Ответы (1)


Измените настройки вашей базы данных:

'ENGINE':'django.db.backends.mysql',  
'NAME': 'test_db',  
'USER': 'root',  
'PASSWORD': '',  
'HOST': 'localhost',  
'PORT': '3306',
person gaurav_kamble    schedule 13.05.2015
comment
Спасибо, gaurav_kamble... У меня было ИМЯ ПОЛЬЗОВАТЕЛЯ вместо ПОЛЬЗОВАТЕЛЯ, и хотя у меня есть настройка пароля для моего локального сервера, он работал только тогда, когда раздел ПАРОЛЬ был пуст. - person Baz; 14.05.2015
comment
когда я делаю это, я получаю django.db.utils.OperationalError: (1067, недопустимое значение по умолчанию для «имя пользователя») - person ashim888; 25.01.2017
comment
@ ashim888 Я думаю, у вас есть «имя пользователя» вместо «пользователь» в настройках базы данных. - person gaurav_kamble; 28.01.2017
comment
У @gaurav_kamble возникли проблемы с авторизацией. Теперь он работает нормально. - person ashim888; 28.01.2017