`
neora
  • 浏览: 184198 次
  • 性别: Icon_minigender_1
  • 来自: 墨尔本
文章分类
社区版块
存档分类
最新评论

mySQL于3000w记录

阅读更多
JavaEye上看到一个关于mySQL是否支持3000w记录的讨论。以下是我的跟贴:

3000w条记录对与mySQL来说太大了。
且不说mySQL的单表文件有多少个G,从实际的角度也是非常冒险的事。

与商业数据库比较,靠单文件来做数据表表达的mySQL从基理上就非常脆弱,特别在大数据表、大并发写操作的时候。
尽管跟所有的数据库一样,lock机制用于mySQL单表同时写入出现故障的情况,但在大并发写入时,出现mySQL数据表或索引表损坏的几率还是不可忽略。这是我们多年的实践中发现的情况。

即便很少的字段、很少的索引,当数据量大到300w以上时,数据表的并发写入效率会猛然下降(非线性)。在不同的硬件环境中,300w这个阀值会有所不同,但都存在。

根据我们的测试,在大数据量、大并发写入时,运行于Solaris上mySQL的可靠性要高于运行于IA Linux上的。而运行于Windows上的性能和可靠性都最差。
根据我们的测试,在数据表记录高于1000w条,100并发写入时。mySQL on Linux的表损坏几率高于1/10w。比on Solaris和AIX高10倍左右。我猜想这个跟文件系统的可靠性有关。

我个人认为mySQL适用以下场合:
1、BBS——无论访问量多大,并发写入的负荷都很低。
2、内容发布系统——理由同上。但我更倾向于采用生成静态页面文件的方式来实现。
3、通讯录——当然用OpenLDAP也不错,但对于统计分析不太方便。
4、日志分析——做为中间临时表来使用。
5、小型的应用,如OA、MIS或Intranet中的一些非关键业务应用。

而以下应用可能并不适合采用mySQL。
1、零售系统数据库。
2、计费数据库。
3、ERP系统数据库。
4、财务(帐务)系统数据库。
5、实时写入(访问)的日志数据库。
6、其它任何"关键数据"数据库。

以上来自于自身实践和测试。个人观点,谨供参考。

分享到:
评论

相关推荐

    mysql百万级测试数据下载 300W条

    本文将围绕“mysql百万级测试数据下载 300W条”这个主题,深入探讨如何处理和利用这样的大数据量进行测试。 首先,`test.sql`文件是一个MySQL数据库的SQL脚本文件,通常包含创建表结构、插入数据等操作。在这个场景...

    MySQL数据库30W测试数据.rar

    MySQL数据库是世界上最受欢迎的关系型数据库管理系统之一,广泛应用于各种规模的企业和项目中。"MySQL数据库30W测试数据.rar" 文件包含的是一个用于测试和验证数据库性能、查询优化以及应用程序功能的大规模数据集。...

    Mysql成语数据库 1.4w 条记录

    非常不错的资源 用来做词典或成语接龙的应用刚刚好,成语库很全

    linux服务器清空MySQL的history历史记录 删除mysql操作记录

    1. 不再保存历史记录或者减少历史记录保存数量修改/etc/profile将HISTSIZE=1000 改成 0 或 要保留的数量清除用户home路径下的 .bash_history 代码如下:echo ” > /home/user/.bash_...如果你是MySQL用户,那么在用户目

    mysql测试库(100万数据库和世界人口数据库).rar

    这种大规模的数据集有助于模拟实际生产环境中的高并发访问和大数据处理场景,对于理解和优化MySQL的性能至关重要。 在学习和测试过程中,你可以执行以下操作: 1. **安装与导入**:首先确保你已经安装了MySQL服务器...

    MySQL创建存储过程批量插入10万条数据

    MySQL创建存储过程批量插入10万条数据 存储过程 1、首先防止主键冲突,我们清空表。 TRUNCATE table A_student; 2、编写存储过程 delimiter ‘$’; CREATE PROCEDURE batchInsert(in args int) BEGIN declare i int ...

    category.7z 淘宝类目mysql文件 80w行

    标题中的"category.7z 淘宝类目mysql文件 80w行"表明这是一个包含淘宝类目数据的MySQL数据库文件,经过7z压缩处理,共有80万条记录。这个文件对于分析和理解淘宝平台的商品分类结构、销售数据以及市场趋势具有重要...

    mysql 千万数据表 t_order.zip

    本文将深入探讨如何管理和优化存储着千万级别数据的表,以"t_order"为例,该表可能存在于您提供的压缩包文件"t_order.sql"中。 一、数据库设计与规范 在设计千万级别的数据表时,遵循数据库设计范式至关重要。"t_...

    TCPP-Mysql使用

    TCPP-Mysql 是一套用于测试 MySQL 数据库性能的工具集,特别适用于对 MySQL 进行事务处理能力(TPC-C)基准测试。通过模拟一系列标准的数据库操作场景,该工具可以帮助评估数据库在高并发情况下的性能表现。 #### ...

    MYSQL版商品条码105W

    标题"MYSQL版商品条码105W"表明这是一个与MySQL数据库相关的资源,其中包含大约105万个商品条码数据。MySQL是世界上最流行的开源关系型数据库管理系统之一,适合处理大量数据。这里的“MYSQL版”可能意味着这些条码...

    成语词典-MYSQL版本

    《成语词典-MYSQL版本》是一个专为存储和管理大量成语数据而设计的数据库脚本。这个MySQL脚本包含了超过3万个成语的信息,旨在提供一个高效、便捷的方式来查询和使用丰富的成语资源。在这个压缩包中,核心文件名为"c...

    mysql分表分库demo

    COUNT(*) 函数的执行过程是,MySQL 的 Server 层维护一个名为 COUNT 的变量,Server 层会循环向 InnoDB 读取一条记录,如果 COUNT 函数指定的参数不为 NULL,那么就将变量 COUNT 加 1,直到符合查询条件的所有记录...

    正则表达式MySQL参考文档

    此外,MySQL还提供了一些预定义的模式,如`\d`代表数字,`\w`代表单词字符(等同于[a-zA-Z0-9_]),`\s`代表空白字符。例如,要查找包含四个连续数字的记录,可以写为: ```sql SELECT * FROM table_name WHERE ...

    MYSQL常见故障分析

    MySQL作为目前流行的开源关系型数据库管理系统,广泛应用于各种在线系统中。然而在实际应用中,MySQL系统可能会出现多种故障,对业务系统的稳定性和性能造成影响。本文将深入探讨MySQL线上常见的一些故障类型及其...

    mysql安装步骤1.txt

    MySQL是一种流行的关系型数据库管理系统(RDBMS),因其性能稳定、易于使用而被广泛应用于各种场景。在Linux环境下安装MySQL,通常涉及到依赖库的安装以及MySQL服务的配置等多个环节。 ### 二、所需软件介绍 #### 1....

    mysql 10w级别的mysql数据插入

    特别是在“mysql 10w级别的mysql数据插入”这种场景下,一次性插入数十万条记录,如果处理不当,将会耗费大量的时间和系统资源。从描述中可以看到,一开始采用单条插入的方式,效率极低,半小时只能插入2w条数据,而...

    mysql的日期和时间函数

    这类似于 MySQL 解释 TIME 值为经过的时间而不是一天的时刻。 注意,如果依着包含一个时间部分的间隔增加或减少一个日期值,该日期值将被自动地转换到一个日期时间值: mysql> SELECT DATE_ADD("1999-01-01", ...

    最新国内省市区街道-4级联动mysql数据库

    描述中的 "2019-12-29的数据,5W条数据" 提供了数据库的具体更新日期和记录数量。这意味着这个数据库在2019年12月29日进行了最后一次数据更新,并且包含了大约五万条独立的地理位置记录。这些记录涵盖了全国不同地区...

    mysql从入门到精通 ppt合集

    MySQL是一个开源、免费、快速、可移植且易于使用的数据库系统,广泛应用于中小型企业及大型互联网项目。 2. **安装与配置**:学习如何在不同的操作系统(如Windows、Linux和Mac OS)上安装MySQL,设置用户账户和...

    批量生成mysql中文测试数据

    "批量生成mysql中文测试数据"是一个专门针对这一需求而设计的工具,主要用于生成大量的中文测试数据,以便于开发者进行中文搜索功能的测试和MySQL数据库的优化工作。 这个工具采用PHP语言编写,PHP是一种广泛使用的...

Global site tag (gtag.js) - Google Analytics