本篇文章给大家带来了关于Oracle的相关知识,其中主要介绍了关于表空间的相关问题,包括了表空间的创建、使用、重命名、删除等等内容,下面一起来看一下,希望对大家有帮助。 推
本篇文章给大家带来了关于Oracle的相关知识,其中主要介绍了关于表空间的相关问题,包括了表空间的创建、使用、重命名、删除等等内容,下面一起来看一下,希望对大家有帮助。
推荐教程:《Oracle视频教程》
oracle 表空间
解释:
Oracle表空间在逻辑结构上处于数据库之下。利用表空间可以更灵活地规划数据库结构。一个数据库可以包含多个表空间,每个表空间可以包含多个数据表。表空间会有独立地物理文件,这使得用户可以自行决定表空间地大小、位置等。
(1)创建Oracle表空间create tablespace test datafile 'D:Databasedatatest_data.dbf' size 20M
autoextend
on next 5M
maxsize 500M;解释:
创建表空间应该使用 create tablespace 命令; test:表空间名称; datafile ‘D:Databasedatatest_data.dbf’ :指定表空间的物理文件; size 20M :指定物理文件的初始大小 autoextend:指定当数据量超过物理文件的存储空间时,自动增加文件大小; on next 5M:指定每次增长的尺寸为5M; maxsize 500M:指定表空间的最大尺寸为500M;
注意:
datafile:这里的‘D:Databasedata’路径必须已经存在,否则无法创建表空间会报错; 执行SQL语句时,结尾的";"务必写上!!!
检验:select tablespace_name,file_name from dba_data_files order by file_name;
查询结果如图:
(2)表空间的使用
表空间很重要的一个作用就是规划数据表。也就是说,每个数据表都是某个表空间的子对象。数据表的真实数据也是存在于表空间的物理文件中。因此了解表空间的使用规则,对于明确Oracle数据库结构有着重要意义。
用户登录数据库后,在创建新的数据表时没有指定要将表创建于那个表空间时,都会将数据表自动创建于该用户的默认表空间。默认表空间相当于用户的工作空间。
获取数据库中所有用户的默认表空间select user_id,username,default_tablespace from dba_users order by username;
查询结果如图:
利用alter database 命令修改数据库的默认表空间alter database default tablespace test;
再次查询结果如图:
补充:
普通用户的默认表空间有两种来源: 一是创建用户时分配或后期手动修改; 二是从未进行分配或者修改动作,那么则使用数据库的默认表空间。 Oracle 11g数据库默认表空间未USERS,因此,未指定默认表空间而创建的用户,都使用表空间USERS。当修改数据库的默认表空间为TEST,哪些未指定默认表空间而创建的用户就会使用表空间TEST。
(3)表空间的重命名与删除表空间的重命名{将表空间‘test’重命名未test_data}alter tablespace test rename to test_data;查看数据库中的表空间:
查看数据库中所用用户的默认表空间:
删除表空间{删除表空间test_data}drop tablespace test_data including contents and datafiles;解释:
上述sql语句,用于删除表空间,并包含表空间中所有的内容和数据文件。
删除表空间的注意事项:
表空间不是任何数据表的默认表空间时,才可以删除,否则报错!!!
所以此时将默认表空间替换为USERS;alter database default tablespace "USERS";再次删除即可;
推荐教程:《Oracle视频教程》
以上就是图文解析oracle表空间的创建、使用、重命名与删除的详细内容,更多请关注每日运维其它相关文章!