问题标签 [percona-xtradb-cluster]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
9593 浏览

mysql - MYSQL 5.7 Percona XtraDBCluster - 无法启动 MYSQL - Digital Ocean Box

我重新启动了一个数字海洋盒,现在我无法启动 mysql。当我运行启动命令时,我得到:

systemctl status mysql.service 的结果

/var/run/mysqld/ 归 mysql 用户所有 - 但它是空的。如果我添加一个 mysqld.pid 文件,它会在我运行 mysql start 时被删除。

有谁知道为什么重新启动会导致这种情况或给我任何后续步骤。我查看了 mysqld.log 文件,看不到任何有用的东西。这是最后 30 行

我也被告知要尝试: systemctl start mysql@bootstrap 但这会失败并出现相同的错误。这是 journalctl -xe 的结果

ps 辅助|grep mysql

0 投票
1 回答
311 浏览

percona - Debezium 可以与 Percona Server 和/或 Percona XtraDB Cluster 一起使用吗?

作为 MySQL 的“替代品”,我相信相同的 binlog 和复制语义,我假设在 Debezium 文档中的任何地方都说“mysql”,我可以用“percona”(或就此而言 MariaDB)替换它,但我想在我浪费很多时间或遇到意外的陷阱或错误之前进行确认。

0 投票
1 回答
336 浏览

docker - 使用 Percona XtraDB Cluster docker 镜像进行服务发现

我想 使用这个 Docker 映像设置一个 Percona XtraDB 集群。Docker 映像的文档假定使用 etcd 发现服务。

我的问题是:Docker 不附带内置的服务发现(即 DNS 服务器),从而使 etcd 的使用变得多余吗?或者是否存在仍然需要内置服务发现的用例?通常如何将内置服务发现用于多主机设置?

0 投票
2 回答
2364 浏览

mysql - 无法重新启动 MySQL 服务器

我在 Percona Cluster 的一个节点中重新启动了 MySQL 服务器。由于重新启动需要很长时间,我中断了该过程。我尝试再次重新启动 MySQL 服务器。我收到以下错误:

datadir 中过时的 sst_in_progress 文件

我点击了这个链接,https: //www.percona.com/forums/questions-discussions/percona-xtradb-cluster/46846-sql-cluster-issue-need-help-please,并删除了其中提到的 sst_in_progress 文件.

现在,当我尝试重新启动 MySQL 服务器时,我得到了这个:

另一件事是在重新启动期间没有日志被写入 mysql-error.log 文件,因此我无法继续调试。

0 投票
1 回答
689 浏览

mysql - 在 percona xtradb 集群中重置 master


我有两个 pxc 集群,每个集群由 3 个 mysql 服务器组成。
PXC1(node1,node2,node3) 有 db1 和 db2,PXC2(node4,node5,node6) 有 db2 和 db3。
我已经在 pxc1(node1) 和 pxc2(node3) 之间设置了一个基于 gtid 的复制。

现在复制失败了,因为 master(pxc1) 已经清除了 pxc2 所需的 gtid。我浏览了许多博客和论坛。每个人都建议在 slave 中运行命令 reset master 后更改 gtid_purged 的​​值。

但是,在 pxc 集群中,不允许重置 master。是否有任何解决方案来修复复制。

0 投票
1 回答
270 浏览

percona-xtradb-cluster - 跨数据中心的 PXC 集群

我对 PXC 很陌生。我想知道我是否可以跨三个数据中心部署一个集群。例如:

  • A数据中心节点1
  • B数据中心节点2
  • C数据中心节点3

1数据中心和数据中心之间的延迟2很低,因为它们在同一个城市。数据中心3离他们很远。

  • A并且B都提供写入和读取
  • C只有一个完整的备份和投票AB决定哪一个是捐赠者,从不提供写入或读取。

  • AB

  • CA与和异步B

而捐赠者只能是Aor B。我怎样才能以这种方式配置它?

0 投票
2 回答
86 浏览

docker - 重新启动 docker 守护进程时,如何在 docker 服务中复制容器?

我使用以下命令为具有 3 个副本的图像percona XtraDB 集群创建了 docker 服务

我已经用三台机器(以 mach1、mach2、mach3 命名)初始化了 docker swarm,并且都作为管理器加入。并且副本平均分配到三台机器中的每一台机器上

