开发环境搭建步骤
建议使用 mac 和 ubuntu 系统,同事刚开始使用 windows 安装,过程中遇到很多问题,临时改用 ubuntu 系统,本文适用 mac 和 ubuntu 系统。
1.github 获取代码及安装需要的 python 包
https://github.com/getredash/… 以下安装过程使用 master 分支作为开发环境版本,release/6.0.x 也适用。
2. 修改 Python 解释器版本
redash 适用 python2.7 开发。
3. 创建 application
4. 创建数据库并建表
本地安装 pgsql 并创建数据库,安装 pgsql 的过程此处省略,可以百度查下。
修改 redash 下面 settings/__init__.py 数据库连接信息
Terminal 运行表创建语句
./manage.py database create_tables
5. 本地安装 redis
过程读者可以百度查下,本地安装 redis 之后 redash 关于 redis 的配置不需要修改。
6. 打包前端
Terminal 运行 npm install,install 完成后运行运行 npm run watch 或者运行 npm run build
7.Terminal 运行命令启动 celery
celery 如果不启动,在查询 sql 的时候,查询会一直处于等待状态。
celery worker –app=redash.worker –beat -Qscheduled_queries,queries,celery -c2
启动成功后显示如下:
8. 运行 application
完成注册之后浏览 data source
笔者在 data source 遇到个问题,安装完之后仅显示部分数据源,没有 mysql,hive 等。经排查发现 mysqldb,hive 模块引入失败
运行 pip install MySQLdb 报如下错误 Could not find a version that satisfies the requirement MySQLdb (from versions:)No matching distribution found for MySQLdb
可以参考篇文章 https://blog.51cto.com/legeha…Terminal 运行
pip install MySQL-python
成功后显示如下:
笔者运行时本地已安装好 mysql, 同事使用 Ubuntu,遇到了文章中同样的问题,他本地环境没有安装 mysql, 安装 mysql 之后,运行 pip install MySQL-python,也顺利完成。注意:MySQL-python 安装完成之后需要重启 celery,否则在创建好数据源之后查询的时候会报如下错误:
Error running query: ‘NoneType’ object has no attribute ‘annotate_query’
到此为止,redash 安装成功。