superset 连接时遇到的坑

1. 错误1 连接es时出现如下错误:

Traceback (most recent call last):
  File "/usr/local/lib/python3.7/site-packages/elasticsearch/connection/http_urllib3.py", line 252, in perform_request
    method, url, body, retries=Retry(False), headers=request_headers, **kw
  File "/usr/local/lib/python3.7/site-packages/urllib3/connectionpool.py", line 756, in urlopen
    method, url, error=e, _pool=self, _stacktrace=sys.exc_info()[2]
  File "/usr/local/lib/python3.7/site-packages/urllib3/util/retry.py", line 507, in increment
    raise six.reraise(type(error), error, _stacktrace)
  File "/usr/local/lib/python3.7/site-packages/urllib3/packages/six.py", line 734, in reraise
    raise value.with_traceback(tb)
  File "/usr/local/lib/python3.7/site-packages/urllib3/connectionpool.py", line 706, in urlopen
    chunked=chunked,
  File "/usr/local/lib/python3.7/site-packages/urllib3/connectionpool.py", line 382, in _make_request
    self._validate_conn(conn)
  File "/usr/local/lib/python3.7/site-packages/urllib3/connectionpool.py", line 1010, in _validate_conn
    conn.connect()
  File "/usr/local/lib/python3.7/site-packages/urllib3/connection.py", line 421, in connect
    tls_in_tls=tls_in_tls,
  File "/usr/local/lib/python3.7/site-packages/urllib3/util/ssl_.py", line 432, in ssl_wrap_socket
    ssl_sock = _ssl_wrap_socket_impl(sock, context, tls_in_tls)
  File "/usr/local/lib/python3.7/site-packages/urllib3/util/ssl_.py", line 474, in _ssl_wrap_socket_impl
    return ssl_context.wrap_socket(sock)
  File "/usr/local/lib/python3.7/ssl.py", line 423, in wrap_socket
    session=session
  File "/usr/local/lib/python3.7/ssl.py", line 870, in _create
    self.do_handshake()
  File "/usr/local/lib/python3.7/ssl.py", line 1139, in do_handshake
    self._sslobj.do_handshake()
urllib3.exceptions.SSLError: [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: self signed certificate in certificate chain (_ssl.c:1091)
DEBUG:elasticsearch:> {"query":"SELECT 1","fetch_size":10000}

解决办法

需要添加 verify_certs=False 参数, url 示例

elasticsearch+http://<user>:<password>@<host>:9200/?verify_certs=False

2. 错误2 连接mysql出现乱码

解决办法
#在连接时加上上编码
charset=utf8

3. 错误三 连接mysql mysqlclient 下载失败

解决办法

pip3 install pymysql
#最后使用的是pymysql 依赖, 使用pymysql 进行
mysql+pymysql://username:password@ip:3306/database?charset=utf8
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
Superset是一个开源的数据可视化和探索平台,它可以连接多种数据源,包括MySQL数据库。下面是连接Superset和MySQL的步骤: 1. 安装Superset:首先,你需要按照Superset的安装指南在你的机器上安装Superset。 2. 配置数据库连接:在Superset的配置文件中,你需要配置MySQL数据库的连接信息。打开Superset的配置文件(一般是superset_config.py),找到`SQLALCHEMY_DATABASE_URI`参数,并将其设置为你的MySQL数据库的连接字符串。连接字符串的格式通常是`mysql://username:password@host:port/database_name`。 3. 初始化数据库:运行Superset的初始化命令,以创建必要的数据库表和数据模型。在命令行中执行以下命令: ``` superset db upgrade ``` 4. 启动Superset:运行Superset的启动命令,以启动Superset服务器。在命令行中执行以下命令: ``` superset runserver ``` 5. 添加MySQL数据源:在Superset的Web界面中,登录到Superset后台管理界面,点击左侧导航栏中的“Sources”选项,然后点击右上角的“+”按钮添加新的数据源。选择MySQL作为数据源类型,并填写MySQL数据库的连接信息。 6. 测试连接:保存数据源配置后,可以点击“Test Connection”按钮来测试与MySQL数据库的连接是否成功。 至此,你已经成功地将Superset连接到了MySQL数据库。你可以使用Superset的数据探索和可视化功能来查询和展示MySQL数据库中的数据。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值