ORACLE 三个默认用户:
sys change_on_install [as sysdba]
system manager
scott tiger
假设用户为 admin 密码也为admin
创建用户
create user admin identified admin //这样也只是创建了用户,但用户admin还不能登录oracle,也没有任何权限,需要给用户进行一定的授权操作,如下:
系统授权
grant create session to admin //授予用户登录oracle数据库权限
grant create table to admin //授予用户创建数据表的权限
grant unlimited tablespace to admin //授予用户使用空间的权限,直到这步用 户admin才可以真正的创建实际的表
revoke create session from admin
revoke create table from admin //对应的移除用户的登录,创建表的权限
revoke unlimited tablespace from admin
grant create session to public //表示把创建表的权限赋予所有人
select * from user_sys_privs //查询当前用户的权限
对象权限地传递
grant select on mytab to admin; //把当前用户(非admin)所有表的查 询权限赋予admin用户
grant all on mytab to admin; //把当前用户(非admin)所有表的所有权限赋予admin用户
revoke select on mytab from admin;
revoke all on mytab from admin; //对应的移除赋予admin用户的对当前用户表的操作权限
select * from user_tab_privs; //查询当前用户所有的对象权限
对象权限可控制到列
grant update(name) on mytab to admin;
grant insert (id) on mytab to admin;
revoke update(name) on mytab from admin;
revoke insert (id) on mytab from admin;
select * from user_col_privs;
注意:查询和删除不能控制到列
//dll dml dcl
权限传递
grant select on a to admin with grant otpion;
grant alter any table to admin with admin option;
create role myrole;
grant create session to myrole;
drop role myrole;
注意 某些系统权限无法直接赋值给角色
create table create any table
alter table alter any table
dorp table dorp any table
表是属于某于用户的,角色不属于
数据库的三种验证机制
操作系统文件验证
密码文件验证
数据库验证
linux 下 Oracle 启动过程
lsnrctl start
sqlplus /nolog
conn sys/oracle as sysdba;
windows 下 ora启动过程
lsnrctl start
oradim -startup -sid orcl
查看当前用户拥有的表
select table_name from user_tables;
为用户解锁
alter user xxx account unlock;