下面是详细讲解“六分钟学会创建Oracle表空间的实现步骤”的完整攻略。
1. 准备工作
在开始创建Oracle表空间之前,需要先准备好以下基础工作:
- 已经安装Oracle数据库软件;
- 已经创建好了Oracle实例并启动;
- 已经以SYS用户登录到Oracle实例。
2. 创建表空间
创建表空间的语法如下所示:
CREATE TABLESPACE 表空间名称
DATAFILE '数据文件路径'
SIZE 大小 [AUTOEXTEND ON [NEXT 大小] [MAXSIZE 最大大小]]
[DEFAULT STORAGE
(
INITIAL 大小 K/M,
NEXT 大小 K/M,
MINEXTENTS 数量,
MAXEXTENTS 数量
)]
[PERMANENT | TEMPORARY]
[EXTENT MANAGEMENT {DICTIONARY | LOCAL}
[(SEGMENT SPACE MANAGEMENT {AUTO | MANUAL})]];
其中,各个参数的意义如下:
表空间名称
:所要创建的表空间名称,必须符合Oracle的命名规范;数据文件路径
:数据文件的存储路径,要求存储路径在本地,不建议使用网络存储路径;大小
:数据文件的初始大小,单位是K
或M
;AUTOEXTEND ON
:表示自动扩展表空间;NEXT 大小
:自动扩展时,每次扩展的大小;MAXSIZE 最大大小
:表空间的最大大小限制;INITIAL 大小
:表示每个新创建的段将会分配给表空间的空间大小,单位是K
或M
;NEXT 大小
:表示当空间不够时,分配给段的下一个空间大小,单位是K
或M
;MINEXTENTS 数量
:表空间的最小扩展单位;MAXEXTENTS 数量
:表空间的最大扩展单位;PERMANENT
:表示永久表空间;TEMPORARY
:表示临时表空间;DICTIONARY
:利用数据字典管理表空间;LOCAL
:使用本地管理表空间;AUTO
:自动分配段空间;MANUAL
:手动分配段空间。
下面是使用示例:
CREATE TABLESPACE EXAMPLE
DATAFILE '/opt/oracle/oradata/ORCL/example.dbf'
SIZE 100M
AUTOEXTEND ON
NEXT 50M
MAXSIZE 500M
DEFAULT STORAGE
(
INITIAL 12K,
NEXT 12K,
MINEXTENTS 2,
MAXEXTENTS 4
)
PERMANENT
EXTENT MANAGEMENT LOCAL
SEGMENT SPACE MANAGEMENT AUTO;
以上示例中,创建了一个名为EXAMPLE
的永久表空间,存储路径为/opt/oracle/oradata/ORCL/example.dbf
,初始大小为100M
,自动扩展并限制最大为500M
,以12K
为单位分配空间,每次分配12K
,最小扩展单位为2
,最大扩展单位为4
,使用本地管理表空间,自动分配段空间。
3. 给用户授权
创建好表空间之后,需要将其授权给用户。授权的语法如下所示:
GRANT CREATE SESSION,
CREATE TABLE,
ALTER TABLESPACE,
UNLIMITED TABLESPACE
TO 用户名;
其中,用户名
为所要授权的用户名称。以上示例授权用户具有创建会话、创建表、修改表空间和无限制表空间的权限。
4. 查看表空间
创建好表空间之后,可以通过以下语句查看表空间信息:
SELECT TABLESPACE_NAME,
FILE_NAME,
BYTES/1024/1024 AS DATA_FILE_SIZE_MB,
AUTOEXTENSIBLE,
MAXBYTES/1024/1024 AS MAX_SIZE_MB
FROM DBA_DATA_FILES;
以上语句将会显示所有表空间的名称、数据文件路径、数据文件大小、是否自动扩展和最大大小限制。
5. 示例说明
示例1
假设我们要创建一个名为TEST
的永久表空间,存储路径为/opt/oracle/oradata/ORCL/test.dbf
,初始大小为50M
,以8K
为单位分配空间,每次分配8K
,最小扩展单位为1
,最大扩展单位为10
,使用本地管理表空间,自动分配段空间。
那么,创建该表空间的语句如下所示:
CREATE TABLESPACE TEST
DATAFILE '/opt/oracle/oradata/ORCL/test.dbf'
SIZE 50M
AUTOEXTEND ON
NEXT 8M
MAXSIZE 500M
DEFAULT STORAGE
(
INITIAL 8K,
NEXT 8K,
MINEXTENTS 1,
MAXEXTENTS 10
)
PERMANENT
EXTENT MANAGEMENT LOCAL
SEGMENT SPACE MANAGEMENT AUTO;
示例2
假设我们已经创建了一个名为TEST
的永久表空间,并将其授权给名为HR
的用户。现在我们要查看TEST
表空间的信息。
那么,执行以下语句即可:
SELECT TABLESPACE_NAME,
FILE_NAME,
BYTES/1024/1024 AS DATA_FILE_SIZE_MB,
AUTOEXTENSIBLE,
MAXBYTES/1024/1024 AS MAX_SIZE_MB
FROM DBA_DATA_FILES
WHERE TABLESPACE_NAME = 'TEST';
以上语句将会显示TEST
表空间的名称、数据文件路径、数据文件大小、是否自动扩展和最大大小限制。
以上就是创建Oracle表空间的实现步骤以及两条示例说明的详细攻略,希望能对您有所帮助。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:六分钟学会创建Oracle表空间的实现步骤 - Python技术站