Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

Usando MySQL com Django - Acesso negado para usuário '@'localhost


Seu usuário não tem acesso ao banco de dados. Use os comandos abaixo para configurar seu banco de dados.
DROP DATABASE IF EXISTS `mydb`;
CREATE DATABASE `mydb`
    DEFAULT CHARACTER SET utf8
    DEFAULT COLLATE utf8_general_ci;

USE 'mysql';
GRANT ALL PRIVILEGES ON mydb.* TO 'mydb_user'@'localhost' IDENTIFIED BY 'your_password'

WITH GRANT OPTION;
FLUSH PRIVILEGES;

Além disso, você precisa ter privilégios suficientes para executá-lo. Salve-o como script.sql então,
$mysql -u root -p < script.sql

Do que para settings.py, onde você precisa ter certeza de que suas configurações de banco de dados estão configuradas corretamente
DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.mysql',
        'NAME': 'mydb',                  
        'USER': 'mydb_user',             
        'PASSWORD': 'your_password',                  
        'HOST': '',                     
        'PORT': '',                      
    }
}

e
python manage.py syncdb

e pronto.