summaryrefslogtreecommitdiff
path: root/django/db/backends/mysql/client.py
diff options
context:
space:
mode:
authorAdam Johnson <me@adamj.eu>2020-04-14 08:56:40 +0100
committerAdam Johnson <me@adamj.eu>2020-04-14 14:02:51 +0100
commit5b884d45ac5b76234eca614d90c83b347294c332 (patch)
treeae2fcde4aa7a1fed16661e711dbab785d5b66d89 /django/db/backends/mysql/client.py
parent8e8c3f964e23e669fc563a74750e51abba4c2e3a (diff)
downloaddjango-5b884d45ac5b76234eca614d90c83b347294c332.tar.gz
Fixed #29501 -- Allowed dbshell to pass options to underlying tool.
Diffstat (limited to 'django/db/backends/mysql/client.py')
-rw-r--r--django/db/backends/mysql/client.py7
1 files changed, 4 insertions, 3 deletions
diff --git a/django/db/backends/mysql/client.py b/django/db/backends/mysql/client.py
index a596a650b3..e5b6a59fb2 100644
--- a/django/db/backends/mysql/client.py
+++ b/django/db/backends/mysql/client.py
@@ -7,7 +7,7 @@ class DatabaseClient(BaseDatabaseClient):
executable_name = 'mysql'
@classmethod
- def settings_to_cmd_args(cls, settings_dict):
+ def settings_to_cmd_args(cls, settings_dict, parameters):
args = [cls.executable_name]
db = settings_dict['OPTIONS'].get('db', settings_dict['NAME'])
user = settings_dict['OPTIONS'].get('user', settings_dict['USER'])
@@ -41,8 +41,9 @@ class DatabaseClient(BaseDatabaseClient):
args += ["--ssl-key=%s" % client_key]
if db:
args += [db]
+ args.extend(parameters)
return args
- def runshell(self):
- args = DatabaseClient.settings_to_cmd_args(self.connection.settings_dict)
+ def runshell(self, parameters):
+ args = DatabaseClient.settings_to_cmd_args(self.connection.settings_dict, parameters)
subprocess.run(args, check=True)