若相依 发表于 2015-1-16 22:13:09

MYSQL网站制作之oracle物理布局和逻辑布局

越来越多的开发者将继续选择MySQL。Evans的总裁JohnAndrews表示,MySQL学习教程用户对MySQL和其他开源数据库的评价正在赶上甚至超过很多专有商业数据库软件。oracle物理布局和逻辑布局物理布局检察oracle数据库的物理文件路径必定要用命令检察,除非该数据库是你亲身安装,并做过一切的平安设置,不然十分有大概你的后任对数据库举行了变动,而在一不当心变成年夜错。
检察把持文件DESCv$controlfile检察把持文件的形态和称号(显现路径)SELECTstatus,nameFROMv$controlfile;
检察数据文件DESCv$datafile好比检察数据文件的文件号和形态SELECTfile#,status,nameFROMv$datafile;
看日记文件DESCv$logfile检察日记文件路径信息SELECTmemberFROMv$logfile;
Oracle的文件体系:把持文件(.CTL),数据文件(.DBF),日记文件(.LOG)
这三种文件体系一样平常在以下路径能够找到:(默许安装路径)/u01/app/oracle/oradata/oracleSID
除此三种文件另有一种参数文件,参数文件不是数据库体系中的无效构成部分,在启动数据库时,参数文件不间接介入事情,只是把持文件是由参数文件寻觅的。参数文件地位:/u01/app/oracle/product/10.2.0/db_1/dbs/spfileoracleSID.ora把持文件的内容会显现在参数文件中。参数文件的感化起到寻觅把持文件的感化。
Oracle中有两种日记文件,一种为联机日记文件(重做日记文件),一种为回档日记文件。REDO01.LOG和REDO02.LOG,REDO03.LOG是典范的联机日记文件,特性是按次写文件,写满后写下一个,写满第三个轮回写第一个,而且掩盖失落不做备份。回档日记文件,在热备份的时分要选择的一种回档体例。
由把持文件把持数据文件和日记文件。数据库启动时启动对应实例后,起首启动把持文件,在由把持文件翻开数据文件。征象是:数据库装载:DatabaseMount,然后翻开数据库:DatabaseOpen。实在就是先翻开把持文件,在翻开数据文件。
物理布局下,这些路径是能够随便迁徙的,能够寄存在任何存储下,包含裸设备。
逻辑布局数据库的逻辑布局相对物理布局要庞大良多。学逻辑布局,非一日之功,我仅学到相干的也许。今后偶然间持续深切进修。数据库存储空间由一个或多个表空间组成。(如system、sysaux.)1、表空间(tablespace)构造数据库空间的逻辑布局,其对物理布局是数据文件,一个表空间物理上由一个或多个数据文件构成,逻辑上由一个或多个数据段构成。2、数据段(segment)逻辑工具所占用空间,如表段,索引段,回滚段等,段存在于表空间中,并对应必定的存储空间。数据段又分别为一个或多个区间。3、区(extent)区间是用于为数据一次性预留的一个逻辑上一连的一组disk空间(默许8块),每一个区间占用必定数目的数据块。区不克不及跨数据文件。4、块(block)数据库最小的存储单元(默许8k),是一切逻辑布局的基础分派单位。以上时逻辑布局的基础布局
1.表空间概述表空间功效・构造数据段空间,把持存储空间的分派・经由过程使单个表空间在线或离线,把持数据的可用性・经由过程表空间分别完成超过设备分派数据存储,以进步功能・经由过程指定用户利用指定表空间完成对用户的限定・实行部分数据的后备和恢复操纵表空间特性・数据中的最年夜逻辑单元・一个数据库逻辑上最少由一个体系表空间组成・一个表空间物理上最少由一个数据文件组成・一个表空间最少包含一个段(把持信息)・表空间的巨细即是一切附属于它的数据文件巨细的总和查询表空间利用情况SQLselect*fromdba_tablespaces;查询数据库中一切表空间信息SQLselect*fromdba_data_files;查询表空间所含数据文件信息,不含一时表空间SQLselect*fromdba_temp_files;专查一时表空间所含数据文件SQLselecttablespace_name,sum(bytes)fromdba_data_filesgroupbytablespace_name;查询表空间巨细SQLselecttablespace_name,sum(bytes)fromdba_free_spacegroupbytablespace_name;查询表空间余暇空间巨细
创立表空间SQLcreatetablespacetestdatafile’/u01/a.dat’size5m;变动表空间SQLaltertablespacetestadddatafile’/u01/b.dat’size6m;查询表空间SQLselecttablespace_name,sum(bytes)fromdba_data_filesgroupbytablespace_name;表空间改名SQLaltertablespacetestrenametofff;表空间脱机SQLaltertablespacetestoffline;表空间联机SQLaltertablespacetestonline;设置表空间只读SQLaltertablespacetestreadonly;设置表空间可读写SQLaltertablespacetestreadwrite;扩大表空间SQLaltertablespacetestadddatafile’/u01/c.dat’size500M;增添数据文件个数以扩大表空间(数据文件约莫5~20个)SQLalterdatabasedatafile’/u01/a.dat’resize80M;扩大数据文件巨细扩大表空间SQLalterdatabasedatafile’/u01/a.dat’autoextendonmaxsize100M;设置主动扩大参数以主动扩大表空间删除表空间SQLdroptablespacetestincludingcontentsanddatafiles;删除表空间和数据文件
表空间分类表空间次要分为体系表空间(system、sysaux),数据表空间(user),回滚表空间(undotbs),一时表空间(temp)。1、体系表空间每一个数据库都必需具有一个system表空间,该表空间是在数据库创立或数据库安装时主动创立的,称号不克不及变动,任什么时候候均必需坚持online形态,用于存储体系的数据字典表,程序体系单位,历程函数,包和触发器等,也可用于存储用户数据表,索引工具。为制止体系表空间发生磁场碎片和争用体系资本的成绩,应独自创立最少一个自力的表空间用来独自抽出用户数据。sysaux表空间也随数据库的创立而创立,是system表空间的帮助表空间,次要存贮存放撑持oracle体系举动的多种工具如logminer等,sysaux下降了system表空间的负荷。2、数据和索引表空间由用户在数据创建终了自行创立,是数据库空间的最次要构成部分,数据表空间应当创建多个,创建分歧用户及性子的数据库工具时应指定其寄存在指定的数据表空间中,索引表空间也应创建多个,并分类将分歧工具的索引按巨细及会见频度分离指定寄存到指定的数据表空间中。一般情形下,数据和索引表空间应创建得当多个,太少则单个表空间过年夜,数据不平安且复兴费时,太小则难办理。数据库创立时默许创立users表空间,包括一个数据文件user01.dbf,新建用户的未指定存储表空间时默许利用该表空间。3、回滚表空间undo数据又称回滚(rollback)数据,用户确保数据的分歧性,当实行DML操纵时,事件操纵前的数据被称undo纪录,undo表空间用于保留undo纪录。undo表空间用户保留undo纪录,是数据库空间的最关头的构成部分,其对数据库的运转影响很年夜。数据库创立时默许创建一个回滚段表空间undotbs1,包括一个数据文件undotbs01.dbs。SQLshowparameterundo;
4、一时表空间一时表空间(temptablespace)次要用于存储oracle数据库运转时代所发生的汗青数据,及用于举行排序。数据库封闭后,一时表空间中一切数据将全体被扫除,故一时表空间外埠其他一切表空间都属于永世性表空间数据库创立时默许创建一一时表空间temp。包括一数据文件temp01.dbf,关于年夜型操纵频仍的情况,应创建多个一时表空间,并分离回属分歧一时表空间,以免多用户及多义务合作该一时表空间检察体系默许一时表空间及对应数据文件SQLselecttablespace_namefromdba_tablespaces;SQLselect*fromdba_temp_files;解决方案提供商开始推动DBaaS浪潮之前,他们应该深入了解究竟什么是DBaaS。

