当前位置:七道奇文章资讯数据防范MySQL防范
日期:2011-05-02 15:44:00  来源:本站整理

MySQL文件系统先睹为快(2)[MySQL防范]

赞助商链接



  本文“MySQL文件系统先睹为快(2)[MySQL防范]”是由七道奇为您精心收集,来源于网络转载,文章版权归文章作者所有,本站不对其观点以及内容做任何评价,请读者自行判断,以下是其具体内容:
5、其他的特点:


  在第一步开辟中实现的还只是只读,很快会有能读写的版本出来.

  目前的筹划是把数据库对象映射成文件和目录对象.让我们来看看

例子:



--8<-----------------------------

#成立表


CREATE TABLE invoice (

invoice_id int(10) unsigned NOT NULL auto_increment,

invoice_no int(10) unsigned DEFAULT ’0’ NOT NULL,

payee char(40) DEFAULT ’’ NOT NULL,

PRIMARY KEY (invoice_id),

KEY payee (payee)

);


# 插入数据


INSERT INTO invoice VALUES (1,100,’Company AB’);

INSERT INTO invoice VALUES (2,101,’Company CD’);

INSERT INTO invoice VALUES (3,102,’Company EF’);


--8<-----------------------------


因为 MySQL 没有办法利用记录号,所以我们必须成立主键.

就有了以下的目录构造:


/mountpoint/database/table/primary_key/field


这样,每个列呈目前差别的文件行之中,文件树的构造以下:


/mnt/mysql/mydata/invoice/1/invoice_id

/mnt/mysql/mydata/invoice/1/invoice_no

/mnt/mysql/mydata/invoice/1/payee

/mnt/mysql/mydata/invoice/2/invoice_id

/mnt/mysql/mydata/invoice/2/invoice_no

/mnt/mysql/mydata/invoice/2/payee

/mnt/mysql/mydata/invoice/3/invoice_id

/mnt/mysql/mydata/invoice/3/invoice_no

/mnt/mysql/mydata/invoice/3/payee


别的,还有第二个办法可以利用:


/mountpoint/database/table/.table



/mountpoint/database/table/primary_key/.record

/mnt/mysql/mydata/invoice/.table

/mnt/mysql/mydata/invoice/1/.record

/mnt/mysql/mydata/invoice/1/invoice_id

/mnt/mysql/mydata/invoice/1/invoice_no

/mnt/mysql/mydata/invoice/1/payee

/mnt/mysql/mydata/invoice/2/.record

/mnt/mysql/mydata/invoice/2/invoice_id

/mnt/mysql/mydata/invoice/2/invoice_no

/mnt/mysql/mydata/invoice/2/payee

/mnt/mysql/mydata/invoice/3/.record

/mnt/mysql/mydata/invoice/3/invoice_id

/mnt/mysql/mydata/invoice/3/invoice_no

/mnt/mysql/mydata/invoice/3/payee



这些文件是隐含的,以防反复,主要用来便利地通过文本文件

浏览器来查看.


目前,在那些需求利用SQL 语句搜索最小,最大,最后等数据,

可以通过标记衔接来实现了:


/mountpoint/database/table/primary_key/.max

大概

/mnt/mysql/mydata/invoice/invoice_id/.max

大概指向

/mountpoint/database/table/field



/mnt/mysql/mydata/invoice/3


一样的便可以返回一行的 min/max/sum/avg 等数值.

这能很快并且很简单地实现.


/mnt/mysql/mydata/.keys/

/mnt/mysql/mydata/.keys/invoice_id/

/mnt/mysql/mydata/.keys/payee/


标记衔接到主键:

/mnt/mysql/mydata/.keys/.primary_key/

实际上指向

/mnt/mysql/mydata/.keys/invoice_id/


还有一些躲藏文件供应键范例:

/mnt/mysql/mydata/.keys/invoice_id/.type

/mnt/mysql/mydata/.keys/payee/.type


第一个文内容为:¨PRIMARY KEY¨ 第二个为 ¨KEY¨ .


别的还可以用索引来排序记录,假如读取下面的目录:


/mnt/mysql/mydata/.keys/payee/asc/


PHP 的readdir() 函数就以升序返回数据的标记衔接.


别的还有一些全局函数:


/mountpoint/.version

/mountpoint/.last_insert_id

/mountpoint/.uptime

/mountpoint/database/.raid (0/1)

/mountpoint/database/.type (ISAM/MyISAM/HEAP/DBD)

/mountpoint/database/.tables

/mountpoint/database/table/.created

/mountpoint/database/table/.last_updated

/mountpoint/database/table/.last_checked

/mountpoint/database/table/.count
  以上是“MySQL文件系统先睹为快(2)[MySQL防范]”的内容,如果你对以上该文章内容感兴趣,你可以看看七道奇为您推荐以下文章:
  • Windows 搭配 IIS7 PHP MySQL 环境
  • mysql Out of memory (Needed 16777224 bytes)的错误办理
  • mysql提醒[Warning] Invalid (old?) table or database name问题的办理办法
  • mysql启用skip-name-resolve情势时呈现Warning的处理办法
  • mysql启用skip-name-resolve情势时呈现Warning的处理办法
  • MySQL Order By语法介绍
  • <b>MySQL ORDER BY 的实现解析</b>
  • mysql数据库插入速度和读取速度的调整记录
  • MySQL Order By索引优化办法
  • MySQL Order By用法分享
  • mysql #1062 –Duplicate entry ''1'' for key ''PRIMARY''
  • MySQL Order By Rand()效率解析
  • 本文地址: 与您的QQ/BBS好友分享!
    • 好的评价 如果您觉得此文章好,就请您
        0%(0)
    • 差的评价 如果您觉得此文章差,就请您
        0%(0)

    文章评论评论内容只代表网友观点,与本站立场无关!

       评论摘要(共 0 条,得分 0 分,平均 0 分) 查看完整评论
    Copyright © 2020-2022 www.xiamiku.com. All Rights Reserved .