使用Navicat生成MySQL测试数据全过程

 更新时间:2025年11月25日 17:02:45   作者:shy好好学习  
本文介绍了如何使用Navicat生成MySQL测试数据,并将其用于测试PostgreSQL数据库的分区表性能,通过Navicat的数据生成工具,可以方便地设置生成数据的条数、格式和类型,并生成多张表的测试数据

使用Navicat生成MySQL测试数据

Navicat版本:16.1.3

场景:

因为某些原因,本人负责项目的数据库需要从MySQL迁移到PostgreSQL,所以就想测试一下PostgreSQL数据库的分区表性能。

测性能的话大概需要两千万的测试数据,从生产库导出的话呢阿里云有限制,因为数据库实例是“自由模式”,每天只能免费导出100W条,想要导出更多的话就得升级实例(得花钱,不可取)。又想到了可以写脚本在服务器上去查询数据然后导出成csv文件再下载到本地,但是这样比较麻烦也就放弃了。

因为不要求数据非常的精确,所以就想到了自己造数据的方式,第一反应当然是通过存储过程,但是呢对于存储过程这种东西吧,只听过,没用过,所以也就不是很精通。

在查询解决方案的过程中呢,就发现了Navicat数据生成工具,下面我来做一个详细的介绍

1.配置测试数据库

CREATE TABLE `user` (
  `id` int NOT NULL AUTO_INCREMENT COMMENT '主键',
  `guid` varchar(255) CHARACTER SET gbk DEFAULT NULL COMMENT '随机id',
  `name` varchar(255) CHARACTER SET gbk DEFAULT NULL COMMENT '姓名',
  `age` int DEFAULT NULL COMMENT '年龄',
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;

2.使用Navicat数据生成工具

可以在数据表中或者Navicat上方的工具栏中找到数据生成工具

3.操作流程

我们以上图中的①为例

1.设置生成数据的条数

点击“数据生成”后,我们点击表名可以设置数据的生成数量

2.设置数据的格式

点击下一步,我们可以根据不同的数据类型,去选择不同的数据生成器,数据生成工具中提供了非常多的生成器来满足我们所需要的数据类型

例如我的guid需要是uuid类型的,那我就可以选择uuid生成器

再比如我可以选择姓名生成器去生成name字段所需要的值

如果我们想要在特定的数据中去随机选择,我们还可以使用枚举类型的生成器

剩下的数据类型可以下来之后自行去研究

4.生成数据

我们对字段配置好之后,就可以点击下一步来预览模拟生成的数据了

点击开始就可以生成数据了

tips:我们在这一步可以对我们刚才所做的配置进行保存,并且可以在下次生成数据的时候直接加载配置好的文件

同时我们也可以在选项中,关闭事务,来提高插入效率

5.总结

Navicat数据生成工具对我们本地生成测试数据非常的友好和便捷,支持广泛的数据类型和同时生成多张表的测试数据,可以极大地减轻程序猿的工作量,方便我们有更多的时间去做其他美好的事情。

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • 详解MYSQL中重命名procedure的一种方法

    详解MYSQL中重命名procedure的一种方法

    这篇文章主要介绍了MYSQL中重命名procedure的一种方法,本文图文并茂给大家介绍的非常详细,具有一定的参考借鉴价值 ,需要的朋友可以参考下
    2019-05-05
  • 浅谈MySQL与redis缓存的同步方案

    浅谈MySQL与redis缓存的同步方案

    这篇文章主要介绍了浅谈MySQL与redis缓存的同步方案,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2021-03-03
  • 如何修改MySQL字符集

    如何修改MySQL字符集

    这篇文章主要介绍了如何修改MySQL字符集,帮助大家更好的理解和使用MySQL数据库,感兴趣的朋友可以了解下
    2020-09-09
  • 如何查看MySQL连接的root密码

    如何查看MySQL连接的root密码

    前几天在用Navicat去连本地的MySQL的时候发现我已经忘了密码了,试了网上很多方式都不行…后来发现其实可以自己直接去看当初设置的密码,下面将方法总结出来分享给大家,有需要的朋友们可以参考借鉴,下面来一起看看吧。
    2017-01-01
  • mysql server is running with the --skip-grant-tables option

    mysql server is running with the --skip-grant-tables option

    今天在mysql中新建数据库提示The MySQL server is running with the --skip-grant-tables option so it cannot execute this statement,原来是数据中配置的--skip-grant-tables,这样安全就降低了,这个一般当忘记root密码的时候需要这样操作
    2017-07-07
  • mysql无法启动服务及其他问题总结

    mysql无法启动服务及其他问题总结

    MySQL无法启动,可能有多种原因导致,本文主要介绍了mysql无法启动服务及其他问题总结,具有一定的参考价值,感兴趣的可以了解一下
    2024-01-01
  • MySQL8.0.26的安装与简化教程(全网最全)

    MySQL8.0.26的安装与简化教程(全网最全)

    MySQL关是一种关系数据库管理系统,所使用的 SQL 语言是用于访问数据库的最常用的标准化语言,今天通过本文给大家分享MySQL8.0.26的安装与简化教程使全网最详细的安装教程,需要的朋友参考下吧
    2021-07-07
  • linux mysql5.5升级至mysql5.7的步骤与踩到的坑

    linux mysql5.5升级至mysql5.7的步骤与踩到的坑

    这篇文章主要介绍了linux mysql5.5升级至mysql5.7的详细步骤,后面脚本之家小编为大家整理了多个补充,大家可以参考一下
    2021-01-01
  • MySQL的分区表使用场景及示例小结

    MySQL的分区表使用场景及示例小结

    MySQL的分区表功能在某些场景下可以显著提高查询效率,本文主要介绍了MySQL的分区表使用场景及示例小结,具有一定的参考价值,感兴趣的可以了解一下
    2024-06-06
  • Mysql如何查看表及字段信息

    Mysql如何查看表及字段信息

    这篇文章主要介绍了Mysql如何查看表及字段信息,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-01-01

最新评论