1. 进入 Oracle 命令后台:
运行 sqlplusw 、 sqlplus ( DOS 模式)、程序中启动等
2. 显示当前登录的用户 show user;
3. 连接命令(切换用户) conn[ect] username/password@netServiceName [ as sysdba/sysoper ] 当用特权身份用户连接时,必须使用 as sysdba 或者 as sysoper ,如 sys 用户登录的时候
4. 断开连接 disc[onnect];
5. 修改密码 passw[ord]; ,用于修改本用户的密码,如果要修改其他用户的密码需要用 sys 或者 system 用户登录
6. 运行 Sql 脚本 start 或者 @ ,如 sql>start d:\sql.sql
7. 编辑 sql 脚本 sql>edit d:\script.sql ,以操作系统默认方式打开,一般以记事本的方式打开
8. 将 sql*plus 屏幕上的内容输出到指定文件
sql>spool e:\result.sql
sql>-- 输入内容
sql>spool off --spool 结束
9. 用户输入一个字符串 &
select * from emp where empno = '&temp';
10. sql*plus 中
set linesize 120;
show linesize;
set pagesize 10;
show pagesize;
设置行宽和每页显示行数,及时生效,一次有效
11. 创建用户
create user UserName identified by password ;
密码必须以字母开头
只有具有 DBA 权限的用户才能创建用户
12. 新创建的用户没有任何权限和角色,甚至连登陆数据库的权限都没有,需要 DBA 赋予以下角色 grant connect to newUserName ;
或者赋予一个 系统权限 grant create session to newUserName
13. 修改密码
修改自身密码 password; 或者 password username;
修改别人密码需要有 DBA 权限或者具有 alter user 的系统权限
14. 删除用户
Drop user username [cascade];
自身不能删除自身,一般以 DBA 身份删除其他用户,或者具有具有 drop user 系统权限的用户
如果要删除的用户已经创建了表,那么需要带上 cascade 参数,级联删除改用户创建的表
15. 权限分为两种
系统权限:用户对数据库的相关权限,如 create session 、 create table 等
对象权限:用户对其他用户的数据对象操作的权限, select 、 update 、 delete 、 insert 、 all 等,如 grant select on emp to aUser ;
权限回收: revoke select on emp from aUser ;
特别注意:
(1) system ( DBA 用户)授权 scott (用户)方案中 emp 的 select 权限给用户 aUser , system 用户和 scott 用户都可以收回该权限;但是反过来, scott 授权给 aUser 该权限,则只能由 scott 收回, system 不能收回未授权的权限
(2) 一次只能针对一个数据对象授权或者收回权限,但是可以赋予多种权限,如
grant select,update on emp to aUser ;
(数据对象?包括表、视图、触发器、存储过程、包、簇等等)
比较重要的预定义角色
Connect
DBA
Resource 可以在任何表空间建表
16. 对权限的维护
对象权限传递: with grant option
系统权限传递: with admin option
对象权限 收回的时候,会一并收回,且不能越级收回
系统权限 收回的时候 不会一并收回 ,并且可以越级收回
17. 对用户口令的管理
( 1 ) Profile 是口令限制、资源限制的命令集合,当建立数据库时, Oracle 会自动建立名为 default 的 profile ,当建立用户没有指定 profile 时, Oracle 会将 profile 分配给用户
( 2 )如用户连续 3 次密码输入错误,锁定该用户 2 天
sql> create profile lock_account limit failed_login_attempts 3 password_lock_time 2;
sql> alter user aUser profile lock_account ;
一般是 DBA 用户使用该规则
用户 aUser 连续 3 次登陆失败,再次登陆时 提示 The account is locked ,此时 DBA 用户可以解锁 sql> alter user aUser account unlock;
( 3 )强制用户每隔 10 天修改密码,宽限期为 2 天
sql> create profile myProfile limit password_life_time 10 password_grace_time 2 ;
sql> alter user aUser profile myProfile
( 4 )强制用户不能使用旧密码( 10 天后可以重用)
sql> create profile myProfile limit password_life_time 10 password_grace_time 2 password_reuse_time 10 ;
sql> alter user aUser profile myProfile
( 5 )删除 profile
sql> drop profile myProfile [cascade]