我们目前有一个使用InnoDB表使用MySQL 5.5的数据库。 作为一个评估,我已经build立了MySQL Cluster(7.3),MySQL(5.6)有2个数据节点,2个SQL节点和1个Mgm节点; 所有在不同的机器上。 现在所有的表都使用NDB(ndbcluster)而不是InnoDB。 最初的目的是为分布式系统提供冗余,可以在全球范围内有效地提供数据。 但是,效率(性能)受到很大影响。 我错误地认为多表查询将会在性能上接近InnoDB吗?
我有两个MySQL集群,它们之间有Master-Master复制设置。 大多数表是基于日志的,只有插入和select,所以它们在复制时没有任何问题。 但是,我有几张表格,它们保存了实时系统的当前“状态”信息。 这些表中的条目被更新,并且具有显示其最后更新的时间戳字段。 当复制中断时,这两个群集可能正在写入相同的行。 是否有可能让复制保留具有最新更新列的logging? 如果不是(我的研究显示它不可能),我可以用什么解决scheme呢?
给定MySQL的当前数据库级高可用性选项(如Master-Master,Cluster或Galera)与运行MySQL主机的机器的vSphere HA之间的select,您将使用或组合为什么?
我们有4个Redhat盒Dell PowerEdge R630(比如a,b,c,d),它们具有以下操作系统/软件包。 RedHat EL 6.5 MySql Enterprise 5.6 DRBD 8.4 Corosync 1.4.7 我们已经设置了4路堆叠的drbd资源,如下所示: 群集群集-1:服务器a和b互相连接本地局域网群集群集-2:服务器c和d 群集群集1和群集2通过虚拟IP通过堆叠的drbd连接,是不同数据中心的一部分。 drbd0磁盘已在每个服务器1GB本地创build,并且还连接到drbd10。 整体设置由4层组成:Tomcat前端应用程序 – > rabbitmq – > memcache – > mysql / drbd 我们正在经历很高的磁盘IO,甚至到现在还没有活动。 但交通/活动会在几个星期内增加,所以我们担心会对业绩造成非常不好的影响。 I / O Useage仅在堆叠的站点(有时为90%及以上)上走高。 二级站点没有这个问题。当应用程序是理想的时候使用率会很高。 所以,请分享一些build议/调整指导方针,以帮助我们解决问题。 resource clusterdb { protocol C; handlers { pri-on-incon-degr "/usr/lib/drbd/notify-pri-on-incon-degr.sh; /usr/lib/drbd/notifyemergency-reboot.sh; echo b > /proc/sysrq-trigger ; reboot -f"; pri-lost-after-sb […]
我有一个重写应用程序。 应用程序与调查相比是最好的 – 客户创build自定义问卷并将其保存到数据库。 大部分请求来自用户提交这些表单。 稍后,我们的客户会对这些提交内容进行复杂的报告和图表。 确保我们的应用程序服务器(PHP)和networking服务器(Nginx)可以轻松扩展,麻烦的是将数据库服务器扩展到多个服务器上。 很多应用程序的读取比较繁琐,所以通常情况下,您将拥有一个主从复制设置,其中所有写入操作都将转到单个主节点,但是会将读取操作分配给从节点。 对我们来说,这是行不通的,因为我们大部分时间都是在写文章。 我已经看到提到一个主 – 主设置,但是这通常会遇到与自动递增的主键的障碍。 解决scheme通常是有一个服务器做奇数,而另一个做平衡。 我想避免这一点。 在一些类似的问题上,我已经提到了钨复制器,以及它如何为复制提供更多的灵活性。 这会帮助我吗? 这会给我MySQL的内置复制无法提供什么样的好处? 还有MySQL簇,但是这通常会遇到非常大的数据库和复杂的查询(连接)的问题。 我需要能够运行复杂的报告,所以这可能不适合我。 我正在寻找冗余,自动故障转移,分配请求和数据完整性。 还有其他RDMS提供更适合networking的更好的解决scheme吗?
即使通过unix套接字文件(CentOS 6.3)连接,我也遇到了连接/login到加载的mysql服务器的问题。 在这种情况下查询很快完成 – (0.00 sec) – 但login需要几秒钟的时间,在这种情况下: real 0m3.128s user 0m0.010s sys 0m0.011s mysqld正在运行skip-name-resolve和一个thread_cache_size这样在这个问题中就不会创build新的线程。 这是一个基于负载的问题 ,即服务器空闲时login非常快。 服务器在强大的硬件上每秒处理大约60个连接和300个查询,所以它没有得到充分利用。 这里是它的摊位的部分,用空行注明。 我假设在read(失速read(意味着它正在等待来自服务器的响应: $ time strace mysql -e 'select 1' […] read(3, "# /etc/services:\n# $Id: services"…, 4096) = 4096 read(3, "ervice\nfinger 79/tcp\nfi"…, 4096) = 4096 read(3, " 209/udp "…, 4096) = 4096 read(3, "a-cluster 694/tcp "…, 4096) = […]
我试图启用故障转移策略,在两台运行由VritualBox创build的openSUSE 12的虚拟机上进行mysql Master-Master复制时使用pacemaker。 我设法完成MySQL双主复制,它似乎工作。 服务器A的IP为192.168.Xb ,服务器B的IP为192.168.Xb 我遵循这里的指令,所以基本上我的corosync.conf看起来像指南中介绍的,除了下面写的接口部分: interface { ringnumber: 0 bindnetaddr: 192.168.Xc mcastaddr: 226.94.1.1 mcastport: 5405 ttl: 1 } 我的第一个问题是:什么是bindnetaddr: 它是我的群集的虚拟IP吗? 如果不是,它应该是其他节点的IP还是它自己的IP? (我的意思是服务器的IP有这个configuration或其他服务器) 我的第二个问题是:什么是mcastaddr和mcastport ,他们应该设置什么? 然后我尝试添加MySQL作为资源,所以我按照这里所述做了 。 但是当我inputcrm configure primitive ip_mysql ocf:heartbeat:IPaddr2 params ip="192.168.Xc"我得到 crm configure primitive ip_my ocf:heartbeat:IPaddr2 params ip='192.168.114.8' crm_verify[23888]: 2012/12/29_12:25:51 WARN: cluster_option: Using deprecated name 'stonith_enabled' for cluster option 'stonith-enabled' Warnings […]
我想多家一个专有的基于Web的应用程序,为一个相对较小的用户群,数据库大小适中。 可伸缩性不像极高的可用性那么重要。 该系统具有非常基本的架构:运行在单个Linux VPS上的PHP攻击标准MySQL服务器。 我正在考虑在不同地理位置的数据中心中使用多个VPS,这样如果用户连接到一个服务器位置时遇到问题,他们可以尝试另一个位置(我有关于如何半自动化故障转移和可能地理位置的单独想法,但这是另一个问题)。 PHP应用程序代码和其他文件将被rsynced; 然而,我还没有解决如何同步数据库…这是合理的使用MySQL群集呢? 如果一个节点发生故障,其他节点必须继续工作。 当节点恢复时,它应该自动恢复同步。 考虑到数据中心之间将存在WANtypes的延迟,写入速度不能依赖于群集内连接。 数据一致性是可取的,但不是首要的优先事项。 系统的简单性很重要 – 我不能花费下一个月的时间来计算数据库的细微差别。 如果MySQL Cluster不适合这个,那么还有什么其他的select可以考虑?
我有一个ndbmtd进程的问题。 当我使用以下configuration时,我预计Intel(R)Pentium(R)CPU G6950 @ 2.80GHz的服务器上的内核都将被充分利用。 不幸的是,这并没有发生。 只使用id = 0的核心。 第二个没有负载。 我的configuration: [ndbd default] MaxNoOfExecutionThreads=2 [ndbd] HostName=192.168.1.4 NodeId=3 LockExecuteThreadToCPU=0,1 LockMaintThreadsToCPU=0 mpstat -P ALL 08:47:09 AM CPU %user %nice %system %iowait %steal %idle 08:47:11 AM all 44.64 0.00 1.75 1.25 0.00 52.37 08:47:11 AM 0 89.45 0.00 1.01 2.01 0.00 7.54 08:47:11 AM 1 0.99 0.00 1.98 […]
两者之间有什么优点和缺点? 我只能find关于这两个实现的信息,没有任何关于集群的细节。 我目前正在实施Percona集群,但目前我唯一关心的是与MYISAM数据库进行复制。 我在这些服务器上的INNODB中运行了几个WordPress数据库,但是当我需要从其他系统迁移数据库时,它们有时是完全或部分MYISAM,这对我的设置最近造成了一些问题。 从一个Percona集群转移到一个MariaDB集群是一个更好的select?