关于Oracle新建表空间,添加用户及新建表数据

oracle为什么要创建一个表空间和临时表空间?

表空间:此空间是用来进行数据存储的(表、function、存储过程等),所以是实际物理存储区域。
临时表空间:主要用途是在数据库进行排序运算[如创建索引、order by及group by、distinct、union/intersect/minus/、sort-merge及join、analyze命令]、管理索引[如创建索 引、IMP进行数据导入]、访问视图等操作时提供临时的运算空间,当运算完成之后系统会自动清理。
备注:因为用途不同所以才有了区分,实际上数据库都是有默认临时空间的,但实际应用中很难满足需求,所以才需要自己创建临时空间。

1.假如现在已经建好名为'NewDB'的数据库

此时在D:appAdministratororadata目录下已经存在NewDB目录(注意:我的Oracle11g安装在D盘下,若你的Oracle安装在别的目录,那么你新建的数据库目录就在*:appAdministratororadata目录下)。

 

2.创建用户之前要创建"临时表空间",若不创建则默认的临时表空间为temp。

SQL> CREATE TEMPORARY TABLESPACE DB_TEMP

         TEMPFILE 'D:appAdministratororadataNewDBDB_TEMP.DBF'

         SIZE 32M

         AUTOEXTEND ON

         NEXT 32M MASIZE UNLIMITED

         EXTENT MANAGEMENT LOCAL;

 

3.创建用户之前先要创建数据表空间,若没有创建则默认永久性表空间是system。

SQL> CREATE TABLESPACE DB_DATA

         LOGGING

         DATAFILE 'D:appAdministratororadataNewDBDB_DATA.DBF'

         SIZE 32M

         AUTOEXTEND ON

         NEXT 32M MAXSIZE UNLIMITED

         EXTENT MANAGEMENT LOCAL;

其中'DB_DATA'和'DB_TEMP'是你自定义的数据表空间名称和临时表空间名称,可以任意取名;'D:appAdministratororadataNewDBDB_DATA.DBF'是数据文件的存放位置,'DB_DATA.DBF'文件名也是任意取;'size 32M'是指定该数据文件的大小,也就是表空间的大小。

 

4.现在建好了名为'DB_DATA'的表空间,下面就可以创建用户了:

SQL> CREATE USER NEWUSER IDENTIFIED BY BD123

         ACCOUNT UNLOCK

         DEFAULT TABLESPACE DB_DATA

         TEMPORARY TABLESPACE DB_TEMP;

默认表空间'DEFAULT TABLESPACE'使用上面创建的表空间名:DB_DATA。

临时表空间'TEMPORARY TABLESPACE'使用上面创建的临时表空间名:DB_TEMP。

 

5.接着授权给新建的用户:

SQL> GRANT CONNECT,RESOURCE TO NEWUSER;  --表示把 connect,resource权限授予news用户

SQL> GRANT DBA TO NEWUSER;  --表示把 dba权限授予给NEWUSER用户

    授权成功。

    OK! 数据库用户创建完成,现在你就可以使用该用户创建数据表了!

 

总结:创建用户一般分四步:

第一步:创建临时表空间

第二步:创建数据表空间

第三步:创建用户并制定表空间

第四步:给用户授予权限

 

使用PLSQL创建用户指定用户权限

 

/*第1步:创建临时表空间  */
create temporary tablespace oa_temp
tempfile 'F:\app\Administrator\oradata\orcl\oa_temp.dbf'
size 50m 
autoextend on 
next 50M  maxsize unlimited
extent management local; 
 
/*第2步:创建数据表空间  */
create tablespace oa_data 
logging 
datafile 'F:\app\Administrator\oradata\orcl\oa_data.dbf'
size 50m 
autoextend on 
next 50M  maxsize unlimited
extent management local; 
 
/*第3步:创建用户并指定表空间  */
create user oaadmin identified by oaadmin 
default tablespace oa_data 
temporary tablespace oa_temp; 
 
/*第4步:给用户授予权限  */
grant connect,resource,dba to oaadmin;

 

posted @ 2017-09-27 12:07  夜西门吹雪孤城花满楼  阅读(368)  评论(0编辑  收藏  举报