ACCESS复合承载 性能超越MYSQL

由于众所周知的原因,ACCESS在大型站点应用中都靠不上边,主要问题就是数据量大了以后几乎无法索引。当ACCESS里数据过万后,明显可以感觉到速度变慢,过2万条数据后,慢的可以跟蜗牛相提并论了。但是由于某人灵光突现,想到了一个解决ACCESS数据库承载问题的方案,那个某人就是偶啦……最喜欢搞歪门邪道地偶(另有小偷程序生成器)。

这个解决方案就是“ACCESS复合承载”(本人原创的词,实在找不到合适的描述),简单说就是将原来一个数据库剥离为多个,成为一个主数据库带多个辅数据库。拿我已经实现的开良小说系统来说,小说信息都存储在主数据库内,用于列表检索,小说章节存在辅数据库内,每本小说独立占一个数据库。可能这样你看着有点模糊,我们来下数据对比,一个小说站,算5个分类,每个分类400部小说,每部小说300章节(其实很多小说都不止300章节),那么数据量为5×400×300=60万条数据,这还只是章节数据,其他的还有书目、用户、评论等等数据,这样大的数据量,即使是MYSQL或者MSSQL也要好好规划。但是,采用ACCESS复合承载以后,就会变成1个书目数据库加2000个章节数据库,每个章节数据库里有300条数据,从只有300条记录的ACCESS库里读东西,速度我想大家都能理解,即使是动态读取也绝对不慢。那么,这里又涉及到一个关键的问题,如何将主库与辅库连起来,这其实很简单,我在小说系统里用的是用书目的ID来命名数据库,将数据库打开与关闭做成一个函数,要什么小说的章节就直接打开这个小说的数据库就OK了。

谈完方法,我们来谈谈优缺点。优点很显著,其一,可以做以前很多做不了的事情,ACCESS库原来根本做不了小说系统,现在可以做了,而且还可以做的很大。其二,ACCESS是以独立文件形式存在的,可以很方便的实现复合承载,其他数据库做不到这么方便。其三,一个数据库仅几百条数据,读取效率绝不在其他数据库之下(例如MYSQL 、MSSQL)。其四,ACCESS一般的空间都支持,通用性很高,而且大小不限哦。

接着来看缺点,第一,对程序员的要求也要高一些,数据库的规划必须要完善,数据库多了后要用执行SQL语句来修改格式,不懂编程语言的人是搞不了的。第二,数据检索始终还是有缺陷(对于一些文章系统来说,小说系统压根没这缺陷),无法进行全库检索,只能单库检索。

昨天晚上到今天早上一共花了8个小时,才把系统粗略做出来,睡眠不足,脑子都有点混,写的乱七八糟(其实偶本来就不会写,找个理由挡下。。),希望各位大大不要笑偶。。如果你也有邪门歪道的想法,也可以与我联系哦。

时间: 2024-11-08 22:01:13

ACCESS复合承载 性能超越MYSQL的相关文章

如何把Access的数据导入到Mysql中

access|mysql|数据 在建设网站的过程中,经常要处理一些数据的导入及导出.在Mysql数据库中,一般有两种方法来处理数据的导出: 1. 使用select * from table_name into outfile "file_name"; 2. 使用mysqldump实用程序 下面我们来举例说明: 假设我们的数据库中有一个库为samp_db,一个表为samp_table.现在要把samp_table的数据导出.则我们可以利用以下方法来实现: 在Mysql提示符下打入sele

如何把ACCESS的数据导入到Mysql中_Mysql

如何把ACCESS的数据导入到Mysql中  www.Alltips.Com 2001-10-6  极限技术网    在建设网站的过程中,经常要处理一些数据的导入及导出.在Mysql数据库中,有两种方法来处理数据的导出(一般).   1. 使用select * from table_name into outfile "file_name";   2. 使用mysqldump实用程序   下面我们来举例说明:   假设我们的数据库中有一个库为samp_db,一个表为samp_table

