日期:2014-05-16  浏览次数:20484 次

ORACLE基本命令及用户管理
一.连接命令
连接:

conn[ect] 用户名/密码@网络服务器[as sysdba/sysoper]

如果以sys登陆,因为sys可以有两种角色,所以需要以“connect 用户名/密码 as 角色”格式登陆,指定登陆角色。


断开与方案的连接:
disc[onnect]  


修改用户密码:
passw[ord] 用户名
必须以管理员(sys/system)登陆才可以修改(别人的)密码(password jack;)
如果普通用户修改自己的密码,直接输入"password"命令


查看当前登陆用户:
show user


退出命令窗口:
exit或quit


二.文件操作命令
执行外部文件:start c:\a.sql或@ c:\a.sql;
编辑外部文件:edit c:\a.sql;


记录窗口命令:
spool d:\b.sql;
.....
.....
spool off;


三.ORACLE用户管理
创建新用户:create user 用户名 identified by 密码;(create user jack indentified by tiger)
新用户不具备连接到当前方案的权限,必须授权(连接权限):grant connect to 用户名;(grant connect to jack;)


修改密码:除了前面介绍的两种,还有另一种:alter user 用户名 identified by 新密码;
删除用户:drop user 用户名 [cascade];
如果删除用户时带有cascade,表示删除该用户的同时,删除该用户所建立的一切表、视图等资源


三.用户授权
新用户不具备任何权限,包括连接方案的权限也不具备,必须授权。
对一个表进行增、删、改、查的相应权限名分别为:insert、delete、update、select
给用户授予某权限:grant 权限名 on 用户名.表名 to 用户名(grant insert/delete/update/select on scott.emp to jack)


若要给用户授予以上全部权限,可以单个授权,也可以一次性授权:grant all on 用户名.表名 to 用户名(grant all on 


scott.emp to jack)
若要回收某权限:revoke 权限名 on 用户名.表名 from 用户名(revoke insert/delete/update/select on scott.emp from jack)
若要回收以上全部权限:revoke all on 用户名.表名 from 用户名(revoke all on scott.emp from jack)


如果系统管理员在给某个用户授权时,使用了with grant(admin) option,则该用户可以把该权限继续授予其他用户
但是,一旦管理员将该用户的该权限回收,则其他用户的该权限也被回收.


以下命令需DBA权限
账户锁定:create profile 文件名 limit failed_login_attempts 次数 password_lock_time 锁定天数
使用方法:alter user 用户名 profile 文件名
解除锁定:alter user 用户名 account unlock
终止命令:create profile 文件名 limit password_life_time 间隔天数 password_grace_time 宽限天数 [password_reuse_time 密码多少天后可重复使用天数]
删除profile:drop profile 文件名 [cascade]