增⼤mysql修改表空间_扩充数据库表空间
ALTER TABLESPACE ADD DATAFILE ,
[REUSE]
NEXT MAXSIZE <>中是你要填的内容,有|是选其⼀.
如:增加⽂件是d:\dbfs\mydatabase02.dbf的200M的表空间。
ALTER TABLESPACE ADD DATAFILE 'd:\dbfs\mydatabase02.dbf',
200M
Oracle 概念(Oracle 10.2)
3、表空间、数据⽂件和控制⽂件
这⼀章描述了Oracle数据库的主要逻辑数据库结构---表空间以及其对应的数据⽂件。
本章包含下列内容:
u表空间、数据⽂件和控制⽂件介绍
u表空间概述
u数据⽂件概述
u控制⽂件概述
表空间、数据⽂件和控制⽂件概述
Oracle数据库逻辑上在表空间保存数据,物理上在表空间对应的数据⽂件保存数据。图3-1描述了其中的关系。
图3-1 数据⽂件和表空间
数据库、表空间和数据⽂件紧密关联,但是它们还是有重要的区别:
u⼀个Oracle由⼀个或多个逻辑存储单位组成,这些单位叫做表空间,表空间负责保存数据库所有的数据。
uOracle数据库的每个表空间由⼀个或多个叫做数据⽂件的⽂件组成,数据⽂件是Oracle所运⾏的操作系统上的⽂件。
u⼀个数据库的数据存储在构成数据库中表空间的数据⽂件上。例如,⼀个最简单的数据库可能只有⼀个表空间和⼀个数据⽂件。另⼀个数据库可能拥有三个表空间,每个有两个数据⽂件(整体上就是六个数据⽂件)。
Oracle管理⽂件
Oracle管理⽂件减少了DBA直接管理组成Oracle数据库的操作系统⽂件的必要性。你可以基于数据库对象⽽不是⽂件名称来指定操作。Oracle内部使⽤标准的操作系统接⼝来创建和删除下列数据库构件需要的⽂件:
u表空间
u重做⽇志⽂件
u控制⽂件
通过初始化参数,你可以指定特定类型⽂件使⽤的⽂件系统⽬录。Oracle就可以在创建和删除不需要的⽂件时确定唯⼀的⼀个Oracle管理的⽂件。
为数据库分配更多的空间
表空间的⼤⼩就是组成表空间的数据⽂件的⼤⼩之和。数据库的⼤⼩是组成数据库的表空间的⼤⼩总和。
你可以⽤三种⽅式扩充数据库:
u为表空间增加数据⽂件
u增加新的表空间
u增加数据⽂件的⼤⼩
当你增加了⼀个数据⽂件到⼀个现存的表空间中,你就增加了分配给对应表空间的磁盘空间⼤⼩。图3-2说明了这类型的空间增长。
图3-2 通过给表空间增加数据⽂件的⽅式扩充数据库
同样,你可以创建⼀个新的表空间(包含⾄少⼀个数据⽂件)来提⾼数据库的⼤⼩。图3-3说明了这种情况。
图3-3 通过增加表空间扩充数据库
扩充数据库的第三种办法就是修改数据⽂件的⼤⼩或者使允许现存表空间的数据⽂件在有⾜够空间的情况下根据需要动态增长。可以通过调整现在⽂件⼤⼩或者为⽂件增加⾃动扩展属性来达到上述⽬的。图3-4说明了这种情况。
图3-4 通过动态扩充数据⽂件来扩充数据库
表空间概述
⼀个数据库由⼀个或多个叫做表空间的逻辑存储单位组成。表空间有过个叫做段的逻辑存储单位组成,段由多个区段组成。区段由⼀系列连续的块组成。
这⼀部分包含表空间的下列话题:
u⼤⽂件表空间
uSYSTEM表空间
uSYSAUX表空间
uUndo表空间
u默认临时表空间
u使⽤多种表空间
u表空间空间管理
u多个块⼤⼩
u在线和离线表空间
u只读表空间
u临时表空间的排序操作
u数据库之间的表空间传送
⼤⽂件表空间
Oracle允许你创建⼤⽂件表空间。这允许Oracle数据库包含由⼀个⼤⽂件⽽不是多个⼩⽂件组成的表空间。这使得Oracle可以利⽤64位系统的优势来创建和管理超⼤⽂件。这样的结果是Oracle数据库可以扩⼤⾄8EB(1EB = 1,073,741,824 (1024**3)GB)。
在Oracle管理⽂件的情况下,⼤⽂件表空间使得数据⽂件对⽤户来说完全透明。换句话说,你可以在表空间上执⾏操作,⽽不是在底层的数据⽂件上操作。⼤⽂件表空间使得表空间成为磁盘空间管理、备份、恢复等等的主要单位。⼤⽂件表空间还简化了Oracle管理⽂件和⾃动存储管理的⽂件管理,因为它降低了增加新⽂件和处理多个⽂件的必要性。
系统默认是创建⼀个⼩⽂件表空间,这也是Oracle表空间的传统格式。SYSTEM和SYSAUX表空间总是创建为系统默认类型。
⼤⽂件表空间只⽀持使⽤⾃动段空间管理的本地管理表空间的情况。不过也有两个例外:本地管理的undo表空间和临时表空间即使在段空间⼿动管理的情况下也可以是⽤⼤⽂件表空间。
⼀个Oracle数据库可以同时包含⼤⽂件和⼩⽂件表空间。表空间的不同类型对于执⾏没有明确指定数
据⽂件的SQL语句来说是没有多⼤区别。
wifi密码忘记了怎么办你可以创建⼀个临时表空间组,这样⼀个⽤户就可以从多个表空间获得临时空间了。表空间组也可以指定为数据库的默认临时表空间。这对于⼤⽂件表空间很有⽤,这⾥你可能需要⼤量的临时表空间来进⾏排序。
⼤⽂件表空间的优点
u⼤⽂件表空间可以有效的提⾼⼀个Oracle数据库的存储容量。⼩⽂件表空间能够包含1024个数据⽂件,但是⼤⽂件表空间可以只包含⼀个1024倍⼩⽂件表空间⼤⼩的⽂件。⼩⽂件表空间和⼤⽂件表空间总容量是相同的。虽然如此,由于存在⼀个数据库数据⽂件数不能超过64K的限制,⼀个包含⼤⽂件表空间的数据库可以1024倍⼩⽂件表空间的数据库,所以⼤⽂件表空间提升了整个数据库容量达3个数量级。换句话说,当⽂件表空间使⽤最⼤块⼤⼩(32K)时,Oracle数据库的最⼤尺⼨是8EB。
u超⼤规模的数据库中使⽤⼤⽂件表空间可以简化数据⽂件的管理,因为它降低了需要数据⽂件的数⽬。你也可以调整参数来减少数据⽂件信息需要的SGA空间和控制⽂件的⼤⼩。
u通过数据⽂件透明来简化了数据库管理。
使⽤⼤⽂件表空间应该注意
u⼤⽂件表空间倾向于在⾃动存储管理或者其他的⽀持⾃动扩展的逻辑卷和条带化的逻辑卷管理或者RAID的情况下使⽤。
u避免在不⽀持条带化的系统上创建⼤⽂件数据库。因为它不⽀持并发执⾏和并发RMAN备份。
u避免在下列情况下使⽤⼤⽂件表空间:磁盘组中没有⾜够的空闲空间,只能通过在另外⼀个磁盘组中增加数据⽂件的⽅式扩展表空间。
u不推荐在不⽀持⼤⽂件尺⼨的平台上使⽤⼤⽂件数据库,因为这会限制表空间容量。参考你的操作系统规格⽂档来获得⽀持的最⼤的⽂件⼤⼩的信息。
u在⼤⽂件表空间上⽽不是在传统表空间上保存数据,可以提⾼数据库打开、检查点和DBWR进程的性能。虽然如此,提⾼数据⽂件⼤⼩可能会增加创建⼀个新数据⽂件或者恢复⼀个被破坏的数据⽂件所需的时间。
SYSTEM表空间
每个Oracle数据库创建时都会⾃动创建⼀个SYSTEM表空间。SYSTEM表空间在数据库打开时总是在线。
剑网3 任务为利⽤本地管理表空间的优势,你可以创建本地管理SYSTEM表空间,或者你可以将现存的字典管理的SYSTEM表空间迁移为本地管理格式。
在包含本地管理SYSTEM表空间的数据库中,⽆法创建字典管理表空间。虽然可以使⽤表传送功能来附加⼀个字典管理的表空间,但是它也是不能写⼊的。
数据字典
SYSTEM表空间包含着整个数据库的所有数据字典表。数据字典表保存在编号为1的数据⽂件上。
PL/SQL程序单位描述
PL/SQL程序单位(如过程、函数、包和触发器)的所有数据在保存在SYSTEM表空间上。如果数据库包含这些程序单位,数据库管理员必须在SYSTEM表空间中提供这些单位需要的空间。
SYSAUX表空间
寻物启事标准范文SYSAUX表空间是SYSTEM表空间的辅助。许多数据库组件使⽤SYSAUX表空间作为它们的默认位置来保存数据。因为在数据库创建或者升级时总会创建SYSAUX表空间。
SYSAUX表空间集中存储不包含在SYSTEM表空间中的数据库元数据。它降低了默认需要创建的表空间数量,不论在标准数据库还是⽤户⾃定义的数据库中都是如此。
在通常的数据库操作中,Oracle数据库服务器不允许删除或重命名SYSAUX表空间。也不⽀持SYSAUX的表空间传送。
Undo表空间
Undo表空间是⽤来存储undo信息的特定表空间。你不能在undo表空间上创建任何其他段类型(如表或者索引)。每个数据库包含0个或多个undo表空间。在⾃动undo管理模式下,每个Oracle实例会分配⼀个(只有⼀个)undo表空间。Undo数据在undo表空间的undo中管
理,undo段由Oracle⾃动创建和管理。
当事务中的第⼀个DML操作运⾏时,事务会在当前undo表空间中绑定(分配)⼀个undo段(或者说事务表)。极少情况下,如果实例没有分配⼀个指定的重做表空间,事务会绑定到system undo段上。
每个undo表空间有⼀系列undo⽂件组成,采取本地管理⽅式。和其他类型的表空间⼀样,undo块组成区段,区段的状态在位图中展现。在任何时间点上,⼀个区段或者空闲,或者分配给⼀个事务表。
你可以创建⼤⽂件undo表空间。
创建undo表空间
数据库管理员可以使⽤CREATE UNDO TABLESPACE语句来创建undo表空间。它也可以使⽤CREATE DATABASE创建数据库时创建。新创建的undo表空间会包含⼀系列的⽂件。和通常的表空间⼀样,可以通过ALTER TABLESPACE和DROP TABLESPACE来调整和删除表空间。
Undo表空间的分配
你可以通过两种⽅式给⼀个实例分配⼀个undo表空间:
u实例启动,你可以在初始化⽂件中指定undo表空间或者让系统选择⼀个可⽤的undo表空间。
六年级英语上册教学计划u当实例运⾏时,使⽤ALTER SYSTEM SET UNDO_TABLESPACE来⽤另外⼀个undo表空间来代替活动的undo表空间。这种⽅式很少采⽤。
你可以使⽤ALTER TABLESPACE命令来给undo表空间增加更多的数据⽂件来扩展undo表空间的空间。
你可以拥有多个undo表空间,在它们中间来切换。使⽤数据库资源管理器来构建每个⽤户undo表空间的限额。你可以指定undo信息的持续周期。
默认临时表空间
圆规台风路径当SYSTEM表空间采取本地管理⽅式时,你必须在创建数据库时指定⾄少⼀个默认临时表空间。本地管理的SYSTEM表空间不能作为默认临时存储使⽤。
如果SYSTEM是字典管理模式,你在创建数据库时可以不指定默认临时表空间,然后SYSTEM作为默认临时存储使⽤。即使如此,你会在ALERT.LOG中收到⼀个警告,推荐使⽤⼀个默认的临时表空间,⽽且在将来的版本中是必须的。
怎么消灭蟑螂如何指定默认临时表空间
在创建数据库的语句CREATE DATABASE的字句DEFAULT TEMPORARY TABLESPACE字句来指定默认临时表空间。
使⽤多个表空间
⼀个⾮常⼩的数据库可能只需要⼀个SYSTEM表空间;虽然如此,Oracle推荐你⾄少创建⼀个额外的表空间来单独保存⽤户数据,这样⽤户数据和数据字典信息是分离的。这样让你在管理不同的数据库操作时有更多的灵活性,并且降低了保存在同⼀个数据⽂件上字典对象和模式对象的争⽤。
你可以使⽤多个表空间来执⾏下列任务:
u对数据库数据控制磁盘空间分配
u针对数据库⽤户分配指定的空间限额
u通过将单个表空间离线或者在线控制数据的可见性
u执⾏部分数据库的备份和恢复操作
u跨设备存储数据来提⾼性能
数据库管理员可以对表空间做如下操作:
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论