借本次数据库迁移实践,再次总结一下MySQL数据库迁移到PXC的最佳操作路径。 1、源数据库配置 xtrabackup 工具,快速备份源数据到nfs; 2、目的数据库集群配置最新版本的 MySQL PXC 集群软件; 3、目的数据库集群节点 node1 采用 xtrabackup 导入备份数据; 4、使用合适的配置文件在 node1 拉起数据库; 5、node2 加入集群,node3 加入集群。 以上1、2步比较简单,在此略过,以下强调后面的步骤,请项目参考使用。 三、node1 导入备份数据 ■ 准备数据路径 m…

2023年11月10日 0条评论 1613点热度 0人点赞 liking 阅读全文

首先说一下这个3节点MongoDB集群各个维度的数据规模: 1、dataSize: 1.9T 2、storageSize: 600G 3、全量备份-加压缩开关:186G,耗时 8h 4、全量备份-不加压缩开关:1.8T,耗时 4h27m 具体导出的语法比较简单,此处不再赘述,本文重点描述导入的优化过程,最后给出导入的最佳实践。 ■ 2023-09-13T20:00 第1次4并发导入测试 mongorestore --port=20000 -uadmin -p'passwd' --authenti…

2023年10月8日 0条评论 1144点热度 0人点赞 liking 阅读全文

MongoDB一个广为诟病的问题是,大量数据resotore时索引重建非常缓慢,实测5000万的集合如果有3个以上的索引需要恢复,几乎没法成功,而且resotore时如果选择创建索引也会存在索引不生效的问题,种种情况表明,MongoDB的一些默认设置存在明显不合理之处。 当然,深入理解后总会有办法解决这些问题,MongoDB发展到金,功能也是越来全面。 一、对于小数据量collection,可直接单命令行创建索引 类似如下操作: db.getCollection('processDataObj').createIn…

2023年10月8日 0条评论 1114点热度 0人点赞 liking 阅读全文

MySQL不同于oracle,没有闪回查询这类概念,但网上流传几个闪回的开源工具如 binglog2sql、MyFlash,可以使用binglog日志进行误操作数据的恢复。 笔者以前测试过 binglog2sql,发现安装配置比较复杂不太友好。 本次测试了下 MyFlash 这个开源工具,发现相对简单易用,特此做一个使用记录。 MyFlash是由美团点评公司技术工程部开发维护的一个回滚DML操作的工具。该工具通过解析v4版本的binlog,完成回滚操作。相对已有的回滚工具,其增加了更多的过滤选项,让回滚更加容易。 …

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

为了与MySQL做个对比,做一个PG的数据导入测试,使用COPY方式,测试环境保持一致,具体如下所述。 一、测试环境 ■ 48CPU/376G CPU(s): 48 Thread(s) per core: 2 Core(s) per socket: 12 Socket(s): 2 Model name: Intel(R) Xeon(R) Gold 5118 CPU @ 2.30GHz L1d cache: 32K L1i cache: 32K L2 cache: 1024K L3 cache: 16896K ■ D…

2022年3月2日 0条评论 1370点热度 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条评论 1026点热度 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条评论 1056点热度 2人点赞 liking 阅读全文

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

2022年2月25日 0条评论 1938点热度 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条评论 966点热度 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条评论 1115点热度 0人点赞 liking 阅读全文