superset 性能优化1-已经使用中的superset更改默认数据源sqlite到mysql

41次阅读

共计 861 个字符,预计需要花费 3 分钟才能阅读完成。

已经使用中的 superset 更改默认数据源 sqlite 到 mysql
1. 提取 sqlite db(由于当前使用 docker 需要到宿主)docker cp CONTAINER_NAME:/var/lib/superset/superset.db /opt
2. 数据导出然后使用 navicat 数据库工具打开 sqlite 文件选择导出向导 csv 数据保存到一个文件夹
3. 创建 mysql 数据库与账号
4. 安装 superset python mysql 支持 修改 superset 数据库 config(这个网上很多配置)
5. 然后使用 superset db upgrade 初始化 mysql 数据表结构 (如果直接导入 sqlite 导出的 csv 字段默认都是 varchar255,这个会有问题)
6. 更改数据表,删除全部数据表外键(删除外键是我这边的做法,具体自己可以优化,这里建议暂停 superset 来操作会快些)
7. 更改部分报错类型 Incorrect datetime value: ‘0000-00-00 00:53:00’ for column ‘last_login’ at row 1[ERR] INSERT INTO new_superset.ab_user
删除 ab_user.cvs last_login created_on changed_on 数据同时 ab_user 表更改 last_login,created_on,changed_on 字段类型为 timestamp(6)
1406 – Data too long for column ‘sql’ at row 1[ERR] INSERT INTO new_superset.queryquery 表更改 sql,’executed_sql’ 字段类型 longtext
1062 – Duplicate entry ‘[impala].[dw]’ for key ‘name'[ERR] INSERT INTO new_superset.`ab_view_menu 删除唯一索引
dbs.password 如果乱码需要删除,不然打开数据源页面会报错
8. 使用 navicat 导入向导导入 csv 数据到 mysql

正文完
 0