我参照github polardbx-sql里的quickstart-how-to-debug-cn.md文件,使用docker启动最新版本polardbx/polardb-x的开发环境。但之后使用root账户连接mysql获取metaDbPasswd被拒绝。polardbx/polardb-x:2.0.1版本是可以正常获取密码的。请问是我忽略了什么问题,还是最新版本已不再适用?是否有解决办法?谢谢大家?
第一个图是在容器内的。第二个图里第二个容器是最新版本的,映射是和启动时指定的一致
我参照github polardbx-sql里的请问是我忽略了什么问题,还是最新版本已不再适用?是否[阿里云PolarDB]
「点点赞赏,手留余香」
还没有人赞赏,快来当第一个赞赏的人吧!
使用root账户连接mysql获取metaDbPasswd被拒绝 这个报错能发下吗,容器里 ps -ef 看下 mysqld 进程起来了没有,顺便看下 docker ps -a 的端口映射情况呢https://github.com/polardb/polardbx/tree/main/docker#%E5%9C%BA%E6%99%AF3-%E5%9F%BA%E4%BA%8E-polardbx-sql-%E8%BF%9B%E8%A1%8C%E5%BC%80%E5%8F%91可以参考下这个文档呢,在容器内可以 mysql -h127.1 -P4886 -uroot 连进去,不需要密码的,此回答整理自钉群“阿里云 PolarDB-X 开源交流群”
可能是新版本的
polardbx/polardb-x
没有启动metad
服务。同时注意到你在/etc/my.cnf
里配置了datadir=/var/lib/mysql
, 但是输入命令后的报错信息的路径是/mydata/polarx/node/mysql/data
。因此,建议按以下步骤排查:
首先检查一下你是否启动了
metad
服务。可以使用 docker logs 查看polardbx-meta
容器内的日志信息来排查。如果确实启动了
metad
服务,可以尝试将/etc/my.cnf
中的datadir=/var/lib/mysql
改为datadir=/mydata/polarx/node/mysql/data
,然后重启polardbx/polardb-x
容器,看一下是否能够正常获取metaDbPasswd
。如果以上办法都不行,可以再看看之前启动的
polardbx/polardb-x:2.0.1
版本容器,看一下在这个版本的容器中/etc/my.cnf
的配置是怎么写的。以及这个版本的容器内metad
服务是否启动了。这些信息可以帮助你排查问题。