Articles of percona

更新Percona服务器时出错

我得到percona-server-5.5的常规aptitude安全升级的错误,我已经运行percona服务器5.5版本 Setting up libmysqlclient18 (5.5.20-rel24.1-217.squeeze) … Setting up percona-server-common-5.5 (5.5.20-rel24.1-217.squeeze) … Setting up percona-server-client-5.5 (5.5.20-rel24.1-217.squeeze) … Setting up percona-server-client (5.5.20-rel24.1-217.squeeze) … Setting up percona-server-server-5.5 (5.5.20-rel24.1-217.squeeze) … Stopping MySQL (Percona Server): mysqld. /var/lib/dpkg/info/percona-server-server-5.5.postinst: line 63: 30956 Done echo "$replace_query" 30957 Killed | $MYSQL_BOOTSTRAP 2>&1 30958 Killed | $ERR_LOGGER dpkg: error processing percona-server-server-5.5 (–configure): subprocess installed post-installation […]

Percona XtraDB群集上的重复性locking和减速

Percona XtraDB集群configuration了5台专用服务器(相同的机器:32个内核,96GB RAM,RAID中的SSD驱动器和千兆以太网链路)。 有一个反复出现的问题,导致群集的严重下降通常约30到60秒,但有时会被卡住达5-10分钟。 该系统用于繁忙的网站networking,我使用每个networking服务器上的mysql-proxy来负载均衡stream量到数据库。 如果仅启用一个节点,则问题不存在。 每增加一个节点,问题就会增加(查询放慢/locking的时间),直到4个节点处于活动状态(此时群集不能自动恢复)变得非常难以忍受。 以下是详细的症状: 每5到15分钟,所有的写入查询(INSERTs / UPDATEs)都会卡在每个节点的队列中。 一些查询在45-50秒之后发送,而另一些则完全停顿。 大多数情况下,在30到60秒之后,集群能够以某种方式赶上,并在1-2秒内迅速发送查询。 有时候,集群不能自动处理这些卡住的查询,我需要手动禁用最繁忙的网站,以便降低负载,在没有负载的30秒后,集群再次能够发送所有查询。 错误日志通常是干净的,在发生减速之前或之后没有错误消息。 我很less得到这样的东西(可能是10次中的1次): 130906 9:53:27 [注意] WSREP:(3f3abd42-15bc-11e3-b38b-2e049b972e3b,'tcp://0.0.0.0:4567')转向消息中继请求,nonlive peers:tcp:// IPOFONEOFTHENODES 130906 9:53:27 WSREP:(3f3abd42-15bc-11e3-b38b-2e049b972e3b,'tcp://0.0.0.0:4567')将消息中继请求closures 在正常的负载下,我通常会有大约400的wsrep_cert_deps_distance。 一旦减速开始wsrep_cert_deps_distance慢慢增加,直到2k-3k范围(当它达到3k标记我需要手动禁用应用程序或集群不能自行恢复) 用mytop和atop监视我注意到在服务器或mysql进程中没有高负载。 在正常运行和减速期间,CPU使用率总是相当低(约为最大值的25%)。 I / O使用情况良好,充足的RAM免费,vmcom的限制下。 我使用myq_status来实时监控每个节点上的集群,这就是发生了什么事情: 即使发生减速,wsrep_flow_control_pausedvariables始终为0.0。 没有发生wsrep_local_bf_aborts或wsrep_local_cert_failures。 在每个节点上,出站复制通常为0,并在发生减速时增加到200-300。 入站复制在每个节点上始终为0(很less为1,但即使在正常负载下也是如此)。 这让我感到困惑,因为显然在集群中没有缓慢的节点。 从减速开始10-15秒之后,发送和接收的操作和字节在每个节点上变为0。 他们停留在0一两秒钟,然后增加的操作和字节在下一秒发生,再加上大量的“oooe”操作(乱序执行),每隔几秒重复一次,直到服务器返回正常。 以下是我执行的testing的详细信息,以尝试解决问题(没有任何运气…): 我首先检查了networking:服务器与专用千兆networking在同一个机架上,一切似乎都正常,没有丢包或其他明显的networking问题。 我检查了带宽使用情况:每个节点平均使用30到100mbps(兆字节)的带宽。 我使用“iftop”实时检查,发生问题时带宽使用率通常低于平均水平(15至30mbps)。 同步节点带宽高达800-900mbps(因为它应该是),所以我不认为networking饱和。 我尝试了所有节点的组合,以确保一个特定的节点影响到其他所有事物:无论我禁用或使用哪个节点,问题始终存在。 问题总是与同时活动的节点数量有关。 有没有人遇到类似的问题? 提前致谢!

