#mysql #python-3.x #flask #sqlalchemy #flask-sqlalchemy
Вопрос:
Я использую колбу и колбу-SQLAlchemy. Я получаю следующую ошибку при запросе базы данных .
Ошибка! Подробности — (pymysql.err.OperationalError) (2003, «Не удается подключиться к серверу MySQL на ‘1812@127.0.0.1’ ([Errno -2] Имя или услуга неизвестны)») (Предыстория этой ошибки по адресу: https://sqlalche.me/e/14/e3q8)
Строка, которая генерирует ошибку, является
session = DB.session
result = cls.get_integrations(session, integration_details).first()
При вызове first() в cls.get_integrations(сеанс, integration_details) возникает ошибка .
Журнал ошибок выглядит следующим образом :
{"asset":"localhost:5000", "description":"Traceback (most recent call last):
File "/home/vishal/Desktop/tribes/extract-data-python-3/venv/lib/python3.8/site-packages/pymysql/connections.py", line 613, in connect
sock = socket.create_connection(
File "/usr/lib/python3.8/socket.py", line 787, in create_connection
for res in getaddrinfo(host, port, 0, SOCK_STREAM):
File "/usr/lib/python3.8/socket.py", line 918, in getaddrinfo
for res in _socket.getaddrinfo(host, port, family, type, proto, flags):
socket.gaierror: [Errno -2] Name or service not known
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/home/vishal/Desktop/tribes/extract-data-python-3/venv/lib/python3.8/site-packages/sqlalchemy/engine/base.py", line 3240, in _wrap_pool_connect
return fn()
File "/home/vishal/Desktop/tribes/extract-data-python-3/venv/lib/python3.8/site-packages/sqlalchemy/pool/base.py", line 310, in connect
return _ConnectionFairy._checkout(self)
File "/home/vishal/Desktop/tribes/extract-data-python-3/venv/lib/python3.8/site-packages/sqlalchemy/pool/base.py", line 868, in _checkout
fairy = _ConnectionRecord.checkout(pool)
File "/home/vishal/Desktop/tribes/extract-data-python-3/venv/lib/python3.8/site-packages/sqlalchemy/pool/base.py", line 476, in checkout
rec = pool._do_get()
File "/home/vishal/Desktop/tribes/extract-data-python-3/venv/lib/python3.8/site-packages/sqlalchemy/pool/impl.py", line 146, in _do_get
self._dec_overflow()
File "/home/vishal/Desktop/tribes/extract-data-python-3/venv/lib/python3.8/site-packages/sqlalchemy/util/langhelpers.py", line 70, in __exit__
compat.raise_(
File "/home/vishal/Desktop/tribes/extract-data-python-3/venv/lib/python3.8/site-packages/sqlalchemy/util/compat.py", line 207, in raise_
raise exception
File "/home/vishal/Desktop/tribes/extract-data-python-3/venv/lib/python3.8/site-packages/sqlalchemy/pool/impl.py", line 143, in _do_get
return self._create_connection()
File "/home/vishal/Desktop/tribes/extract-data-python-3/venv/lib/python3.8/site-packages/sqlalchemy/pool/base.py", line 256, in _create_connection
return _ConnectionRecord(self)
File "/home/vishal/Desktop/tribes/extract-data-python-3/venv/lib/python3.8/site-packages/sqlalchemy/pool/base.py", line 371, in __init__
self.__connect()
File "/home/vishal/Desktop/tribes/extract-data-python-3/venv/lib/python3.8/site-packages/sqlalchemy/pool/base.py", line 666, in __connect
pool.logger.debug("Error on connect(): %s", e)
File "/home/vishal/Desktop/tribes/extract-data-python-3/venv/lib/python3.8/site-packages/sqlalchemy/util/langhelpers.py", line 70, in __exit__
compat.raise_(
File "/home/vishal/Desktop/tribes/extract-data-python-3/venv/lib/python3.8/site-packages/sqlalchemy/util/compat.py", line 207, in raise_
raise exception
File "/home/vishal/Desktop/tribes/extract-data-python-3/venv/lib/python3.8/site-packages/sqlalchemy/pool/base.py", line 661, in __connect
self.dbapi_connection = connection = pool._invoke_creator(self)
File "/home/vishal/Desktop/tribes/extract-data-python-3/venv/lib/python3.8/site-packages/sqlalchemy/engine/create.py", line 590, in connect
return dialect.connect(*cargs, **cparams)
File "/home/vishal/Desktop/tribes/extract-data-python-3/venv/lib/python3.8/site-packages/sqlalchemy/engine/default.py", line 584, in connect
return self.dbapi.connect(*cargs, **cparams)
File "/home/vishal/Desktop/tribes/extract-data-python-3/venv/lib/python3.8/site-packages/pymysql/connections.py", line 353, in __init__
self.connect()
File "/home/vishal/Desktop/tribes/extract-data-python-3/venv/lib/python3.8/site-packages/pymysql/connections.py", line 664, in connect
raise exc
pymysql.err.OperationalError: (2003, "Can't connect to MySQL server on '1812@127.0.0.1' ([Errno -2] Name or service not known)")
The above exception was the direct cause of the following exception:
Traceback (most recent call last):
File "/home/vishal/Desktop/tribes/extract-data-python-3/routes/vendor_specific/xero/xero_routes.py", line 55, in get_contacts_list
return contacts_syncer.get_contacts_list()
File "/home/vishal/Desktop/tribes/extract-data-python-3/data_pullers/xero/xero/contacts_syncer.py", line 44, in get_contacts_list
integration_details = cache_helpers.get_integration_details(integration_id)
File "/home/vishal/Desktop/tribes/extract-data-python-3/helpers/cache_helpers.py", line 157, in get_integration_details
integration_db = IntegrationModel.get_integration(integration_id)
File "/home/vishal/Desktop/tribes/extract-data-python-3/model/sqlalchemy/platform_integration_model.py", line 106, in get_integration
result = cls.get_integrations(session, integration_details).first()
File "/home/vishal/Desktop/tribes/extract-data-python-3/venv/lib/python3.8/site-packages/sqlalchemy/orm/query.py", line 2762, in first
return self.limit(1)._iter().first()
File "/home/vishal/Desktop/tribes/extract-data-python-3/venv/lib/python3.8/site-packages/sqlalchemy/orm/query.py", line 2846, in _iter
result = self.session.execute(
File "/home/vishal/Desktop/tribes/extract-data-python-3/venv/lib/python3.8/site-packages/sqlalchemy/orm/session.py", line 1688, in execute
conn = self._connection_for_bind(bind)
File "/home/vishal/Desktop/tribes/extract-data-python-3/venv/lib/python3.8/site-packages/sqlalchemy/orm/session.py", line 1529, in _connection_for_bind
return self._transaction._connection_for_bind(
File "/home/vishal/Desktop/tribes/extract-data-python-3/venv/lib/python3.8/site-packages/sqlalchemy/orm/session.py", line 747, in _connection_for_bind
conn = bind.connect()
File "/home/vishal/Desktop/tribes/extract-data-python-3/venv/lib/python3.8/site-packages/sqlalchemy/engine/base.py", line 3194, in connect
return self._connection_cls(self, close_with_result=close_with_result)
File "/home/vishal/Desktop/tribes/extract-data-python-3/venv/lib/python3.8/site-packages/sqlalchemy/engine/base.py", line 96, in __init__
else engine.raw_connection()
File "/home/vishal/Desktop/tribes/extract-data-python-3/venv/lib/python3.8/site-packages/sqlalchemy/engine/base.py", line 3273, in raw_connection
return self._wrap_pool_connect(self.pool.connect, _connection)
File "/home/vishal/Desktop/tribes/extract-data-python-3/venv/lib/python3.8/site-packages/sqlalchemy/engine/base.py", line 3243, in _wrap_pool_connect
Connection._handle_dbapi_exception_noconnection(
File "/home/vishal/Desktop/tribes/extract-data-python-3/venv/lib/python3.8/site-packages/sqlalchemy/engine/base.py", line 2097, in _handle_dbapi_exception_noconnection
util.raise_(
File "/home/vishal/Desktop/tribes/extract-data-python-3/venv/lib/python3.8/site-packages/sqlalchemy/util/compat.py", line 207, in raise_
raise exception
File "/home/vishal/Desktop/tribes/extract-data-python-3/venv/lib/python3.8/site-packages/sqlalchemy/engine/base.py", line 3240, in _wrap_pool_connect
return fn()
File "/home/vishal/Desktop/tribes/extract-data-python-3/venv/lib/python3.8/site-packages/sqlalchemy/pool/base.py", line 310, in connect
return _ConnectionFairy._checkout(self)
File "/home/vishal/Desktop/tribes/extract-data-python-3/venv/lib/python3.8/site-packages/sqlalchemy/pool/base.py", line 868, in _checkout
fairy = _ConnectionRecord.checkout(pool)
File "/home/vishal/Desktop/tribes/extract-data-python-3/venv/lib/python3.8/site-packages/sqlalchemy/pool/base.py", line 476, in checkout
rec = pool._do_get()
File "/home/vishal/Desktop/tribes/extract-data-python-3/venv/lib/python3.8/site-packages/sqlalchemy/pool/impl.py", line 146, in _do_get
self._dec_overflow()
File "/home/vishal/Desktop/tribes/extract-data-python-3/venv/lib/python3.8/site-packages/sqlalchemy/util/langhelpers.py", line 70, in __exit__
compat.raise_(
File "/home/vishal/Desktop/tribes/extract-data-python-3/venv/lib/python3.8/site-packages/sqlalchemy/util/compat.py", line 207, in raise_
raise exception
File "/home/vishal/Desktop/tribes/extract-data-python-3/venv/lib/python3.8/site-packages/sqlalchemy/pool/impl.py", line 143, in _do_get
return self._create_connection()
File "/home/vishal/Desktop/tribes/extract-data-python-3/venv/lib/python3.8/site-packages/sqlalchemy/pool/base.py", line 256, in _create_connection
return _ConnectionRecord(self)
File "/home/vishal/Desktop/tribes/extract-data-python-3/venv/lib/python3.8/site-packages/sqlalchemy/pool/base.py", line 371, in __init__
self.__connect()
File "/home/vishal/Desktop/tribes/extract-data-python-3/venv/lib/python3.8/site-packages/sqlalchemy/pool/base.py", line 666, in __connect
pool.logger.debug("Error on connect(): %s", e)
File "/home/vishal/Desktop/tribes/extract-data-python-3/venv/lib/python3.8/site-packages/sqlalchemy/util/langhelpers.py", line 70, in __exit__
compat.raise_(
File "/home/vishal/Desktop/tribes/extract-data-python-3/venv/lib/python3.8/site-packages/sqlalchemy/util/compat.py", line 207, in raise_
raise exception
File "/home/vishal/Desktop/tribes/extract-data-python-3/venv/lib/python3.8/site-packages/sqlalchemy/pool/base.py", line 661, in __connect
self.dbapi_connection = connection = pool._invoke_creator(self)
File "/home/vishal/Desktop/tribes/extract-data-python-3/venv/lib/python3.8/site-packages/sqlalchemy/engine/create.py", line 590, in connect
return dialect.connect(*cargs, **cparams)
File "/home/vishal/Desktop/tribes/extract-data-python-3/venv/lib/python3.8/site-packages/sqlalchemy/engine/default.py", line 584, in connect
return self.dbapi.connect(*cargs, **cparams)
File "/home/vishal/Desktop/tribes/extract-data-python-3/venv/lib/python3.8/site-packages/pymysql/connections.py", line 353, in __init__
self.connect()
File "/home/vishal/Desktop/tribes/extract-data-python-3/venv/lib/python3.8/site-packages/pymysql/connections.py", line 664, in connect
raise exc
sqlalchemy.exc.OperationalError: (pymysql.err.OperationalError) (2003, "Can't connect to MySQL server on '1812@127.0.0.1' ([Errno -2] Name or service not known)")
(Background on this error at: https://sqlalche.me/e/14/e3q8)
Почему я получаю эту ошибку . Может кто-нибудь, пожалуйста, помочь ? Спасибо.
Комментарии:
1. Это кажется очевидным из сообщения об ошибке. Проверьте настройки подключения, такие как хост и/или порт.
2. Включает ли ваш URI подключения пароль, содержащий
@
символ?3. Да , вот тут-то все и пошло не так . Я использовал quote (), чтобы решить эту проблему . Кстати, спасибо .