Oracle 10g 数据库中,当在数据库中创建用户时,基于应用性能和管理方面的考虑,最好为不同的用户创建独立的表空间。 那么 创建表空间 的步骤是怎样实现的呢?本文我们主要就介绍了这一部分内容,接下来就让我们一起来了解一下这部分内容吧。 1.创建表空间
Oracle 10g数据库中,当在数据库中创建用户时,基于应用性能和管理方面的考虑,最好为不同的用户创建独立的表空间。 那么创建表空间的步骤是怎样实现的呢?本文我们主要就介绍了这一部分内容,接下来就让我们一起来了解一下这部分内容吧。
1.创建表空间
不论是Lnux环境,还是Wndows环境,都要首先创建好表空间的存放路径,根据自己的情况修改。如: /opt/oracle/oradata/cocis 或 D:\oracle\oradata\cocis,若事先不创建该目录路径,则在创建表空间的时候会出错。
通过pl/sql登录到Oracle数据库上,然后执行菜单:文件/新建/命令窗口 ,打开一个命令窗口然后在该命令窗口中执行脚本创建和删除表空间 。
创建表空间
<ol> <li><span><span>Sql</span><span>></span><span>create tablespace histdb datafile 'D:\oracle\product\10.2.0\oradata\orcl\histdb.dbf' size 200m autoextend on next 10m maxsize unlimited; </span></span></li> <li> <span>Sql</span><span>></span><span>alter database datafile 'D:\oracle\product\10.2.0\oradata\orcl\histdb.dbf' autoextend on; </span> </li> </ol>
1) DATAFILE: 表空间数据文件存放路径
2) SIZE: 起初设置为200M
3) UNIFORM: 指定区尺寸为128k,如不指定,区尺寸默认为64k
4) 空间名称histdb 与 数据文件名称 histdb.dbf 不要求相同,可随意命名.
5) AUTOEXTEND ON/OFF 表示启动/停止自动扩展表空间
6) alter database datafile ' D:\oracle\product\10.2.0\oradata\orcl\histdb.dbf ' resize 500m; //手动修改数据文件大小为500M
删除表空间
<ol><li><span><span>DROP TABLESPACE histdb INCLUDING CONTENTS AND DATAFILES; </span></span></li></ol>
表空间已创建。
2.为应用创建用户
创建用户的同时,为用户指定缺省的永久表空间和临时表空间。
<ol> <li><span><span>SQL</span><span>></span><span> create user cocis identified by cocis </span></span></li> <li><span>2 default tablespace cocis </span></li> <li><span>3 temporary tablespace temp; </span></li> <li><span>用户已创建。 </span></li> <li> <span>SQL</span><span>></span><span> select username,default_tablespace,temporary_tablespace </span> </li> <li><span>2 from dba_users </span></li> <li> <span>3 where </span><span>username</span><span>=</span><span>'COCIS'</span><span>; </span> </li> <li><span>USERNAME DEFAULT_TABLESPACE TEMPORARY_TABLESPACE </span></li> <li><span>------------------------------ ------------------------------ ------------------ </span></li> <li><span>COCIS COCIS TEMP </span></li> <li> <span>SQL</span><span>></span><span> select username,user_id,password,default_tablespace,temporary_tablespace </span> </li> <li><span>2 from dba_users </span></li> <li> <span>3 where </span><span>username</span><span>=</span><span>'COCIS'</span><span>; </span> </li> <li><span>USERNAME USER_ID PASSWORD TEMPORARY_TABLESPACE </span></li> <li><span>------------------------------ ---------- ------------------------------ ----------------------- </span></li> <li><span>COCIS 61 E031F623C0F15D34 COCIS </span></li> </ol>
3.权限的授予
<ol> <li><span><span>SQL</span><span>></span><span> grant connect,resource to cocis; </span></span></li> <li><span>授权成功。 </span></li> </ol>
注释:当用户创建之后,一般只需要授予CONNECT和RESOURCE这两个角色即可。若要单独进行授权,则需执行单独的授权命令,如grant create table to cocis;等。
如果要授予SYSDBA的权限给用户则用如下命令:
<ol> <li><span><span>SQL</span><span>></span><span> grant SYSDBA to cocis; </span></span></li> <li><span>--------------------------------------------------- </span></li> <li> <span>SQL</span><span>></span><span> revoke unlimited tablespace from cocis; </span> </li> <li><span>撤销成功。 </span></li> <li> <span>SQL</span><span>></span><span> alter user cocis quota unlimited on cocis; </span> </li> <li><span>用户已更改。 </span></li> </ol>
注释:为了更严谨的管理,可以回收用户的UNLIMITED TABLESPACE权限,然后对用户的空间限额进行单独授权。
关于Oracle 10g创建表空间的完整步骤就介绍到这里了,如果您想了解更多关于Oracle数据库的知识,可以看一下这里的文章:http://database.51cto.com/oracle/,相信一定可以带给您收获的!