Oracle用户管理
Oracle 用户
SYS
SYSTEM
SYSMAN
DBSNMP
1、创建用户
概述:在Oracle中创建新的用户使用create user语句,一般是具有dba(数据库管理员)的权限才能使用
CREATE USER emr_fm_infection IDENTIFIED BY 11 --用户名emr_fm_infection 密码11
DEFAULT TABLESPACE "EMR_DATA"--表空间 EMR_DATA
TEMPORARY TABLESPACE "TEMP"--默认表空间 TEMP
QUOTA UNLIMITED ON "EMR_DATA";
默认创建的用户无法登陆到数据库中
2、修改用户密码
方式1
修改system密码 使用sys用户登录
ALTER USER SYSTEM IDENTIFIED BY "Oracle11g";
方式2
password emr_fm_infection 给用户emr_fm_infection修改密码,只能给自己修改密码或者管理员给其他用户修改密码
3、删除用户,一般以dba的身份去删除用户
在删除用户时,如果要删除的用户已经创建了表,name就需要在删除的时候带一个参数cascade,代表级联删除
drop user emr_fm_infection cascade
4、权限
oracle大约有140多种权限系统权限、25个对象权限
系统权限:用户对数据库的权限,建库、建表、建索引、建存储过程、登陆数据库、修改密码
对象权限 用户对其他用户的数据对象操作的权限
数据对象:用户创建表、视图 存储过程 触发器 等对象
Create session 用户登陆权限
注:数据对象是包含函数、存储过程、包、类型、表、视图、角色、表空间、触发器、同义词、序列、
resource 新建表的权限
grant resource to emr_fm 给emr_fm用户赋resource权限
授权查询权限
grant select on "EMR_FM"."V_INTERFACE_EMR_INFECTION" to emr_fm_infection
--授权修改、删除、查询、添加权限
grant all on "EMR_FM"."V_INTERFACE_EMR_INFECTION" to emr_fm_infection
授权查询权限且希望被授权对象还能把权限继续给别人,增加width grant operion
Grant select on emp to emr_fm width grant operion
收回权限
收回用户emr_fm对表emp的查询权限
Revoke select on emp from emr_fm
5、角色
挑出一些权限付给一个对象
预定义角色:connect、dba、resource(在任何一个表空间建表)
自动义角色
6、用户口令的限制
Profile
create profile lockemr_fm limit failed_login_attempts 3 password_lock_time 2;
Alter user emr_fm profile lockemr_fm;
7、解锁system用户
ALTER USER system ACCOUNT UNLOCK;
每隔10天修改一次密码
Create profile myprofile limit password_lock_time 10 password_grace_time 2;
Alter user emr_fm profile myprofile
口令历史
如果希望用户在修改密码的时候,不能使用以前使用过的密码,可以使用口令历史,这样Oracle就会将口令修改的信息存放到数据字典中,这样用户修改面时,Oracle就会对新旧密码进行比较,发现新旧密码一样时,就提示用户重新输入密码。
Create profile password_history limit password_life_time 10 password_grace_time 2 password_reuse_time 10;
Alter user emr_fm profile password_history
删除profile
Drop profile password_history【cascade】;