四、修改表空间
不论是字典管理表空间还是本地管理表空间,在表空间被创建之后都可以进行修改。可以使用ALTER TABALESPACE来修改表空间。相应的,用户
必须拥有ALTER TABLESPACE或ALTER DATABASE系统权限才能够修改表空间。
(一)扩展表空间
表空间在物理上是由保存在磁盘上的数据文件组成的。创建数据文件时会指定大小,因此表空间是有大小的。为了给用户提供更大的表空间,
以便使其可以继续增加数据,就必须能够扩展表空间,即增加更多存储空间。通常扩展表空间的方法有添加数据文件、改变数据文件的大小、
允许数据文件自动扩展这三种方式。
(1)添加数据文件
因为表空间的大小实际上就是它所包含的各个数据文件的大小和,所以为表空间增加新的数据文件是最常用的扩展表空间的办法。
注意:不能为大文件表空间增加第二个数据文件。
ALTER TABLESPACE mytbs01 ADD DATAFILE 'e:\mytbs01_2.dbf' SIZE 3M;
与普通表空间不同,如果要为临时表空间添加新的临时数据文件,就必须使用ALTER TABLESPACE...ADD TEMPFILE语句。
ALTER TABLESPACE mytmptbs01 ADD TEMPFILE 'e:\mytmptbs01_2.dbf' SIZE 3M;
(2)改变数据文件的大小
通过增加表空间中已有数据文件的大小,也可以增加表空间的存储空间。
ALTER DATABASE DATAFILE 'e:\mytbs01_2.dbf' RESIZE 4M;
与普通表空间不同,如果要改变临时表空间的临时文件的大小,就必须使用ALTER DATABASE TEMPFILE...RESIZE语句。
当数据文件中的可用空间未使用完时,允许减小它的大小,即进行压缩。
(3)允许数据文件自动扩展
如果在创建表空间或为表空间增加数据文件时,没有在数据文件子句中指定AUTOEXTEND选项,则该数据文件的大小是不会自动扩展或增加的。
为了是数据文件可以自动扩展,就必须指定AUTOEXTEND ON选项。在指定了AUTOEXTEND ON选项后,当表空间被填满时,数据文件就会自动扩展
,从而就间接的增加了表空间的存储空间。
ALTER DATABASE DATAFILE 'e:\mytbs01_2.dbf' AUTOEXTEND ON NEXT 1M MAXSIZE 20M;
(二)修改属性、状态
(1)修改表空间的可用性
新创建的表空间都处于联机(ONLINE)状态。此时该表空间是可以被访问的。但当表空间处于脱机(OFFLINE)状态时,该表空间就不能被SQL语句
访问了。因此,表空间是否联机,表明了表空间是否可用。
修改表空间可用性的语法是:
ALTER TABLESPACE ONLINE|OFFLINE [NORMAL|TEMPORARY|IMMEDIATE|FOR RECOVER];
使表空间脱机
为了提高数据文件的I/O性能,可能需要移动特定表空间的数据文件。为了确保表空间中数据文件的一致性,在移动数据文件之前,需要将该表
空间修改为脱机状态,以防止其中的数据文件被修改。
SYSTEM,SYSAUX,TEMP,UNDOTBS1表空间是不能被脱机的,因为ORACLE要随时使用这几个表空间。
当表空间修改为脱机状态后,与其相关的数据文件的SCN值和内容都不会发生任何变化。
ALTER TABLESPACE mytbs01 OFFLINE;
当表空间处于脱机状态时,就不能访问该表空间了,否则会有错误的提示。
ALTER TABLESPACE mytbs01 ONLINE;
ALTER TABLESPACE mytbs01 OFFLINE TEMPORARY;
ALTER TABLESPACE mytbs01 ONLINE;
要在ARCHIVELOG模式下执行立即脱机模式。
使表空间联机
完成其他对表空间的维护操作后,应该立即将表空间转变为ONLINE状态,以便该表空间可以被访问。
ALTER TABLESPACE mytbs01 ONLINE;
(2)修改表空间的可读写性
修改表空间的可读写包括使表空间只读和使表空间可读写。
使表空间只读
如果表空间值用于存放静态数据,或者要将表空间移动到其他数据库,就应该先将表空间修改为只读状态。
SYSTEM,SYSAUX,TEMP,UNDOTBS1这几个表空间不能被只读,因为ORACLE要随时向这几个表空间写入数据。
将表空间吸怪为只读状态后,与其相关的数据文件中的SCN值和内容都不会发生任何变化。
ALTER TABLESPACE mytbs01 READ ONLY;
当表空间处于READ ONLY状态时,就不能对该表空间操作了,否则会有错误提示。
当表空间处于只读状态时,仍然允许执行DROP 操作删除该表空间上的对象。
DROP TABLE personal CASCADE CONSTRAINTS;
表空间的可读写状态在脱机之后仍然保留,换句话说就是练级后的其可读写性仍然存在。
如果表空间处于脱机状态,就不能修改它的可读写状态,否则将会有错误提示信息。
使表空间可读写
正常情况下,表空间是可读写的,即可以在该表空间上执行正常的DDL和DML操作。
ALTER TABLESPACE mytbs01 READ WRITE;
(3)修改表空间的备份模式
如果执行非RMAN(RON-RECOVERY MANAGER)联机备份,即在ARCHIVELOG模式下的热备份,则需要修改表空间的备份模式。
首先执行ALTER TABLESPACE tablespace_name BEGIN BACKUP语句,将表空间tablespace_name设置成备份模式,类似于系统给需要备份的表空
间加锁,防止在备份过程中用户对此表空间进行操作。当表空间处于备份模式时,数据库继续写数据到数据文件(当检查点出现时),但这些检
查点的出现不被记录到数据文件的头部块中。这就告诉数据库,图过数据库例程被突然中断,就可能需要恢复。如果有必要,一些附加的信息
会被写入重做日志文件,以便有助于恢复。
然后使用一些操作系统的命令程序,将该表空间中的各个数据文件都备份到某些文件夹中或存储设备上。
最后执行ALTER TABLESPACE tablespace_name END BACKUP语句,将表空间tablespace_name设置成结束备份模式,类似于系统给正在备份的表
空间解锁,以便用户对此空间进行操作。如果忘记了将表空间设置成结束备份模式,则下一次启动数据库时,数据库将会看到控制文件中的检
查点号晚于数据文件头部块中的检查好,并提示一个需要进行介质恢复的信息。
(4)修改表空间的名称
通过使用ALTER TABLESPACE的RENAME选项,DBA就可以修改表空间的名称。在ORACLE 9I之前,移动表空间时,如果在目标数据库中存在同名表
空间,那么该表空间将不能被移动到目标数据库;而在ORACLE 10G中,如果目标数据库存在同名表空间,可以先使用ALTER TABLESPACE命令修
改源数据库或目标数据库的相应表空间名,然后再移动表空间。
SYSTEM,SYSAUX,TEMP,UNDOTBS1表空间的名称不能被移动。
ALTER TABLESPACE mytbs01 RENAME TO mytbs01_new;
当表空间或其任何数据文件爱你处于OFFLINE状态时,不能修改表空间的名称。
(5)设置、查询默认表空间
在创建数据库用户时,如果没有用DEFAULT TABLESPACE选项指定默认表空间,则使用数据库的默认表空间。如果没有用DEFAULT TEMPORARY
TABLESPACE选项指定临时表空间,则使用数据库的默认临时表空间。在ORACLE 10G中,初始的默认临时表空间是TEMP,而默认表空间随用户的
不同而不同。
设置数据库默认表空间
可以使用ALTER DATABASE DEFAULT TABLESPACE语句,修改数据库的默认表空间。
ALTER DATABASE DEFAULT TABLESPACE mytbs01;
设置数据库默认临时表空间
可以使用ALTER DATABASE DEFAULT TEMPORARY TABLESPACE语句,修改数据库的默认临时表空间按。
ALTER DATABASE DEFAULT TEMPORARY TABLESPACE mytmptbs01;
查询数据库的默认表空间
可以使用以下语句查询当前数据库的默认表空间。
SELECT username,default_tablespace,temporary_tablespae FROM DBA_UERS;
永久表空间与临时表空间是有区别的,所以如果就爱你个一个永久表空间设置为数据库的临时表空间就会有错误提示。
相关推荐
VisionPro工具中文含义与对应编程命名空间路径列表
后台管理员信息添加、修改、删除; 11. 增加投票码证码,防止恶意刷分; 12. 数据库备份; 14. 音乐播放器嵌入首页Flash中,后台加管理面板,只要把音乐地址输入即可。 15. 全新安装:把install.php文件...
10. 后台管理员信息添加、修改、删除; 11. 增加投票码证码,防止恶意刷分; 12. 数据库备份; 14. 音乐播放器嵌入首页Flash中,后台加管理面板,只要把音乐地址输入即可。 15. 全新安装: 把install.php文件...
VS项目整体重命名工具 不再为项目重命名和修改命名空间而烦恼 一.介绍 1.虽然说我们平常不会经常出现项目重命名的情况,但是一旦出现,修改起来还是一项比较大的工程,并且还不一定修改完整。 2.当团队发展到一定...
[Java] 对象类型转换和运算符 instanceof 学习笔记 欢迎大家收看 把简单的问题变复杂系列 : ) 一、类型转换使用的情景: 在需要将一个继承链下把一个类的...内存区别:对象被实例化后要开辟内存空间,而引用对象
此处管理员权限的功能设计定要引用到大量的数据库操作,这就需要考虑到为虚拟班级分配系统存储空间,建立数据库表。那么,选择数据库,创建数据库用户和表,建立与数据库的连接,使用SQL语言操作数据库就是系统后台...
System.Web”中不存在类型或命名空间名称script /找不到System.Web.Extensions.dll引用 添加引用就行了…“添加引用→.Net→System.Web.Entensions.dll”;然后再项目文件中再“using System.Web.Script....
10.5.2 创建恢复目录所用的表空间 10.5.3 创建RMAN用户并授权 10.5.4 创建恢复目录 10.5.5 注册目标数据库 10.5.6 使用RMAN程序进行备份 10.5.7 使用RMAN程序进行恢复 10.6 自动备份与恢复 10.6.1 闪回数据库...
如果我们定义了不止一个引用指向同一个对象,那么这些引用是不相同的,因为引用也是一种数据类型,需要一定的内存空间来保存。但是它们的值是相同的,都指示同一个对象在内存的中位置。比如 String a = "Hello"; ...
一步半.Net企业公司网站管理系统,编码UTF-8 (支持国外服务器)数据库类型 ACCESS 暂不可生成Html静态页面,后台暂不可以模版管理,空间必需支持 .NET Framework 3.5 环境下运行 (.NET Framework 1.1 2.0下无法运行)。...
15.2.5. 创建InnoDB表空间 15.2.6. 创建InnoDB表 15.2.7. 添加和删除InnoDB数据和日志文件 15.2.8. InnoDB数据库的备份和恢复 15.2.9. 将InnoDB数据库移到另一台机器上 15.2.10. InnoDB事务模型和锁定 15.2.11. ...
此处管理员权限的功能设计定要引用到大量的数据库操作,这就需要考虑到为虚拟班级分配系统存储空间,建立数据库表。那么,选择数据库,创建数据库用户和表,建立与数据库的连接,使用SQL语言操作数据库就是系统后台...
1.3.5 表空间 1.3.6 段 1.3.7 区 1.3.8 数据块 1.4 Oracle 11g的新特性 1.4.1 数据库管理部分 1.4.2 PL/SQL部分 1.4.3 其他部分 第2章 Oracle在Windows平台上的安装与配置 2.1 Oracle通用安装器 2.2 Oracle数据库...
1.3.5 表空间 1.3.6 段 1.3.7 区 1.3.8 数据块 1.4 Oracle 11g的新特性 1.4.1 数据库管理部分 1.4.2 PL/SQL部分 1.4.3 其他部分 第2章 Oracle在Windows平台上的安装与配置 2.1 Oracle通用安装器 2.2 Oracle数据库...
10.5.2 创建恢复目录所用的表空间 10.5.3 创建RMAN用户并授权 10.5.4 创建恢复目录 10.5.5 注册目标数据库 10.5.6 使用RMAN程序进行备份 10.5.7 使用RMAN程序进行恢复 10.6 自动备份与恢复 10.6.1 闪...
例如把2008转成2005之后,还需要自己手动删除项目内.NET Framework 3.5相关的引用,把那些引用删改之后,项目才可以进行编译编译。(因为2008默认使用.NET Framework 3.5,而2005默认使用.NET Framework 2.0,所以...
注意,如果是选择了专门建立toad这个用户的话,需要先修改一下脚本,指定用户的默认表空间和临时表空间。 需要使用Oracle8i 的Profile analyzer,必须运行ToadProfiler.sql 需要加强Toad的安全性,必须...
5.7.7. 权限更改何时生效 5.7.8. 拒绝访问错误的原因 5.7.9. MySQL 4.1中的密码哈希处理 5.8. MySQL用户账户管理 5.8.1. MySQL用户名和密码 5.8.2. 向MySQL增加新用户账户 5.8.3. 从MySQL删除用户账户 5.8.4....
达梦数据库_SQL语言手册.pdf ...格,而后者只占用实际的字节空间。 表 数据库页面大 实际最大长度 注:这个限制长度只针对建表的情况,在定义变量的时候,可以不受这个限制长度的限 制 数值数据类型
引用Microsoft.Win32命名空间下的Registry类 修改注册表来实现禁用任务管理器