工具
- sqlplus.exe
目的
为了使用Oracle,用户可能需要为自己的数据库建立一个模式。建立自己的模式是很重要的,因为用户应该避免使用Oracle提供的SYSTEM等系统账号。创建一个属于自己的模式从某种意义上来讲,也就是创建一个用户账户。
创建
-
查看当前用户
要创建一个用户账户,需要使用系统账户,如SYS,SYSTEM等连接到数据库,可使用show 查看当前用户。
SQL> show user
USER 为 "SYSTEM"
-
创建用户
使用如下语句创建用户
SQL> CREATE USER temp_user
2 identified by temp_passwd;
上面创建了一个名为 temp_user ,密码为 temp_passwd 的账户。
-
分配权限
创建用户后要为其创建权限
SQL> GRANT CREATE SESSION,RESOURCE
TO temp_user;
其中:
- CREATE SESSION:一个系统特权,拥有该特权的用户具有连接数据库的能力。
- REAOURCE:一个系统角色,拥有该特权的用户可以在自己的模式中创建模式对象。
此时可以使用 connect 语句尝试连接
SQL> connect temp_user/temp_passwd
已连接。
SQL> show user // 查看此时的用户名
USER 为 "TEMP_USER"
优化
以上的操作已经可以正常的使用了,往下是用户优化。
-
查看当前表空间
默认情况下,创建的账户将使用表空间 SYSTEM 和 TEMP,即该用户创建表的时,将占用 SYSTEM 表空间,而进行操作时产生的临时数据则使用表空间 TEMP 。为此,用户需要改变账户使用的表空间。
查看当前数据库中所存在的表空间
// 需要在 system 账户执行
SQL> select tablespace_name,contents from dba_tablespaces;
TABLESPACE_NAME CONTENTS
------------------------------ ---------
SYSTEM PERMANENT
SYSAUX PERMANENT
UNDOTBS1 UNDO
TEMP TEMPORARY
USERS PERMANENT
-
修改空间表
修改用户所使用的表空间
SQL> ARTER USER temp_user
2 DEFAULT tablespace users
3 temporary tablespace TEMP;
执行后,用户账户temp_user 的默认表空间为 USERS ,而临时表为 TEMP 。
网友评论