如何将access mdb数据库导入到mysql中 .mdb转mysql

如何将access mdb数据库导入到mysql中,有人说用mysql-front但用起来十分难用,还要新建 dsn,dsn这东西有多少年没有人用了, 最简单的方法是使用navicat for mysql ,安装完成后,新建一个数据库,打开数据库后,展开数据库,会发现出现,表,视图,函数,等选项,在表上右击会出现导入向导,然后跟着向导一步步地向下做就可以了

MySQL 复合索引性能比较

我们来看一些测试实例  代码如下 复制代码 select * from dlog_user order by online_status, username 先看上面这个内联的SQL语句,username是dlog_user表的主键,dlog_friend有一个由 username和 friend_username组合而成的复合主键. 测试条件一: dlog_user 和 dlog_friend 两个表除了主键外没有建任何索引,对这条SQL语句EXPLAIN的结果是 dlog_user 做了全表

MySQL · 性能优化 · MySQL常见SQL错误用法

前言 MySQL在2016年仍然保持强劲的数据库流行度增长趋势.越来越多的客户将自己的应用建立在MySQL数据库之上,甚至是从Oracle迁移到MySQL上来.但也存在部分客户在使用MySQL数据库的过程中遇到一些比如响应时间慢,CPU打满等情况.阿里云RDS专家服务团队帮助云上客户解决过很多紧急问题.现将<ApsaraDB专家诊断报告>中出现的部分常见SQL问题总结如下,供大家参考. 常见SQL错误用法 1. LIMIT 语句 分页查询是最常用的场景之一,但也通常也是最容易出问题的地方.比如

如何将Access和Excel导入到Mysql中之三

access|excel|mysql 二.导库的VB程序 这个工程要使用一些对象库,在数据库访问方面,决定使用ADO(ActiveX Data Objects),对于使用过ASP的人,这个名字应该非常熟悉了,实际上,它在VB中的应用也是几乎一样的,由于要操作Excel,还要引用一个扩展的对象库.点菜单中的"工程"---"引用",选择"Microsoft ActiveX Data Objects 2.6 Library"和"Microso

如何将Access和Excel导入到Mysql中之二

access|excel|mysql 一.Mysql数据库的安装.建库和ODBC的安装设置 Mysql和ODBC驱动可以在其主页(http://www.mysql.com/)下载,在右边的Latest Versions点击进去,下载相应的版本就行了.这里我们要下载Intel版本的Mysql(最新版本为3.23.40),ODBC驱动则是MyODBC 2.50.37 for NT/2000 (full setup),如果使用Win95/98,其驱动是不同的,请注意区分. 然后就可以安装了,Mysql

如何将Access和Excel导入到Mysql中之一

access|excel|mysql 对于一些小型甚至中型的公司来说,仍然使用Access或者Excel记录数据,不仅速度慢,而且在多人操作时存在着很多的不便,随着业务的发展,它们都有着升级系统的要求,但它们又拿不出很多的资金去开发一个系统,这时采用Mysql数据库,然后配合PHP等脚本语言进行开发就有着很多的好处,不仅经济.速度快.便于维护,而且通过浏览器就可以多人同时操作数据库,可以极大地提高工作效率.但这里首先会碰到一个问题,如何将Access和Excel中的数据导入到Mysql中呢,这

access数据库转换导入到mysql数据库

  一. 软件介绍 DB2MYSQL是一个可以自动将ACCESS数据库文件转化为对应的SQL代码的软件.可广泛应用于ACCESS数据库转换为MYSQL或其他类型的SQL数据库的软件. DB2MYSQL能够实现可视化操作数据库,转换界面非常简单明了,可轻松实现ACCESS数据库转换为MYSQL数据库.如果想要将SQL SERVER的数据库转换到MYSQL,也可以使用这个软件,具体操作是先使用SQL SERVER的"导入和导出数据"将SQL SERVER数据导出到ACCESS文件,然后再将