在Superset上使用MySQL

Step1. 安装mysqlclient

Superset默认使用sqllite。支持以下数据库:

在Superset上使用MySQL_第1张图片

使用pip安装好数据库后,就可以在Web界面中,配置相关数据源了。

实际在使用pip install mysqlclient安装的时候仍然报错。解决办法:在https://www.lfd.uci.edu/~gohlke/pythonlibs/#mysqlclient下载自己版本对应的资源,放在env文件目录下,使用下面命令进行安装:
pip install mysqlclient‑1.3.13‑cp36‑cp36m‑win_amd64.whl

在Superset上使用MySQL_第2张图片
安装mysqlclient

Step2. 激活virtualenv,启动superset

命令:env\Scripts\activate
激活之后在命令行输入的左侧有(env)标记,这样后续操作都会在env中生效,不会影响整体的python环境。

在Superset上使用MySQL_第3张图片
进入并激活virtualenv

命令:Python superset runserver -d

在Superset上使用MySQL_第4张图片
启动superset

在Superset上使用MySQL_第5张图片
全部过程

Step3. 添加MySQL数据源

我使用MySQL Workbench已经在mytest数据库中创建了scrap_table,想把它在superset里面可视化出来。
浏览器中输入localhost:8088,点击数据源->数据库-> '+'

在Superset上使用MySQL_第6张图片
superset数据源

SQL Alchemy URI中填入:

mysql://root:XXXXXXXXXX@localhost/mytest?charset=utf8
#####(此处XXXXXXXXXX 为数据库mytest.db下root的密码)
在Superset上使用MySQL_第7张图片
数据源配置

编辑角色,给admin角色赋刚刚添加的数据库权限:


在Superset上使用MySQL_第8张图片

在Superset上使用MySQL_第9张图片

添加数据表scrap_table,在列列表和指标列可以添加自己的统计维度和指标。接着就可以使用scrap_table里面的数据进行做图了。

注意: MySQL的数据库里面的数据表各属性以及取值应该正确,比如Datatime格式应该遵循YYYY-MM-DD HH:MM:SS,不然强行格式转换会出错,superset跑不出来数据。

你可能感兴趣的:(在Superset上使用MySQL)