当我尝试在 Windows 上的 Docker 中创建一个两节点 MariaDB 集群时,我收到此错误:
错误 1396 (HY000) 在第 8 行:操作 CREATE USER 失败 'root'@'%'
对于我运行的第一个节点
docker run --network maria_db --name maria-0 -e MYSQL_INITDB_SKIP_TZINFO=yes -e MYSQL_ALLOW_EMPTY_PASSWORD=yes mariadb --wsrep-new-cluster --wsrep_cluster_address=gcomm://maria-0,maria-1 --binlog-format =ROW --wsrep-on=1 --wsrep-provider=/usr/lib/galera/libgalera_smm.so
等到它准备好连接,然后我打开一个新终端并运行它:
docker run --network maria_db --name maria-1 -e MYSQL_INITDB_SKIP_TZINFO=yes -e MYSQL_ALLOW_EMPTY_PASSWORD=yes mariadb --wsrep_cluster_address=gcomm://maria-0,maria-1 --binlog-format=ROW --wsrep-on =1 --wsrep-provider=/usr/lib/galera/libgalera_smm.so
我试图设置一个 root 密码,但我得到了相同的输出。
节点二的日志非常大,所以我创建了一个 pastebin:https ://pastebin.com/dp85mpPg 。我试图在这个问题中嵌入这个日志,但如果没有换行似乎是不可能的。
我真的不知道是什么原因造成的,但看起来图像在同步数据库后试图在节点 2 上重新创建数据库?我不知道。这对我来说是新的,
希望有人知道该怎么做。
作为我称之为堆栈的东西的一部分,我自己完成了,https://github.com/mslot/stack。构建 Maria 数据库映像。它使用领事作为发现工具。