如何在自定义前缀下安装jemalloc来编译MySQL(Percona)?

我的jemalloc安装在/opt/jemalloc ,如何在jemalloc的支持下编译MySQL / Percona? 标准选项是 cmake . -DCMAKE_EXE_LINKER_FLAGS='-ljemalloc' -DWITH_SAFEMALLOC=OFF 但是我的情况如何,因为他们在自定义path?

mysqladmin没有等待完全closures(或debian的init.d脚本坏了?)

我运行Percona MySQL服务器5.6(从软件包)在debian wheezy(相同的行为在杰西)。 不幸的是我总是得到这个: # service mysql stop [FAIL] Stopping MySQL (Percona Server): mysqld failed! 我可以说我的configuration /etc/init.d/mysql是不变的 /etc/mysql/debian.cnf包含debian-sys-maint的有效和工作(testing)证书 我仔细研究了一下init脚本,得出这个问题似乎是mysqladmin的结论。 初始化脚本调用 mysqladmin –defaults-file=/etc/mysql/debian.cnf shutdown 在mysqladmin返回之后,它检查服务器是否被正确closures。 现在这似乎是问题: mysqladmin返回之前,它已经完全closures,然后检查过早,它仍在运行。 我也在观察这些日志文件。 我的发现: 2017-01-05 00:18:49 12595 [Note] InnoDB: Starting shutdown… 2017-01-05 00:18:49 7f70e4df7700 InnoDB: Dumping buffer pool(s) to .//ib_buffer_pool 2017-01-05 00:18:49 7f70e4df7700 InnoDB: Buffer pool(s) dump completed at 170105 0:18:49 […]

Percona:写通信数据包时出错

自从几天以来,我们的两个php应用程序(symfony2)在mysql-logs中报告了以下错误: [Warning] Aborted connection 253 to db: '$appname' user: '$appname' host: 'localhost' (Got an error writing communication packets) 一两页不会渲染并返回一个空白的503错误,网站的其余部分工作正常。 奇怪的是,这个问题几天前在一台服务器上启动,今天早上又有一台服务器受到影响。 Mysql在每台服务器上本地运行,并configuration为使用unix-sockets 这可能是什么原因? 没有对代码或Web应用程序进行configuration更改。 我试过的东西: 将max_allowed_pa​​cket从1M增加到16和64 – >不成功 清理mysqlconfiguration并重置为默认值 – >不成功 增加mysql缓冲区和caching – >没有成功

不能在centos 6.5上安装mysql-devel

我需要在运行Percona 5.5的CentOS 6.5上安装mysql-devel软件包(已安装并正在运行)。 当我尝试像这样安装devel软件包时: yum –enablerepo=remi install mysql-devel 我得到以下错误: Error: Package: mysql-devel-5.5.37-1.el6.remi.i686 (remi) Requires: real-mysql-libs(x86-32) = 5.5.37-1.el6.remi Available: mysql-libs-5.5.36-1.el6.remi.i686 (remi) real-mysql-libs(x86-32) = 5.5.36-1.el6.remi Available: mysql-libs-5.5.37-1.el6.remi.i686 (remi) real-mysql-libs(x86-32) = 5.5.37-1.el6.remi Error: Package: mysql-5.5.37-1.el6.remi.i686 (remi) Requires: real-mysql-libs(x86-32) = 5.5.37-1.el6.remi Available: mysql-libs-5.5.36-1.el6.remi.i686 (remi) real-mysql-libs(x86-32) = 5.5.36-1.el6.remi Available: mysql-libs-5.5.37-1.el6.remi.i686 (remi) real-mysql-libs(x86-32) = 5.5.37-1.el6.remi Error: mysql conflicts with Percona-Server-client-55-5.5.37-rel35.0.el6.i686 以下是我的服务器上目前安装的内容: […]

