首页 > 数据库 >Navicat和SQLynx功能比较三(数据导出:使用MySQL近千万数据测试)

Navicat和SQLynx功能比较三(数据导出:使用MySQL近千万数据测试)

时间:2024-06-18 09:33:15浏览次数:29  
标签:数据测试 导出 Navicat 数据量 MySQL NULL 数据 SQLynx

数据导出的功能在数据库管理工具中是最普遍的功能之一。所以数据导出的功能稳定性和性能也是数据库管理工具是否能很好地满足应用需求的一个考虑因素。

目录

1. 整体比较

2. 示例

2.1 前置环境

2.2 Navicat导出

2.3 SQLynx导出

2.4 性能对比结果(690万行数据)

3. 结论


Navicat的产品到目前为止已经超过20年的时间,产品的基础稳定性比较好,但在大数据量导出上容易出现不稳定的因素。SQLynx的产品主要设计是参照大企业客户来完成的,在大数据量的导出上更稳定一些。

1. 整体比较

以下是 SQLynx 和 Navicat 两款工具在数据导出功能上的对比:

功能SQLynxNavicat
支持的导出格式CSV, Excel, JSON, SQLCSV, Excel, JSON, XML, SQL Script, Access, DBF, ODBC
导出步骤通常通过直观的向导进行选择和导出提供详细的导出向导和预设模板,步骤较为全面
自定义导出可以选择具体的表、查询结果进行导出只能对具体的表进行导出
导出数据量亿级几十万级别
用户界面简洁直观,适合快速操作界面友好,提供丰富的导出选项和设置
兼容性适用于多种数据库,包括 MySQL、PostgreSQL、大数据平台和国产数据库 等广泛支持 MySQL、PostgreSQL、SQLite、Oracle、SQL Server 等
错误处理导出过程中出现错误会提供详细的日志和提示导出失败时提供详细的错误报告
多语言支持提供多种语言版本,适合全球用户支持多语言界面,用户可以选择适合自己的语言

2. 示例

2.1 前置环境

本地MySQL环境,部署了Mac Pro上,16GB内存。

SQLynx和Navicat都在本地,去掉了网络的影响,因此主要比较性能方面。

基于employees_1000数据量级别690万行数据,表结构为:

CREATE TABLE `employees_1000` (
  `emp_no` int NOT NULL,
  `birth_date` date NOT NULL,
  `first_name` varchar(14) NOT NULL,
  `last_name` varchar(16) NOT NULL,
  `gender` enum('M','F') NOT NULL,
  `hire_date` date NOT NULL,
  KEY `employees_index` (`emp_no`) USING BTREE
) ENGINE=InnoDB DEFAULT CHARSET=latin1

2.2 Navicat导出

选择salaries_30m的表,右键选择导出表,选择CSV文件开始导出:

导出成功,总体耗时235.77秒:

2.3 SQLynx导出

SQLynx可以支持在表级别或是直接根据查询语句来完成导出,相对灵活。

此处使用查询后直接导出的方式,既可以支持单表,也可以支持复杂查询(此处使用单表),此处在查询后在结果处直接导出所有的数据。

导出成功,总体耗时74秒(任务可以完全后台运行,不影响其他操作):

2.4 性能对比结果(690万行数据)

3. 结论

SQLynx和Navicat在大数据量的导出的时候表现都比较优异,成功完成了接近千万的数据导出,但性能上SQLynx只用了74秒,而Navicat用了235.77秒,相差在3倍以上。

同时SQLynx可以支持复杂查询的数据结果导出,使数据导出的能力得到更大的满足。

所以用户根据具体需求选择合适的工具,从而提高数据导出的效率和成功率。

标签:数据测试,导出,Navicat,数据量,MySQL,NULL,数据,SQLynx
From: https://blog.csdn.net/lgbingyu00/article/details/139748539

相关文章

  • MySQL之复制(二)
    复制配置复制为MySQL服务器配置复制非常简单。但由于场景不同,基本的步骤还是有所差异的。最基本的场景是新安装的主库和备库,总的来说分为以下几步:1.在每台服务器上创建复制账号2.配置主库和备库3.通知备库连接到主库并从主库复制数据这里我们假定大部分配置采用默认值......
  • 【MySQL基础随缘更系列】DCL语句
    文章目录一、DCL概述1.1、什么是DCL1.2、为什么学习DCL二、用户管理2.1、查看用户2.2、创建用户2.3、删除用户三、密码管理3.1、修改用户密码3.2、设置管理员(root)密码四、权限管理4.1、查看用户权限4.2、授权4.3、撤销授权......
  • 【MySQL基础随缘更系列】AB复制
    文章目录mysqlAB复制实战一、mysqlAB复制二、AB复制原理三、master服务器设置3.1、安装mysql并启动3.2、关闭防火墙,selinux3.3、设置时间服务器3.4、修改配置文件设置server-id=N3.5、创建slave连接master的账号,用于取SQL语句四、slave设置4.3、修改配置文件设置s......
  • mysql一课一得
    自从我开始深入学习MySQL数据库管理系统以来,我深感其强大与深邃。MySQL作为一个开源的关系型数据库管理系统,不仅广泛应用于各种Web开发场景,还为企业级应用提供了稳定可靠的数据存储和查询服务。以下是我学习MySQL过程中的一些心得体会。大数据量下的性能问题等。这些挑战让我更......
  • MySQL约束详解:构建数据完整性基石
    目录MySQL约束1.1约束1.1数据类型1.2主键约束[`重要`]1.3自增约束1.4唯一约束1.5非空约束1.6默认值代码演示1.7外键约束[了解]思维导图最后MySQL约束MySQL作为广泛使用的开源关系型数据库管理系统,其强大的数据约束功能对于维护数据的一致性和准确性至关重......
  • mysql手册
    查看mysql的配置文件位置mysql--help|grep"Defaultoptions"-C1输出如下,可知mysql读取默认选项的位置修改mysqlcmd提示符修改提示符有两种方法配置文件通常在~/.my.cnf中配置prompt命令在mysqlcmd中使用prompt[text]设置提示符格式对于不是控制字符的字符,......
  • MySQL数据库管理补充
    目录一.数据表高级操作1.克隆表2.清空表3.创建临时表4.创建外键约束外键的定义主键表和外键表的理解4.1.创建主从表4.2.主从表中插入数据4.3.主从表中删除数据4.4.删除外检约束二.数据库用户管理1.新建用户2.查看用户信息3.重命名用户4.删除用户5.修改当前登......
  • mysqlconf
    [mysqld]#max_connections=20000#数据传输可能出现大表中断与这个有关系port=13306default-authentication-plugin=mysql_native_password#datadir=/opt/data/mysql/mysql#socket=/opt/data/mysql/mysql/mysql.sockdatadir=/opt/data/mysql/mysql/mysqlsocket=/o......
  • MySQL触发器基本结构
    1、修改分隔符符号delimiiter$$可以修改成$$//都行2、创建触发器函数名称createtrigger函数名3、什么样的操作触发,操作哪个表after:···之后触发before:···之前触发insert:插入被触发update:修改被触发delete:删除被触发on表名实例:在user表被添加信息后触发......
  • 如何解决c++使用mysql数据库读取中文输出时乱码问题
    使用vs写c++输出数据库中文时出现乱码设置utf-8还是不行这是数据库的内容这是输出:在网上找有说改成utf-8的格式,加入这样一句:mysql_query(conn,"setnamesutf8");效果就是这样:发现错误依旧,询问群友后修改,需要在连接数据库的函数中加入如下一句:mysql_query(conn,"set......