|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
每个Rows_log_event中包含event_type,可选值为WRITE_ROWS_EVENT、UPDATE_ROWS_EVENT、DELETE_ROWS_EVENT。从宏名字就能看出用途。标准|标准化|计划|数据|数据库|数据库计划干系数据库计划是对数据举行构造化和布局化的历程,中心成绩是干系模子的计划。干系模子是数学化的、用二维表格数据形貌各实体之间的接洽的模子;它是一切的干系形式、属性名和关头字的搜集,是干系形式形貌的工具。干系形式是指一个干系的属性名表,即二维表的表框架。干系形式的计划是干系模子计划的魂灵。以是,干系形式的计划是干系数据库计划中心的中心。干系形式的计划间接决意着干系数据库的功能。今朝,在引导干系形式的计划中标准化(normalization)计划占据主导位置,它是在数据库几十年的临时开展中发生并成熟的。但最近几年来这一范畴呈现了一种新的趋向,一种称为非标准化(denormalization)的干系形式计划引发业界的存眷并已在必定的局限内失掉使用。对这一新的计划头脑,各方反响悬殊批驳纷歧,从而在相干的实际界掀起了一场不年夜不小的标准化与非标准化之争。本文复杂先容了标准化与非标准化计划的基础头脑,综述了正反两边争辩的要点,供国际业界相干职员参考。1、标准化计划干系形式标准化计划的基础头脑是经由过程对干系形式举行分化,用一组等价的干系子形式来取代原本的干系形式,打消数据依附(包含函数依附和多值依附)中分歧理的部分,使得一个干系仅形貌一个实体大概实体间的一种接洽。这一历程必需在包管无损毗连性、坚持函数依附性的条件下举行,即确保不损坏原无数据,并可将分化后的干系经由过程天然连接恢复至原有干系。详细地说,标准化计划的历程就是按分歧的范式,将一个二维表不休地分化成多个二维表并创建表之间的联系关系,终极到达一个表只形貌一个实体大概实体间的一种接洽的方针。今朝遵守的次要范式包含1NF、2NF、3NF、BCNF、4NF和5NF等几种;在工程中3NF、BCNF使用得最普遍,保举接纳3NF作为尺度。标准化计划的长处包含可无效地打消数据冗余,理顺数据的附属干系,坚持数据库的完全性,加强数据库的不乱性、伸缩性、顺应性。一般以为标准化计划存在的次要成绩是增添了查询时的毗连库表运算,招致盘算机工夫、空间、体系及运转效力的丧失。在年夜多半情形下,这一成绩可经由过程优秀的索引计划等办法失掉办理。2、非标准化计划非标准化计划的基础头脑是,实际天下其实不老是允从于某一完善的数学化的干系形式。强迫性地对事物举行标准化计划,情势上显得复杂化,内容上趋于庞大化,更主要的是招致数据库运转效力的减低。非标准化请求得当地下降乃至丢弃干系形式的范式,不再请求一个表只形貌一个实体大概实体间的一种接洽。其次要目标在于进步数据库的运转效力。非标准化处置的次要手艺包含增添冗余或派生列,对表举行兼并、支解或增添反复表。一样平常以为,鄙人列情形下能够思索举行非标准化处置:(1)大批频仍的查询历程所触及的表都必要举行毗连;(2)次要的使用程序在实行时要将表毗连起来举行查询;(3)对数据的盘算必要一时表或举行庞大的查询。非标准化计划的次要长处是削减了查询操纵所需的毗连;削减了内部键和索引的数目;能够事后举行统计盘算,进步了查询时的呼应速率。非标准化存在的次要成绩是增添了数据冗余;影响数据库的完全性;下降了数据更新的速率;增添了存储表所占用的物理空间。个中最主要的是数据库的完全性成绩。这一成绩一样平常可经由过程创建触发器、使用事件逻辑、在得当的工夫距离运转批命令或存储历程等办法失掉办理。3、标准化与非标准化争辩的要点撑持非标准化计划的一方以为,数据库标准化的水平越高,个中表的数目越多,标准化水平与表的数目间接相干;表的数目越多,表的毗连运算也越多;毗连运算增加,一定下降数据库实行的速率,影响数据库的功能。只要经由过程非标准化计划,明显削减表的数目,从而削减对毗连运算的依附,减速数据库实行的速率,才干包管数据库功能的一般发扬。比方今朝盛行于决议撑持体系的非标准化星型形式就远胜于使用标准化计划,长短标准化计划的最好典范。非标准化计划其实不意味着凌乱和忽视划定规矩,它也遵守回护信息完全性等软件工程的基础准绳。撑持标准化计划的一方以为,标准化与非标准化只是一个逻辑观点,夸大非标准化计划者搅浑了逻辑与物理的干系。数据库的功能是由物理程度决意的,即硬件、数据库的巨细和物理计划、数据存储和会见的办法、数据库办理体系的优化水平、并发会见的数目等;非标准化计划并未改动数据库的物理程度,因而不成能进步数据库的功能。标准化其实不只是为了不数据冗余,更主要的是为了确保数据库的完全性。非标准化计划的最年夜成绩是难以包管数据库中数据的分歧性,存在着损坏数据的伤害。别的,非标准化使一个表中存在多个实体,分歧实体夹杂在一同强化了数据库的庞大性,进步了用户了解的难度,并招致形貌成绩上的坚苦,增添了准确呼应的风险。只要标准化计划才是办理这些成绩的基本路子。假如不摒弃非标准化计划理念,为了取得所谓的功能的进步而冷视数据库完全性被损坏的风险,就没法鼓励开辟商往研讨真实的完整标准化而高功能的干系数据库办理体系,厥后果一定影响数据库的安康开展。从某种意义上说,数据库的标准化与非标准化计划并非对峙的、非此即彼的干系。大概个中一方会渐渐灭亡,大概两者存在一条两头路途可走。熟悉事物底本存在一个螺旋式上升的历程。这场争辩还没有停止,也没法对终极的了局举行展望。但能够一定的是,不管了局怎样,都将对将来数据库的开展偏向发生深远的影响。在Windows中MySQL以服务形式存在,在使用前应确保此服务已经启动,未启动可用netstartmysql命令启动。而Linux中启动时可用“/etc/rc.d/init.d/mysqldstart"命令,注意启动者应具有管理员权限。 |
|