当我试图在mach2中停止 docker 守护进程时,docker 在mach3中又创建了一个副本容器。我再次重新启动了 docker 守护进程,mach3仍在运行两个副本,而mach2上什么也没有。我手动删除了mach3中的容器,并且mach2与第三个副本一起使用

我应该怎么做才能在重新启动的 docker 机器上自动复制容器?

0 投票
2 回答
921 浏览

mysql - 主-主复制 [Percona]

请原谅我的无知,但我没有大量的 MySQL 经验。我是一名网络开发人员,但总的来说,我几乎刚刚安装了 MySQL 或启动了一个 RDS 实例,连接到它,一切正常。但是,我目前的任务是为我们的主服务器创建一个完整的备份(本质上是通过负载平衡器等实现高可用性)。所以我认为现在可能是改变我的 MySQL 设置以利用 2 台服务器的好时机。目前,我们的 MySQL 存在于我们的主服务器上,并且现在可能会保持这种状态,但是我对这个新设置的目标是拥有 2 台相同的服务器,它们都运行应用程序并且都具有完全相同的 MySQL 数据结构/数据。我希望能够在一台服务器上打开 Web 应用程序,进行更改,

从我的研究来看,我想要的似乎是“Master-Master Replication”,但似乎这是一种更旧/更过时的方法?我读的每一篇文章都是从 ~2010-2012 开始的,大多数人都说它已经贬值了,我应该使用 Percona XtraDB Cluster、MySQL Group Replication 或 Galera Cluster 等。我基本上不知道这意味着什么,我正在寻找让 Master-Master 类型设置工作的最简单方法。最重要的是,即使我想使用常规的 Master-Master 复制,这似乎是 MySQL 特有的东西,而不是我实际使用的 Percona。

我对开发操作了解很多,并且可以立即启动并运行除 MySQL 之外的所有内容,但我希望了解有关执行此操作的最佳方法的一些见解。目前服务器运行 Centos 7、Percona 5.7、Apache 2.4。

0 投票
4 回答
332 浏览

mysql - MySql 查询不使用索引集

最近我们将一个数据库从 MariaDB 10.2 切换到 Percona Server (Mysql 5.7),我们有一个查询大约需要 15 秒(之前大约是 0.5),因为查询优化器没有使用主表上的任何索引。因为app逻辑,我们不能改变查询格式,需要让DB使用索引。

查询结构很简单:

我可以更改任何索引,但是,我不能更改查询。在旧主机上,它在 0.2 秒内运行,但是,它使用客户端表中的索引的优化器。使用 Percona Server (mysql 5.7) 需要 15 秒。优化器没有使用客户表中的任何索引。使用来自客户表的 FORCE INCEX() 不到 1 秒(复合索引在大约 0.2 秒内进行)。表“提供者”只有 1 行。我已经在“客户”表上设置了索引,但是,在解释中它们没有显示为可能的键。

我试图将 MySql 变量 'max_seeks_for_key' 设置为 1,但是,它仍然没有使用索引。

我认为我缺少一些基本的东西,但我不知道是什么。

这个查询的解释是:

在此处输入图像描述

ORDER BY 正在生成 TEMPORARY TABLE 并且正在使用所有资源(即使没有 INDEX,也没有 order by 在不到一秒的时间内运行)。

任何想法都值得赞赏。

0 投票
2 回答
1316 浏览

mysql - 在数据库集群前使用 proxysql 时是否需要复制用户凭据?

我已经在一个网络上建立了一个 Percona Xtradb 集群,该集群有 5 个节点,该网络也有一个 ProxySQL 服务器。我有 ProxySQL 工作,我可以在端口 6032 上登录管理界面并管理它,我也可以通过端口 6033 登录,连接到集群。

问题(至少在我看来)是我只能通过在 proxysql 级别复制集群的用户/通行证来通过代理到集群(端口 6033)。

我原以为有某种方法可以让凭据简单地通过代理传递到集群,或者至少有其他方法不必为这些连接存储用户/通过两点。

这完全是设计使然吗,我只是希望由于安全/实践等充分理由而不存在的东西,或者是否有某种方法可以改进此设置,而不必告诉 ProxySQL 我曾经需要的每个数据库用户访问集群数据库?