加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

ORACLE-用户及表空间创建命令总结

发布时间:2020-12-12 14:55:16 所属栏目:百科 来源:网络整理
导读:博文说明【前言】: 本文将通过个人口吻介绍记录用户及表空间创建相关命令,在目前时间点【 2017年5月16号 】下,所掌握的技术水平有限,可能会存在不少知识理解不够深入或全面,望大家指出问题共同交流,在后续工作及学习中如发现本文内容与实际情况有所偏

博文说明【前言】:

本文将通过个人口吻介绍记录用户及表空间创建相关命令,在目前时间点【2017年5月16号】下,所掌握的技术水平有限,可能会存在不少知识理解不够深入或全面,望大家指出问题共同交流,在后续工作及学习中如发现本文内容与实际情况有所偏差,将会完善该博文内容。



正文:


一:创建表空间

此空间用用于数据存储【存储表、function、存储过程等,即存储数据结构以及真实数据,使用实际物理存储区域】



示例1:创建表空间和表空间初始数据文件


create tablespace xxxx_db

datafile '/u2/oradb/datafile/dsdb/xxx_db01.dbf' size 1024M REUSE

AUTOEXTEND ON --自动增长

NEXT 500M MAXSIZE 20G --限制最大容量(单个数据文件一般在10G~25G之间,不要超过32G)


--增加第二个数据文件,在硬盘空间允许的情况下,可继续增加。

alter tablespace xxxx_db add datafile

'/u2/oradb/datafile/dsdb/xxxx_db02.dbf' SIZE 1024M

AUTOEXTEND ON NEXT 500M MAXSIZE 20G;


命令解释:创建表空间:xxxx_db,数据文件物理存储路径为:/u2/oradb/datafile/dsdb/,数据文件初始大小为1G(1024M),当1G使用完毕之后,每个数据文件可自动扩展容量,每次扩展大小为500M,最大可扩展到20G。

注意:/u2/oradb/datafile/dsdb/为数据文件存储路径,物理路径可通过sql语句查询得出。

select file_id,

file_name,

round(bytes / (1024 * 1024),0) total_space

FROM dba_data_files

ORDER BY tablespace_name;


二:创建临时表空间

此空间用于管理数据库排序操作以及用于存储临时表、中间排序结果等临时对象,当ORACLE里需要用到SORT及其他需要存储临时数据的时候,并且当PGA中sort_area_size大小不够时,将会把数据放入临时表空间里进行排序。

当操作完成后,系统会自动清理临时表空间中的临时对象,自动释放临时段。这里的释放只是标记为空闲、可以重用,其实实质占用的磁盘空间并没有真正释放。这也是临时表空间有时会不断增大的原因。


示例2:创建临时表空间(可选,非必要,如果没有创建专用的临时表空间,则创建用户时,使用系统默认临时表空间就行。)


create temporary tablespace xxxx_temp_db --初始大小:10G

TEMPFILE '/u2/oradb/datafile/dsdb/xxxx_temp_db01.dbf' SIZE 1000M REUSE

AUTOEXTEND ON NEXT 200M MAXSIZE 10G;


命令解释:创建临时表空间:xxxx_temp_db,数据文件物理存储路径为:/u2/oradb/datafile/dsdb/,数据文件初始大小为1000M,当1000M使用完毕之后,每个数据文件可自动扩展容量,每次扩展大小为200M,最大可扩展到10G。

注意:/u2/oradb/datafile/dsdb/为数据文件存储路径,物理路径可通过sql语句查询得出。

select file_id,

file_name,

round(bytes / (1024 * 1024),0) total_space

FROM dba_data_files

ORDER BY tablespace_name;


三:创建用户


示例3:

1、创建用户

create user xxxx identified by "xxxx" default tablespace xxxx_db;


--如果有创建专用临时表空间,则使用以下第一个语句;没有则使用第二个语句:

alter user xxxx temporary tablespace xxxx_temp_db; --可选


alter user xxxx temporary tablespace TEMP1;


2、给用户分配表空间权限

--分配无限的表空间限额

alter user xxxx quota unlimited on xxxx_db;


3、授权

grant connect,resource to xxxx;


--授权dba要看具体情况(可选)

grant dba to xxxx;



实际案例:


create tablespace factorytest_db datafile '+DATA/orcl/datafile/factorytest.dbf' size 1024M REUSE AUTOEXTEND ON NEXT 500M MAXSIZE 5G


create user factorytest identified by "factorytest" default tablespace factorytest_db;


grant connect,resource,dba to factorytest;


alter user factorytest quota unlimited on factorytest_db;


commit;




结尾:




感谢阅读,祝有收获的一天,谢谢!

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读