具有Docker的超集无法添加到外部mysql的连接
我是Ubuntu的新手,我正在尝试安装具有Docker的超集无法添加到外部mysql的连接,docker,superset,Docker,Superset,我是Ubuntu的新手,我正在尝试安装apache超集,并通过直接sudo-Docker-pull-apache/supset使用Docker成功地安装了它,但我一直在为运行的超集添加数据库连接器 至于我的本地数据库,我正在使用MySQL,我碰巧在localhost中使用SSH隧道在服务器中访问它。所以我认为从Docker容器的角度来看,这一定是一个“外部”数据库 我所尝试的: 我从pip3安装了mysqlclient 通过以下引用: 我试图键入:sudocker run-it mysql-h
apache超集
,并通过直接sudo-Docker-pull-apache/supset
使用Docker成功地安装了它,但我一直在为运行的超集添加数据库连接器
至于我的本地数据库,我正在使用MySQL,我碰巧在localhost中使用SSH隧道在服务器中访问它。所以我认为从Docker容器的角度来看,这一定是一个“外部”数据库
我所尝试的:
mysqlclient
sudocker run-it mysql-h 192.168.100.1-p 33063-u czjovan--password=mypw cz\u payment\u merged
,但我得到了:
2021-03-04 11:34:53+00:00 [Note] [Entrypoint]: Entrypoint script for MySQL Server 8.0.23-1debian10 started.
2021-03-04 11:34:53+00:00 [ERROR] [Entrypoint]: mysqld failed while attempting to check config
command was: mysqld -h 192.168.100.1 -P 33063 -u czjovan --password=mypw cz_payment_merged --verbose --help --log-bin-index=/tmp/tmp.EV6L0jrspQ
2021-03-04T11:34:53.402148Z 0 [ERROR] [MY-010124] [Server] Fatal error: Can't change to run as user 'czjovan' ; Please check that the user exists!
2021-03-04T11:34:53.403355Z 0 [ERROR] [MY-010119] [Server] Aborting
sudo docker run--rm it--network=host mysql mysql-h 127.0.0.1
但出现错误2003(hy000)无法连接到127.0.0.1上的mysql服务器
-p 3306:3306
之后,mysql容器现在启动
但我仍然无法在超集中添加数据库,接下来该怎么做
在mysql容器启动期间,您需要定义user和pass as环境来创建新用户。可能问题在于用户和pass
MYSQL\u用户,MYSQL\u密码
也就是说,在docker运行时,您并没有公开3306端口。请使用-p3306:3306
在mysql容器启动期间,您需要定义用户并传递为环境来创建新用户。可能问题在于用户和passMYSQL\u用户,MYSQL\u密码
也就是说,在docker运行时,您并没有公开3306端口。请使用-p 3306:3306
我发现从头开始手动安装超集比使用Docker容器中的超集更适合我,因为手动配置Docker中的超集可能有点麻烦,我所做的:
#--从头开始在本地安装Superset和MySQL---#
sudopip安装apache超集
(sudo apt安装mysql-client-core-8.0
sudo apt安装mysql服务器
sudo pip安装mysqlclient
(用于超集数据库连接器)'superset'
的包,在我的例子中,我卸载了这个包以确保只使用apache superset
服务mysql启动
mysql-u root-p
,输入一个创建的密码
如果能正常进入mysql,密码设置成功
usr/local/lib/python3.8/dist-packages/superset/config.py
(这取决于从1号开始的pip安装)
mysql://(服务器\用户):(服务器\密码)@127.0.0.1:33063/(数据库\名称)
(这在本地MySQL之外)
B) 面向本地安装的MySQL
'mysql://root:rootpwd@127.0.0.1:3306/database_name'
我发现从头开始手动安装超集比使用Docker容器中的超集更适合我,因为手动配置Docker中的超集可能有点麻烦,我做了以下工作:
#--从头开始在本地安装Superset和MySQL---#
sudopip安装apache超集
(sudo apt安装mysql-client-core-8.0
sudo apt安装mysql服务器
sudo pip安装mysqlclient
(用于超集数据库连接器)'superset'
的包,在我的例子中,我卸载了这个包以确保只使用apache superset
服务mysql启动
mysql-u root-p
,输入一个创建的密码
如果能正常进入mysql,密码设置成功
usr/local/lib/python3.8/dist-packages/superset/config.py
(这取决于从1号开始的pip安装)