首先我试用了很多不同版本的python7,8,9 但是都不好使!!!!!!!
最后试了python3.6 虽然有问题 但是解决了 具体如下
初始化Supetset数据库
superset db upgrade
之后会报错
错误1
Traceback (most recent call last):
File "/opt/module/miniconda3/envs/superset/bin/superset", line 5, in <module>
from superset.cli.main import superset
File "/opt/module/miniconda3/envs/superset/lib/python3.8/site-packages/superset/__init__.py", line 18, in <module>
from flask import current_app, Flask
File "/opt/module/miniconda3/envs/superset/lib/python3.8/site-packages/flask/__init__.py", line 14, in <module>
from jinja2 import escape
File "/opt/module/miniconda3/envs/superset/lib/python3.8/site-packages/jinja2/__init__.py", line 12, in <module>
from .environment import Environment
File "/opt/module/miniconda3/envs/superset/lib/python3.8/site-packages/jinja2/environment.py", line 25, in <module>
from .defaults import BLOCK_END_STRING
File "/opt/module/miniconda3/envs/superset/lib/python3.8/site-packages/jinja2/defaults.py", line 3, in <module>
from .filters import FILTERS as DEFAULT_FILTERS # noqa: F401
File "/opt/module/miniconda3/envs/superset/lib/python3.8/site-packages/jinja2/filters.py", line 13, in <module>
from markupsafe import soft_unicode
ImportError: cannot import name 'soft_unicode' from 'markupsafe' (/opt/module/miniconda3/envs/superset/lib/python3.8/site-packages/markupsafe/__init__.py)
解决办法
python -m pip install markupsafe==2.0.1
错误2
Traceback (most recent call last):
File "/opt/module/miniconda3/envs/superset/bin/superset", line 5, in <module>
from superset.cli import superset
File "/opt/module/miniconda3/envs/superset/lib/python3.6/site-packages/superset/__init__.py", line 21, in <module>
from superset.app import create_app
File "/opt/module/miniconda3/envs/superset/lib/python3.6/site-packages/superset/app.py", line 24, in <module>
from flask_appbuilder import expose, IndexView
File "/opt/module/miniconda3/envs/superset/lib/python3.6/site-packages/flask_appbuilder/__init__.py", line 5, in <module>
from .api import ModelRestApi # noqa: F401
File "/opt/module/miniconda3/envs/superset/lib/python3.6/site-packages/flask_appbuilder/api/__init__.py", line 21, in <module>
from .convert import Model2SchemaConverter
File "/opt/module/miniconda3/envs/superset/lib/python3.6/site-packages/flask_appbuilder/api/convert.py", line 4, in <module>
from flask_appbuilder.models.sqla.interface import SQLAInterface
File "/opt/module/miniconda3/envs/superset/lib/python3.6/site-packages/flask_appbuilder/models/sqla/interface.py", line 40, in <module>
from sqlalchemy_utils.types.uuid import UUIDType
File "/opt/module/miniconda3/envs/superset/lib/python3.6/site-packages/sqlalchemy_utils/__init__.py", line 1, in <module>
from .aggregates import aggregated # noqa
File "/opt/module/miniconda3/envs/superset/lib/python3.6/site-packages/sqlalchemy_utils/aggregates.py", line 372, in <module>
from .functions.orm import get_column_key
File "/opt/module/miniconda3/envs/superset/lib/python3.6/site-packages/sqlalchemy_utils/functions/__init__.py", line 1, in <module>
from .database import ( # noqa
File "/opt/module/miniconda3/envs/superset/lib/python3.6/site-packages/sqlalchemy_utils/functions/database.py", line 11, in <module>
from .orm import quote
File "/opt/module/miniconda3/envs/superset/lib/python3.6/site-packages/sqlalchemy_utils/functions/orm.py", line 14, in <module>
from sqlalchemy.orm.query import _ColumnEntity
ImportError: cannot import name '_ColumnEntity'
解决
pip install sqlalchemy==1.3.24
错误3
/opt/module/miniconda3/envs/superset/lib/python3.6/site-packages/sqlalchemy_utils/types/encrypted/encrypted_type.py:18: CryptographyDeprecationWarning: Python 3.6 is no longer supported by the Python core team. Therefore, support for it is deprecated in cryptography and will be removed in a future release.
import cryptography
Traceback (most recent call last):
File "/opt/module/miniconda3/envs/superset/bin/superset", line 5, in <module>
from superset.cli import superset
File "/opt/module/miniconda3/envs/superset/lib/python3.6/site-packages/superset/__init__.py", line 21, in <module>
from superset.app import create_app
File "/opt/module/miniconda3/envs/superset/lib/python3.6/site-packages/superset/app.py", line 45, in <module>
from superset.security import SupersetSecurityManager
File "/opt/module/miniconda3/envs/superset/lib/python3.6/site-packages/superset/security/__init__.py", line 17, in <module>
from superset.security.manager import SupersetSecurityManager # noqa: F401
File "/opt/module/miniconda3/envs/superset/lib/python3.6/site-packages/superset/security/manager.py", line 44, in <module>
from superset import sql_parse
File "/opt/module/miniconda3/envs/superset/lib/python3.6/site-packages/superset/sql_parse.py", line 18, in <module>
from dataclasses import dataclass
ModuleNotFoundError: No module named 'dataclasses'
解决
pip install dataclasses
然后初始化Supetset数据库就好了
superset db upgrade
上面是安装时候的错误
我还犯了一个低级错误,那就是安装mysql依赖
conda install mysqlclient
一定在superset下安装
然后就是使用superset
其实很简单
url:mysql://用户名:密码@主机名:端口号/数据库名称
Schema要与数据库名保持一致!!!!!!!!!