无法将节点添加到Percona XtraDB群集

在我的情况下,我在群集中有两个节点,但是当我使用$service mysql bootstrap-pxc启动XtraDB群集时,发现节点没有添加到群集中。 我也检查/var/log/mysql/error.log ,但没有发现错误。 以下是问题: mysql> show status like 'wsrep%'; +————————–+———————-+ | Variable_name | Value | +————————–+———————-+ | wsrep_cluster_conf_id | 18446744073709551615 | | wsrep_cluster_size | 0 | | wsrep_cluster_state_uuid | | | wsrep_cluster_status | Disconnected | | wsrep_connected | OFF | | wsrep_local_bf_aborts | 0 | | wsrep_local_index | 18446744073709551615 | | wsrep_provider_name | […]

如何在x86服务器上安装Percona XtraDB集群?

我将从MySQL复制迁移到Percona XtraDB集群 。 我遇到的问题是一个节点正在x86上运行,而且由于问题的解体,我无法从Percona repo安装Percona-XtraDB-Cluster-server : … –> Finished Dependency Resolution 1:Percona-XtraDB-Cluster-server-5.5.27-23.6.356.rhel5.i686 from percona has depsolving problems –> Missing Dependency: Percona-XtraDB-Cluster-galera is needed by package 1:Percona-XtraDB-Cluster-server-5.5.27-23.6.356.rhel5.i686 (percona) Error: Missing Dependency: Percona-XtraDB-Cluster-galera is needed by package 1:Percona-XtraDB-Cluster-server-5.5.27-23.6.356.rhel5.i686 (percona) You could try using –skip-broken to work around the problem You could try running: package-cleanup –problems package-cleanup –dupes […]

我可以在我的桌面上运行Percona xtrabackup吗?

我已经成功地在数据库服务器上运行xtracbackup,但我真的想在另一台机器上运行备份(而不是运行MySQL的机器)。 我尝试运行桌面上的xtrabackup工具给予主机/端口选项,但得到这些错误: InnoDB Backup Utility v1.5.1-xtrabackup; Copyright 2003, 2009 Innobase Oy and Percona LLC and/or its affiliates 2009-2013. All Rights Reserved. This software is published under the GNU GENERAL PUBLIC LICENSE Version 2, June 1991. 150424 16:40:59 innobackupex: Connecting to MySQL server with DSN 'dbi:mysql:;mysql_read_default_group=xtrabackup;host=192.168.33.10;port=3306' as 'vagrant' (using password: YES). 150424 16:40:59 innobackupex: Connected to […]

Percona XtraDB群集节点恢复

我一直在审查XtraDB集群,并使用4个实例在Openstack上创build了一个PoC环境,这在我的弹性testing期间已经下降了。 根据pxc文档: http ://www.percona.com/doc/percona-xtradb-cluster/howtos/virt_sandbox.html其中涵盖了3节点安装,我select了第四。 初始安装完成数据加载testing通过,与所有节点更新同步使用1.6GB的testingsql文件加载数据库。 Failiure和节点的恢复开始,这个testing需要在一个节点上停止mysql服务,创build并随后丢弃一个数据库来testing幸存的节点复制,并且启动被closures的节点来重新同步。 这对节点4,3,2工作正常。 每个pxc文档的Node1本质上是一个控制器,不会重新join集群。 所以我的问题如下: 如果幸存的节点已经写入数据,那么如何返回一个控制器节点来服务 使用4个节点作为参考,有没有办法在node1中消除这个单点故障? (如果一个幸存的节点重新启动,并且控制器(node1)向下/不同步,该节点也将失败)。