ORACLE-用户及表空间创建命令总结
博文说明【前言】: 本文将通过个人口吻介绍记录用户及表空间创建相关命令,在目前时间点【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; 结尾: 感谢阅读,祝有收获的一天,谢谢! (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |