一、创建用户(create):create user panda identified by bsoft;
?
二、修改密码(password):
???? 1.给自己修改密码时,直接password;
???? 2.给其他用户修改密码时,首先需要具备dba权限,或者是拥有alter user的系统权限,如password
??????? panda,然后键入相应的新密码,或者用语句alter user panda identified by bsoft以修改密码。
?
三、删除用户(drop):
???? 1.一般以dba的的身份去删除某个用户,如果用其他用户去删除某个用户,则用户需要具备drop user的权
??????? 限(用户的此权限须由dba用户来授予)。
???? 2.用语句 drop user panda cascade 删除。
??????? 注意:cascade参数是级联删除该用户所有对象,经常遇到如用户有对象而未加此参数则用户删不了的
????????????????? 问题,所以习惯性的加此参数
???? 3.不能删除用户本身。如当前panda登陆,则无法执行drop user panda语句。
???? 4.如果要删除的用户已经创建了表,那么就需要在删除时带上cascade参数,表示删除用户的同时删除此
??????? 用户所创建的表。(级联删除)
?
四、用户授权(grant):
????? 概述:1.创建的新用户是没有任何权限的,甚至连登陆数据库的权限也没有,需要具备权限分配的用户为
?? ??????????????? 新用户分配权限,给用户赋权限用grant,回收权限用revoke。
??????????????? 2.权限分类:①系统权限(140多种):用户对数据库的相关权限;②对象权限(25种如增删改查
?????????????????? 等等):用户对其他用户的数据库对象操作的权限。
?????????????????? eg: ①scott将查询、修改自己的emp表的操作权限授予panda。
??????????????????????? ? ? grant select,update on emp to panda;
???????????????????????? ②scott将自己的emp表的所有操作权限授予panda。
??????????????????????????? grant all on emp to panda;
???????????????????????? ③soctt回收panda对其emp表的修改权限。
??????????????????????????? revoke update on emp from panda;
???????????????????????? ④scott将查询自己的所有表的操作权限授予panda。
??????????????????????????? grant select any table to panda;
??????????????? 3.权限分配管理:
?????????????????? ①如果是对象权限,则在给用户分配权限的时候加上with grant option
????????????????????? eg: scott在给panda分配对其emp表查询权限的同时希望panda将此权限可以传递给其他用户.
??????????????????????????? grant select on emp to panda with grant option;
??????????????????????????? panda登陆,将emp表的select权限分配给pandita:
??????????????????????????? grant select on scott.emp to pandita;
??????????????????????????? 注意:此种情况下,当scott收回panda对emp表查询的权限时,pandita也不具备对emp表
????????????????????????????????????? 的查询权限。
????????????????????????????????????? revoke select on emp from panda;
?????????????????? ②如果是系统权限,则在给用户分配权限的时候加上with admin option
????????????????????? eg: system在给panda分配connect权限的同时希望panda能将此权限传递给其他用户.
??????????????????????????? grant connect to panda with admin option;
?
五、角色管理:
????? 概述:角色可以理解为权限的集合。
??????????????? 1.角色分类:
?????????????????? 一、预定义角色:即系统自带的角色,如dba、resource(允许用户在任何的表空间建
?????????????????????????????????????????????? 表)、connect(具备连接数据库等权限)。
?????????????????? 二、自定义角色。
????????????
六、用户口令管理(profile):
?????? 概述:profile是口令限制,资源限制的命令集合。当建立数据库时,oracle会自动建立名称为default的
????????????????? profile,当建立用户没有指定profile选项,那么oracle就会将default分配给用户。
?????? 1.账户锁定:
????????? 概述:指定该用户登录时最多可以输入密码的次数,也可以指定用户锁定的时间(天),一般用dba的
????????? 身份去 执行该命令。
????????? eg:指定panda这个用户最多只能尝试3次登陆,锁定时间为2天。
???????????????? ①创建规则:create profile lock_account limit failed_login_attemps 3 password_lock_time 2;
???????????????? ②将此规则应用到指定的用户:alter user panda profile lock_account;
?????? 2.解锁用户:
????????? alter user panda account unlock;
?
?????? 3.终止口令:
????????? 概述:为了让用户定期修改密码可以使用终止口令完成,此命令需要dba身份来操作。
????????? eg : 给用户panda创建一个profile文件,要求panda每隔10天修改自身密码,宽限期为2天。
???????????????? ①创建规则:create profile upd_pwd limit password_life_time 10 password_grace_time 2;
???????????????? ②将此规则应用到指定的用户:alter user panda profile upd_pwd;
?
????? 4.口令历史:
???????? 概述:如果希望用户在修改密码时,不能使用以前使用过的密码,可使用口令历史。这样oracle就会将
?????????????????? 口令修改的信息存放到数据字典中,当用户修改密码时,oracle就会对新旧密码进行比较,当发
?????????????????? 现新旧密码一样时,旧提示用户重新输入密码。
?????????????????? eg:①创建p