Настройка надмножества apache с базой данных mysql

Я настраиваю apache для чтения из mysql вместо sqlite; Ниже приведены подробности в моем файле конфигурации. Я не совсем понимаю, как настроить приведенный выше файл для чтения из моей базы данных, чтобы я мог начать создавать сводки: я сослался на эту документацию для своей настройки. https://superset.incubator.apache.org/installation.html

# Superset specific config
#---------------------------------------------------------
ROW_LIMIT = 200000
SUPERSET_WORKERS = 4

SUPERSET_WEBSERVER_PORT = 8088
#---------------------------------------------------------

#---------------------------------------------------------
# Flask App Builder configuration
#---------------------------------------------------------
# Your App secret key
SECRET_KEY = '\2\1t567fgj7dtghjdhfui64@#$&77cvw424tkey\1\2\e\y\y\h'

# The SQLAlchemy connection string to your database backend
# This connection defines the path to the database that stores your
# superset metadata (slices, connections, tables, dashboards, ...).
# Note that the connection information to connect to the datasources
# you want to explore are managed directly in the web UI
#SQLALCHEMY_DATABASE_URI = 'sqlite:////path/to/superset.db'
SQLALCHEMY_DATABASE_URI = 'mysql://username:password@localhost:3307/'

# Flask-WTF flag for CSRF
CSRF_ENABLED = True

# Set this API key to enable Mapbox visualizations
MAPBOX_API_KEY = ''

Я запускаю следующую команду, чтобы запустить свой проект

superset init

Это приводит к следующей ошибке:

ERROR:flask_appbuilder.security.sqla.manager:DB Creation and initialization failed: 'NoneType' object has no attribute 'replace'

Мы будем очень признательны за любые указания по исправлению моей проблемы с конфигурацией


person Mirieri Mogaka    schedule 10.11.2019    source источник


Ответы (1)


Могут происходить 2 вещи:

  1. Кажется, ваш URI БД должен иметь формат mysql://username:password@host:port/dbname, а не просто mysql://username:password@host:port/ (см. https://docs.sqlalchemy.org/en/13/core/engines.html#mysql для справки)
  2. Кажется, вы хотите подключиться к этой базе данных mysql, чтобы запросить ее и визуализировать ее данные - НЕ использовать ее в качестве бэкэнда базы данных надмножества (т.е. надмножество базы данных будет использоваться для сохранения ваших конфигураций надмножества). В последнем случае вам может быть лучше просто использовать sqlite.
    Чтобы подключиться к целевой БД и запросить ее, см. «Подключение к целевой базе данных» на https://duperset.com/getting_started
person David Tobiano    schedule 14.11.2019