Как я могу подключить Airflow к SQLite локально? - PullRequest
0 голосов
/ 18 декабря 2018

Я пытаюсь попробовать Airflow в первый раз и пытаюсь подключить его к локальной базе данных SQLite.Но я никак не могу понять, как на самом деле это сделать.

Я прочитал Документ воздушного потока , Установите executor на LocalExecutor и установитедо моего sql_alchemy_conn до sqlite:////home/myName/Programs/sqlite3/DatabaseName.db, но, похоже, он не работает, поскольку выдает ошибку

Traceback (most recent call last):
  File "/usr/local/bin/airflow", line 21, in <module>
    from airflow import configuration
  File "/usr/local/lib/python2.7/dist-packages/airflow/__init__.py", line 35, in <module>
    from airflow import configuration as conf
  File "/usr/local/lib/python2.7/dist-packages/airflow/configuration.py", line 520, in <module>
    conf.read(AIRFLOW_CONFIG)
  File "/usr/local/lib/python2.7/dist-packages/airflow/configuration.py", line 283, in read
    self._validate()
  File "/usr/local/lib/python2.7/dist-packages/airflow/configuration.py", line 169, in _validate
    self.get('core', 'executor')))
airflow.exceptions.AirflowConfigException: error: cannot use sqlite with the LocalExecutor

при попытке запустить airflow initdb.Я попытался погуглить и попробовал решение vipul sharma найденное здесь и установил значение моего sql_alchemy_conn на mysql://:@localhost:3306/, но оно все равно не работает, так как выдает

sqlalchemy.exc.OperationalError: (_mysql_exceptions.OperationalError) (1045, "Access denied for user 'myName'@'localhost' (using password: NO)")

ошибка.Я знаю, что ответ должен быть очень простым, но я действительно не понимаю, как это сделать, поэтому я надеюсь, что вы можете подсказать мне, что делать / читать.

1 Ответ

0 голосов
/ 18 декабря 2018

Использовать SequentialExecutor

"Этот исполнитель будет запускать только один экземпляр задачи за раз, его можно использовать для отладки. Это также единственный исполнитель, который можно использовать с sqlite, поскольку sqlite не поддерживает несколько соединений«. документация по воздушному потоку

Вам просто не нужно было переходить на LocalExecutor, изменить его обратно на SequentialExecutor, изменить sql_alchemy_conn, чтобы указать sqlite:////home/myName/Programs/sqlite3/DatabaseName.db и остановить поток воздухаслужбы (веб-сервер, планировщик).

Выполните airflow initdb, затем снова запустите службы.

Надеюсь, это сработает.

...