灵魂腐蚀 发表于 2015-1-19 05:06:55

很多书籍啊,不过个人认为看书太慢,还不如自己学。多做实际的东西,就会遇到很多问题,网上搜下解决问题。不断重复这个过程,在配合sql的F1功能。

因胸联盟 发表于 2015-1-26 16:13:35

你觉得我的非分区索引无法对起子分区,你可以提醒我一下呀!没有任何的提醒,直接就变成了非分区表。不知道这算不算一个bug。大家也可以试试。

愤怒的大鸟 发表于 2015-2-4 20:08:15

外键的级联更能扩展可能大部分的同行在设计OLTP系统的时候都不愿意建立外键,都是通过程序来控制父子数据的完整性。

飘飘悠悠 发表于 2015-2-10 06:40:36

语句级快照和事务级快照终于为SQLServer的并发性能带来了突破。个人感觉语句级快照大家应该应用。事务级快照,如果是高并发系统还要慎用。如果一个用户总是被提示修改不成功要求重试时,会杀人的!

深爱那片海 发表于 2015-3-1 02:44:27

在select语句中可以使用groupby子句将行划分成较小的组,然后,使用聚组函数返回每一个组的汇总信息,另外,可以使用having子句限制返回的结果集。

谁可相欹 发表于 2015-3-10 12:29:21

代替了原来VB式的错误判断。比Oracle高级不少。

变相怪杰 发表于 2015-3-17 07:11:07

数据库物理框架没有变动undo和redo都放在数据库得transaction中,个人感觉是个败笔。如果说我们在设计数据库的时候考虑分多个数据库,可能能在一定程度上避免I/O效率问题。

仓酷云 发表于 2015-3-24 02:06:11

其中最有名的应该是row_number了。这个终于解决了用临时表生成序列号的历史,而且SQLServer2005的row_number比Oracle的更先进。因为它把Orderby集成到了一起,不用像Oracle那样还要用子查询进行封装。
页: [1]
查看完整版本: MYSQL网站制作之oracle物理布局和逻辑布局