Opened 4 years ago

Last modified 4 years ago

#31491 closed Cleanup/optimization

dbshell command for MySQL backend uses "passwd" instead of "password". — at Version 8

Reported by: Maruti N Sharma Owned by: Maruti N Sharma
Component: Core (Management commands) Version: dev
Severity: Normal Keywords: dbshell, db, command-line
Cc: Triage Stage: Accepted
Has patch: yes Needs documentation: no
Needs tests: no Patch needs improvement: no
Easy pickings: yes UI/UX: no

Description (last modified by Maruti N Sharma)

For MySql, "passwd" has been replaced with "password" long time ago, please check here https://code.djangoproject.com/ticket/5024
But dbshell command still looks for "passwd" key in the settings for db password, resulting in connection error.
This behaviour is also slightly different than other back-ends.

Pull request submitted: https://github.com/django/django/pull/12763


Steps to reproduce:

# use actual db username, password etc
DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.mysql',
        'NAME': 'mydatabase',
        'USER': 'mydatabaseuser',
        'PASSWORD': 'mypassword',
        'HOST': '127.0.0.1',
        'PORT': '5432',
    }
}
  • Open a terminal and activate respective environment
  • run: python manage.py dbshell
  • You should get following error: Access denied for user 'mydatabaseuser'@'localhost' (using password: NO)

(My apologies for any mistake, I am new to bug-tracking system)

Change History (9)

comment:1 by Maruti N Sharma, 4 years ago

Owner: changed from nobody to Maruti N Sharma
Status: newassigned

comment:2 by Maruti N Sharma, 4 years ago

Description: modified (diff)

by Maruti N Sharma, 4 years ago

Attachment: ticket_31491.diff added

patch file

comment:3 by Maruti N Sharma, 4 years ago

Description: modified (diff)
Has patch: set

comment:4 by Mariusz Felisiak, 4 years ago

Easy pickings: set
Summary: "dbshell" command for MySql back-end uses "passwd" instead of "password"dbshell command for MySQL backend uses "passwd" instead of "password".
Triage Stage: UnreviewedAccepted
Type: BugCleanup/optimization
Version: 3.0master

passwd from OPTIONS is passed to a --password argument so it shouldn't cause any connection failures. However I agree that we can unify this. We can add a small release note (even if it's not documented). Please send patch via GitHub.

comment:5 by Maruti N Sharma, 4 years ago

Description: modified (diff)

in reply to:  4 comment:6 by Maruti N Sharma, 4 years ago

Replying to felixxm:

passwd from OPTIONS is passed to a --password argument so it shouldn't cause any connection failures. However I agree that we can unify this. We can add a small release note (even if it's not documented). Please send patch via GitHub.

I understand that, actually I was using "OPTIONS" field for database settings, that is where this caused issue on my end.

If you wish to unify this behaviour, I have submitted the pull request.

Last edited 4 years ago by Maruti N Sharma (previous) (diff)

comment:7 by Maruti N Sharma, 4 years ago

Description: modified (diff)
Last edited 4 years ago by Maruti N Sharma (previous) (diff)

comment:8 by Maruti N Sharma, 4 years ago

Description: modified (diff)
Note: See TracTickets for help on using tickets.
Back to Top