Я пытаюсь подключиться к удаленной базе данных MySQL из Django, но она продолжает пытаться подключиться к localhost по любой причине.
Я получаю ошибку:
Traceback (most recent call last):
File "R:\dev\HTML\Jesuszilla's Lawn\env2\lib\site-packages\django\db\backends\base\base.py", line 213, in ensure_connection
self.connect()
File "R:\dev\HTML\Jesuszilla's Lawn\env2\lib\site-packages\django\db\backends\base\base.py", line 189, in connect
self.connection = self.get_new_connection(conn_params)
File "R:\dev\HTML\Jesuszilla's Lawn\env2\lib\site-packages\django\db\backends\mysql\base.py", line 274, in get_new_connection
conn = Database.connect(**conn_params)
File "R:\dev\HTML\Jesuszilla's Lawn\env2\lib\site-packages\MySQLdb\__init__.py", line 84, in Connect
return Connection(*args, **kwargs)
File "R:\dev\HTML\Jesuszilla's Lawn\env2\lib\site-packages\MySQLdb\connections.py", line 164, in __init__
super(Connection, self).__init__(*args, **kwargs2)
MySQLdb._exceptions.OperationalError: (2002, "Can't connect to MySQL server on 'localhost' (10061)")
The above exception was the direct cause of the following exception:
Traceback (most recent call last):
File "c:\program files (x86)\microsoft visual studio\2019\community\common7\ide\extensions\microsoft\python\core\ptvsd_launcher.py", line 119, in <module>
vspd.debug(filename, port_num, debug_id, debug_options, run_as)
File "c:\program files (x86)\microsoft visual studio\2019\community\common7\ide\extensions\microsoft\python\core\Packages\ptvsd\debugger.py", line 39, in debug
run()
File "c:\program files (x86)\microsoft visual studio\2019\community\common7\ide\extensions\microsoft\python\core\Packages\ptvsd\__main__.py", line 316, in run_file
runpy.run_path(target, run_name='__main__')
File "C:\Users\Jesus\AppData\Local\Programs\Python\Python36\lib\runpy.py", line 263, in run_path
pkg_name=pkg_name, script_name=fname)
File "C:\Users\Jesus\AppData\Local\Programs\Python\Python36\lib\runpy.py", line 96, in _run_module_code
mod_name, mod_spec, pkg_name, script_name)
File "C:\Users\Jesus\AppData\Local\Programs\Python\Python36\lib\runpy.py", line 85, in _run_code
exec(code, run_globals)
File "R:\dev\HTML\Jesuszilla's Lawn\jesuszillaslawn\manage.py", line 15, in <module>
execute_from_command_line(sys.argv)
File "R:\dev\HTML\Jesuszilla's Lawn\env2\lib\site-packages\django\core\management\__init__.py", line 363, in execute_from_command_line
utility.execute()
File "R:\dev\HTML\Jesuszilla's Lawn\env2\lib\site-packages\django\core\management\__init__.py", line 355, in execute
self.fetch_command(subcommand).run_from_argv(self.argv)
File "R:\dev\HTML\Jesuszilla's Lawn\env2\lib\site-packages\django\core\management\base.py", line 283, in run_from_argv
self.execute(*args, **cmd_options)
File "R:\dev\HTML\Jesuszilla's Lawn\env2\lib\site-packages\django\core\management\commands\runserver.py", line 62, in execute
super(Command, self).execute(*args, **options)
File "R:\dev\HTML\Jesuszilla's Lawn\env2\lib\site-packages\django\core\management\base.py", line 330, in execute
output = self.handle(*args, **options)
File "R:\dev\HTML\Jesuszilla's Lawn\env2\lib\site-packages\django\core\management\commands\runserver.py", line 101, in handle
self.run(**options)
File "R:\dev\HTML\Jesuszilla's Lawn\env2\lib\site-packages\django\core\management\commands\runserver.py", line 112, in run
self.inner_run(None, **options)
File "R:\dev\HTML\Jesuszilla's Lawn\env2\lib\site-packages\django\core\management\commands\runserver.py", line 125, in inner_run
self.check(display_num_errors=True)
File "R:\dev\HTML\Jesuszilla's Lawn\env2\lib\site-packages\django\core\management\base.py", line 359, in check
include_deployment_checks=include_deployment_checks,
File "R:\dev\HTML\Jesuszilla's Lawn\env2\lib\site-packages\django\core\management\base.py", line 346, in _run_checks
return checks.run_checks(**kwargs)
File "R:\dev\HTML\Jesuszilla's Lawn\env2\lib\site-packages\django\core\checks\registry.py", line 81, in run_checks
new_errors = check(app_configs=app_configs)
File "R:\dev\HTML\Jesuszilla's Lawn\env2\lib\site-packages\django\core\checks\model_checks.py", line 30, in check_all_models
errors.extend(model.check(**kwargs))
File "R:\dev\HTML\Jesuszilla's Lawn\env2\lib\site-packages\django\db\models\base.py", line 1283, in check
errors.extend(cls._check_fields(**kwargs))
File "R:\dev\HTML\Jesuszilla's Lawn\env2\lib\site-packages\django\db\models\base.py", line 1358, in _check_fields
errors.extend(field.check(**kwargs))
File "R:\dev\HTML\Jesuszilla's Lawn\env2\lib\site-packages\django\db\models\fields\__init__.py", line 913, in check
errors = super(AutoField, self).check(**kwargs)
File "R:\dev\HTML\Jesuszilla's Lawn\env2\lib\site-packages\django\db\models\fields\__init__.py", line 219, in check
errors.extend(self._check_backend_specific_checks(**kwargs))
File "R:\dev\HTML\Jesuszilla's Lawn\env2\lib\site-packages\django\db\models\fields\__init__.py", line 322, in _check_backend_specific_checks
return connections[db].validation.check_field(self, **kwargs)
File "R:\dev\HTML\Jesuszilla's Lawn\env2\lib\site-packages\django\db\backends\mysql\validation.py", line 49, in check_field
field_type = field.db_type(self.connection)
File "R:\dev\HTML\Jesuszilla's Lawn\env2\lib\site-packages\django\db\models\fields\__init__.py", line 644, in db_type
return connection.data_types[self.get_internal_type()] % data
File "R:\dev\HTML\Jesuszilla's Lawn\env2\lib\site-packages\django\utils\functional.py", line 35, in __get__
res = instance.__dict__[self.name] = self.func(instance)
File "R:\dev\HTML\Jesuszilla's Lawn\env2\lib\site-packages\django\db\backends\mysql\base.py", line 174, in data_types
if self.features.supports_microsecond_precision:
File "R:\dev\HTML\Jesuszilla's Lawn\env2\lib\site-packages\django\utils\functional.py", line 35, in __get__
res = instance.__dict__[self.name] = self.func(instance)
File "R:\dev\HTML\Jesuszilla's Lawn\env2\lib\site-packages\django\db\backends\mysql\features.py", line 53, in supports_microsecond_precision
return self.connection.mysql_version >= (5, 6, 4) and Database.version_info >= (1, 2, 5)
File "R:\dev\HTML\Jesuszilla's Lawn\env2\lib\site-packages\django\utils\functional.py", line 35, in __get__
res = instance.__dict__[self.name] = self.func(instance)
File "R:\dev\HTML\Jesuszilla's Lawn\env2\lib\site-packages\django\db\backends\mysql\base.py", line 385, in mysql_version
with self.temporary_connection() as cursor:
File "C:\Users\Jesus\AppData\Local\Programs\Python\Python36\lib\contextlib.py", line 81, in __enter__
return next(self.gen)
File "R:\dev\HTML\Jesuszilla's Lawn\env2\lib\site-packages\django\db\backends\base\base.py", line 591, in temporary_connection
cursor = self.cursor()
File "R:\dev\HTML\Jesuszilla's Lawn\env2\lib\site-packages\django\db\backends\base\base.py", line 254, in cursor
return self._cursor()
File "R:\dev\HTML\Jesuszilla's Lawn\env2\lib\site-packages\django\db\backends\base\base.py", line 229, in _cursor
self.ensure_connection()
File "R:\dev\HTML\Jesuszilla's Lawn\env2\lib\site-packages\django\db\backends\base\base.py", line 213, in ensure_connection
self.connect()
File "R:\dev\HTML\Jesuszilla's Lawn\env2\lib\site-packages\django\db\utils.py", line 94, in __exit__
six.reraise(dj_exc_type, dj_exc_value, traceback)
File "R:\dev\HTML\Jesuszilla's Lawn\env2\lib\site-packages\django\utils\six.py", line 685, in reraise
raise value.with_traceback(tb)
File "R:\dev\HTML\Jesuszilla's Lawn\env2\lib\site-packages\django\db\backends\base\base.py", line 213, in ensure_connection
self.connect()
File "R:\dev\HTML\Jesuszilla's Lawn\env2\lib\site-packages\django\db\backends\base\base.py", line 189, in connect
self.connection = self.get_new_connection(conn_params)
File "R:\dev\HTML\Jesuszilla's Lawn\env2\lib\site-packages\django\db\backends\mysql\base.py", line 274, in get_new_connection
conn = Database.connect(**conn_params)
File "R:\dev\HTML\Jesuszilla's Lawn\env2\lib\site-packages\MySQLdb\__init__.py", line 84, in Connect
return Connection(*args, **kwargs)
File "R:\dev\HTML\Jesuszilla's Lawn\env2\lib\site-packages\MySQLdb\connections.py", line 164, in __init__
super(Connection, self).__init__(*args, **kwargs2)
django.db.utils.OperationalError: (2002, "Can't connect to MySQL server on 'localhost' (10061)")
My DATABASES
in settings.py:
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.mysql',
'NAME': 'db_name',
'OPTIONS': {
'read_default_file': os.path.join(BASE_DIR, '..', '..', 'db.cnf'),
},
}
}
Содержимое db.conf:
[client]
database = db_name
user = ******
password = ******
host = "mysql.jesuszilla.trinitymugen.net"
port = 3306
Это прекрасно работает на моем веб-сайте, так почему, когда я запускаю локально в VisualStudio, всегда ли он пытается подключиться к localhost?