由于与这个问题无关的原因,我需要为我的一些项目运行几个SQLite数据库而不是更常见的MySQL,我想知道SQLite在磁盘I/O的速度和性能方面与MySQL的比较(数据库将托管在USB 2.0笔式驱动器中).
我已经阅读了http://www.sqlite.org/speed.html上的数据库速度比较页面,我必须说我对SQLite的性能感到惊讶,但由于这些基准测试有点旧,我正在寻找更新的基准测试(SQLite 3 vs MySQL 5),我的主要关注点是磁盘性能,而不是CPU/RAM.
此外,由于我没有那么多使用SQLite的经验,我也很好奇它是否与InnoDB MySQL引擎中的TRIGGER(更新,删除)事件类似.我也找不到任何方法将一个字段声明为像MySQL那样独特,只有PRIMARY KEY - 有什么我缺少的吗?
作为最后一个问题,我想知道一个好的(最好是免费的或开源的)SQLite数据库管理器是否存在.
那里有几个问题:
就磁盘I/O限制而言,我不认为数据库引擎会产生很大的不同.可能有一些小问题,但我认为这主要是数据库是否可以像您的应用程序那样快速读/写数据.由于您将使用与MySQL或SQLite相同数量的数据,我认为它不会有太大变化.
SQLite支持触发器:CREATE TRIGGER语法
SQLite支持UNIQUE约束:列约束定义语法.
为了管理我的SQLite数据库,我使用Firefox Add-on SQLite Manager.这是非常好的,做我想要的一切.