Oracle的进阶学习
访问数据库
-
设置环境变量
set oracle_sid=jxgl
sqlplus
-
sqlplus system/Mm123456@jxgl
可视化设置
-
显示查询结果
SET SERVEROUTPUT ON
-
设置行宽
set linesize 350;
事务
-
事务属性:原子性,一致性,隔离性,持久性
-
事务处理: 提交事务
commit
回滚事务rollback
设置保存点savepoint <保存点名称>
回退到保存点rollback to <保存点名称>
设置自动提交set autocommit on/off
设置只读事务set transaction read only
用户
-
切换用户:
conn 用户名/Mm123456;
-
创建用户:
create user user1 identified by m123;
-
查看当前用户:
show user
-
修改用户密码:
alter user 用户名 identified by 新密码;
-
删除用户(用户和表一起删):
drop user 用户名 casecade;
权限
-
系统权限
create session
:连接到数据库
create user
:创建用户
create table
:创建表
create any table
:在任何模式中创建表 -
系统权限命令
授权user1连接数据库权限:grant create session to user1 with admin option;
收回user1权限:revoke create session from user1;
-
对象权限
select,update,delete,insert,execute,read,peferences,alter -
对象权限命令
将学生表的查询更新权限给user1:grant select,update on xs to user1 with grant option;
回收对象权限:revoke 对象权限名 on 对象 from 用户;
角色
-
connect连接角色:让用户能够连接数据库
-
查看Oracle中有多少种角色:
select * from dba_roles;
-
查看某个用户具有何种角色:
select * from dba_role_privs where grantee='角色名';
-
显示当前数据库的全称(一个用户可以登录多个数据库):
select * from global_name;
-
一个角色包括哪些权限
系统权限select * from dba_sys_privs where grantee='角色名';
对象权限select * from dba_tab_privs where grantee='角色名';
概要文件
-
账户锁定
指定user1用户最多尝试3次登陆,锁定时间为2天
create profile lock_account limit failed_login_attempts 3 password_lock_time 2;
让user1有这个概要文件(在前台可以输入3次密码,在后台输入1次就退出了)
alter user user1 profile lock_account;
-
账户解锁
alter user user1 account unlock;
-
终止口令
要求user1用户每隔10天修改密码,宽限期为2天
create profile myfile limit password_life_time 10 password_grace_time 2;
alter user user1 profile myfile;
-
口令历史
指定口令可使用时间,10天后可以重新使用
create profile password_history limit password_life_time 10 password_grace_time 2 password_reuse_time 10;
alter user user1 profile password_history;
-
删除概要文件
drop profile <文件名> [cascade];