Oracle 表空间的概念
表空间 ? 在数据库系统中,存储空间是较为重要的资源,合理利用空间,不但能节省空间,还可以提高系统的效率和工作性能。 Oracle 可以存放海量数据,所有数据都在数据文件中存储。而数据文件大小受操作系统限制,并且过大的数据文件对数据的存取性能影响非常大。同时Oracle 是跨平台的数据库, Oracle 数据可以轻松的在不同平台上移植,那么如何才能提供统一存取格式的大容量呢? Oracle 采用表空间来解决。 ? ? Oracle 中所有的数据(包括系统数据),全部保存在表空间中,常见的表空间有: ??系统表空间:存放系统数据,系统表空间在数据库创建时创建。表空间名称为 ? 创建表空间 ? --创建表空间 linux centos6.9 --创建一个表空间,包含两个数据文件大小分别是 10MB, 5MB,要求 extent 的大小统一为 1M CREATE TABLESPACE nod_tablespace DATAFILE ‘/home/oracle/tablespace/A.ORA‘ SIZE 10M, ‘/home/oracle/tablespace/B.ORA‘ SIZE 5M EXTENT MANAGEMENT LOCAL UNIFORM SIZE 1M ? ? windows版本创建表空间 请注意:只有管理员才可以增加表空间 当表空间不足的时候可以用alter tablespace命令向表空间中追加数据文件并扩充表空间 修改表空间大小 --扩充表空间 ? ? ALTER TABLESPACE nod_tablespace ADD DATAFILE ‘/home/oracle/tablespace/C.ORA‘ SIZE 100M ? --查看表空间情况 SELECT SUM(bytes) / (1024 * 1024) AS free_space,tablespace_name FROM dba_free_space GROUP BY tablespace_name; ? 创建用户时可以为用户指定某一表空间,那么该用户下所有数据库对象默认都存储在该空间中 指定用户的表空间为 create user nod identified by nod default tablespace nod_tablespace; ? 创建表指定表空间 create table t2(id int) tablespace nod_tablespace ? ? 表和索引一旦创建,表空间无法进行二次修改 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |