Superset——数据库连接

因为Superset的所有功能的基础都是“数据”,所以在正式使用Superset之前,我们首先要学习如何连接我们自己的数据库。

打开“数据”tab下的“数据库”界面,点击右上角的“添加数据库“按钮,在弹出的连接数据库配置页面,我们看到Superset默认只提供了SQLite数据库连接的配置。

连接SQLite

如果你正好也是使用的SQLite作为你的业务系统的数据库,那么,你就可以直接选择SQLite,进入SQLite的配置界面。

在这个界面输入数据库的别名、连接URI,点击“CONNECT“即可完成SQLite的数据库连接配置。

在点击“CONNECT”之前,也可以点击“测试连接”来测试配置是否正确,是否可以访问到数据库。

SQL ALCHEMY URI的配置,可以参看官方文档给出的参考示例,具体访问地址在本篇博客的底部附录《Superset数据库驱动和配置》。

连接MySql

现在我们来看看如何连接我们比较常用的Mysql数据库。

  • 第1步:安装Mysql的驱动包

查看底部附录里面的Superset数据库驱动和配置open in new window

查找Mysql对应的驱动安装命令。

DatabasePyPI packageConnection String
MySQLpip install mysqlclientmysql://<UserName>:<DBPassword>@<Database Host>/<Database Name>

我在自己的环境,选择了PyMySQL作为Mysql驱动,这也是我比较常用的连接包。

pip install PyMySQL

需要注意:如果按照官方文档,安装了mysqlclient的包,superset不会显示mysql的选项,因为mysqlclient不支持python3,而我的运行环境是python3,所以我这里换成了PyMySQL

  • 第2步:配置Mysql连接

安装完Python的Mysql驱动连接包之后,重启Superset(启动命令可以看上一篇博客《Superset——安装》,登录系统后,打开“数据”tab下的“数据库”界面,点击右上角的“添加数据库“按钮,在弹出的连接数据库配置页面,就可以看到新增加的Mysql选项。

点击选择“MySql“,在DISPLAY NAME中输入别名,在SQLAlchemy URI中按照固定格式输入你要连接的数据库的URI。

我的环境已经准备了一个testdb的数据库(用户testuser,密码123456),所以,我的URI为:

mysql+pymysql://testuser:123456@127.0.0.1:3306/testdb

填入SQLAlchemy URI,可以点击“测试连接”按钮,如果系统弹框提示“连接测试成功!”,则说明配置没有问题。

然后,点击“CONNECT“即可完成MySql数据库的连接配置,我们可以在“数据”tab下的“数据库”界面看到我们刚刚新建的数据库连接了。

注意:Superset主要是用来做BI数据分析和展示的,当大家在正式环境使用的时候,建议大家建立一个单独的只读账号给Superset连接使用,避免数据库操作错误的出现。

至此,Superset配置数据库连接的介绍就结束了,下一篇章节我们会开始介绍“数据集”的概念。

Superset数据库驱动和配置

Superset数据库驱动和配置open in new window

Last Updated:
Contributors: 小5