研发人员在测试大事务提交时遇见了错误: Got error 5 - 'Transaction size exceed set threshold' during COMMIT 测试了几次都是1200S的时候停止的,不过在注释掉特定步骤后,过程还是在1200S失去连接了,不知道这个1200S的执行参数是哪个,可能这个1200s的执行参数是关键,因为看 wsrep_max_ws_size 最大提交量是2G,理论上应该是够用的。 通过以下查询方式,也只能查出这个2G的限制: show variable…

2022年6月15日 0条评论 849点热度 1人点赞 liking 阅读全文

在MySQL8.0的一个PXC集群中,默认的sql_mode设置如下: select @@sql_mode; +-----------------------------------------------------------------------------------------------------------------------+ | ONLY_FULL_GROUP_BY,STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIV…

2022年5月13日 0条评论 630点热度 0人点赞 liking 阅读全文

一、PXC方案概述 Percona XtraDB Cluster (PXC) 是一个完全开源的 MySQL 数据库集群解决方案,它可确保高可用性,防止停机和数据丢失,并为不断增长的环境提供线性可扩展性。它将 Percona Server 和 Percona XtraBackup 与 Galera 库集成在一起,以实现同步多源复制。 集群由节点组成,其中每个节点包含在节点间同步的相同数据集。推荐的配置是至少有 3 个节点,也可以有 2 个节点,但不建议使用2个节点。每个节点都是一个常规的 MySQL Server 实…

2022年3月23日 1条评论 3280点热度 3人点赞 liking 阅读全文

一套2节点的MySQL PXC集群,第1节点作为主用节点长时间的dml操作,导致大量的事务阻塞,出现异常,此时查看第2节点显示是primary状态,但无事务阻塞情况。 此时第1节点无法正常提供服务,于是以为第2节点可以作为主节点提供sst数据源来新建第1节点,但清空第1节点开始启动时,却发现无法正常启动sst同步,因为:failed to reach primary view 此时的报错信息详情如下: 2022-03-16T11:28:00.546024Z 0 [ERROR] [MY-000000] [Galera…

2022年3月21日 0条评论 1097点热度 0人点赞 liking 阅读全文

接上文,本次在较高性能的X86物理机上,做真实生产环境的大数据量导入测试。 一、测试环境 ■ CPU是24核,每核2线程,即48CPU $ lscpu Architecture: x86_64 CPU op-mode(s): 32-bit, 64-bit Byte Order: Little Endian CPU(s): 48 On-line CPU(s) list: 0-47 Thread(s) per core: 2 Core(s) per socket: 12 座: 2 NUMA 节点: 2 厂商 ID: G…

2022年2月27日 0条评论 897点热度 0人点赞 liking 阅读全文

接上文,继续测试3000万条记录快速导入数据库。 一、导入前1000万条数据 清库、建库、新建表结构、导入前1000万条数据,结果: ■ 1000万行,有2索引导入耗时:16分钟 Query OK, 9999966 rows affected, 5920 warnings (16 min 12.95 sec) Records: 9999966 Deleted: 0 Skipped: 0 Warnings: 5920 可见,导入千万条数据,性能下降明显。 二、导入前2000万条数据 清库、建库、新建表结构、导入前20…

2022年2月26日 0条评论 923点热度 2人点赞 liking 阅读全文

对于传统的关系数据库如oracle,在大量数据导入方面的效率,我们一般有一个大概的认知,即1分钟以内可以导入千万条数据,而对于MySQL数据库,普遍观点以为性能相对较差,尤其时对于千万级别的数据量,几十分钟、几个小时,都是可能的。是否如此,本文会给出答案。 在普遍去IOE的今天,最难的去O也已经势在必行,所以探讨测试一下MySQL的大数据量导入非常有必要。事实上我们的各个新建项目由于采用了MySQL数据库,在备份恢复时,便会面临大量数据的逻辑导出与导入需求。 恰好笔者手头有一个3000多万行的数据记录,SQL文本格…

2022年2月25日 0条评论 1792点热度 1人点赞 liking 阅读全文

在一个低配MySQL数据库(笔记本电脑虚机环境,虚机配置2CPU/3G内存),在3000万级别的大量数据LOAD DATA方式导入时,坚持一小时后,终于被KO了,甚至没写下任何有用的日志,只是在操作界面报错: ERROR 2013 (HY000): Lost connection to MySQL server during query 再次重启,漫长的半小时时间,遇见这个activating状态: [root@node1:1 ~]# systemctl status mysql ● mysql.service -…

2022年2月25日 0条评论 843点热度 0人点赞 liking 阅读全文

接上文,单节点升级到80版本之后,构建新版本的80集群就水到渠成、相对简单了,详情可参见之前的集群构建博文。 本文在修改配置集群的新参数时,修改了pxc_strict_mode为默认的ENFORCING,注释掉skip_ssl以支持SSL加密同步传输。 donor节点的日志如下: 2021-12-07T12:21:56.351545Z 0 [Note] [MY-000000] [WSREP-SST] Streaming the backup to joiner at 10.124.206.18 4444 2021-…

2021年12月7日 0条评论 981点热度 0人点赞 liking 阅读全文

在升级MySQL版本到8.0的过程中,需要关注sql_mode参数默认值的变化,8.0版本sql_mode不支持 NO_AUTO_CREATE_USER,要避免配置的sql_mode中带有 NO_AUTO_CREATE_USER ■ 57版本原来配置 show variables like '%sql_mode%'; STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE…

2021年12月7日 0条评论 1008点热度 1人点赞 liking 阅读全文