龙盟编程博客 | 无障碍搜索 | 云盘搜索神器
快速搜索
主页 > 数据库类 > Oracle 技术 >

详解Oracle建立用户和对用户的管理

时间:2011-04-12 23:18来源:未知 作者:admin 点击:
分享到:
# 合法的Oracle标识符号 1、不能是保留关键字 2、必须使用1到30个字符。数据库的名称最多是8个字符。 3、必须以数据库字符集中的字母字符开头 4、只能够包含数据库字符集中的字母字

# 合法的Oracle标识符号

1、不能是保留关键字

2、必须使用1到30个字符。数据库的名称最多是8个字符。

3、必须以数据库字符集中的字母字符开头

4、只能够包含数据库字符集中的字母字符,以及以下字符:#、$、_,另外数据库链接可以包含@符号和'.'(句号)

5、不能包含引号

# 建立用户

create user angeos identified by angeos;

建立了用户:angeos,密码为:angeos

# 对用户授权

grant connect,resource to angeos;

对用户angeos授予了连接数据库和访问资源的权限

# 对用户授权

grant create session,dba to angeos;

CREATE SESSION是一个系统特权,它可以为用户提供连接数据库的能力。

DBA是一个具有超过120个系统特权的角色,所以它可以让用户在数据库中完成几乎任何工作。

# 改变用户的密码

alter user angeos identified by oracle;将用户angeos的密码改变为:oracle.

# 锁定帐号以及解锁

alter user oe account unlock;

然后用用户oe登录数据库服务器,密码为oe.注意:用户解锁后,要重启服务。

# 修改表空间的设置

默认情况下,它会使用表空间SYSTEM和TEMP(用于存放临时数据)。
不推荐采用这种方法。所以我们需要改变表空间。

通过系统用户连接数据库服务器


conn sys/sysadmin@hostname_services as sysdba;

然后查看表空间


select tablespace_name,contents from dba_tablespaces
order by tablespace_name;

使用USER表空间代替SYSTEM表空间


alter user angeos default tablespace users
temporary tablespace temp;

尝试建立一张表


create table table1
(
fieldA varchar2(10)
)

# 删除用户

angeos

drop user angeos;

由于用户angeos有一张表table1,所以删除用户时,我们需要指定关键字CASCADE

drop user angeos cascade;

# 解释术语模式Schema

数据库的模式定义为数据库对象的集合,而模式的名称就是拥有或者控制这个数据库对象集合的用户名称。
所有数据库对象,例如表、视图、索引、触发器、Java存储过程、PL/SQL程序包,函数等,都是由Oracle
数据库中的一个用户所拥有。甚至Oracle的数据词典,系统编目也是名为SYS的模式的一部分。

用户的传统解释就是能够唯一标识一组信任凭证的名称和密码组合。

# 解释系统特权

在Oracle数据库中有两类特权:

(1)对象级别特权是由用户赋予的访问或者操作数据库对象的特权。

(2)系统特权不是控制对指定数据库对象的访问,而是用来许可对各种特性的访问,或者许可Oracle数据库中的特定任务。

查询特权

connect system/sysadmin

desc dba_sys_privs;

查询

select distinct privilege from dba_sys_privs order by privilege

赋予系统特权的语句

GRANT system_priviege to username [with admin option];

撤销系统特权的语句

REVOKE system_priviege from username;

注意:在任何用户能够连接到Oracle数据库之前,都需要向它们赋予CREATE SESSION特权,为他们提供连接许可。

精彩图集

赞助商链接