Oracle笔记 - 图文

发布时间 : 星期三 文章Oracle笔记 - 图文更新完毕开始阅读

第四讲:sqlplus的常用管理命令,Oracle的常用命令,表空间

?为什么刚刚创建的用户无法正常登陆

这是因为Oracle刚创建的用户是没有任何权限的,要求管路员给用户分配相应的权限才能登陆。比如我们给 shunping create session

如何给用户分配权限:grant create session to xioaming; Oracle 对数据库的权限分配分得很小

Oracle管理用户的原理:管理员有权分配权限、回收权限与分配角色、回收角色。

Oracle 管理机制

Oracle dbms 系统权限 权限 db实例(如:oeclhsp) 对象权限 预定义角色 角色 自定义角色

系统权限是和数据库管理相关的权限:如:create session , create table, create index, create view, create sequence, create trriger(触发器)

对象权限是和用户操作数据对象相关的权限,如对数据库的增删改查的操作(update,insert,delete,select)。

预定义角色:把常用的权限集中起来,形成角色

用户创建的基本语法:create 权限/角色 to 用户名; Create user to xiaohong; 赋予权限:

grant connect to xiaohong; grant resource to xiaohong; 回收权限:

revoke connect from xiaohong; revoke resource from xiaohong; 删除用户:

drop user 用户名 [cascade]; 当我们删除一个用户的时候,如果这个用户自己已经创建过数据对象,那么我们在删除该用户的时候需要加入[cascade]这个选项,表示把这个用户删除的同时,把该用户创建的数据对象一并删除。

方案(schema)的概念: Oracle的方案: Oracle dbms Scott Db 实例(orclhjl) System Scott方案 Emp表 Xiaohong Dept表 Xiaohong方案 表一 表二

所以不同用户可以创建相同名字的表,因为分在不同的方案里。

当一个用户创建好后,如果用户没有创建数据对象的话,dbms是

不会为该用户创建方案的,如果这用户创建了任意一个数据对象,

这时,我们的dbms就会创建一个对对应的方案与该用户对应,并

且该方案的名字与用户名一致。

用户 小技巧:如果希望看到某个用户的方案究竟有什么数据对象,我们可以用pl\\sql 登录;

方案这个概念的实际应用:

要求:请完成一个功能,让小红这个用户可以查询scott 的emp 表 步骤:1、先用scott 登录:conn scott/tiger;

2、赋予权限:grant select[update |delete |insert| all ] on emp to xiaohong; Xiaohong 查询 scott 的 emp表时,需要 Select * from scott.emp;

如创建两个用户,tea,stu 现在要把scott的权限赋予tea,之后tea将自己的权限赋给stu 实现:

Conn scott/tiger;

Grant all on scott.emp to tea with grant option;

//其中with grant option 表示得到权限的用户,可以把权限继续分配。 //with admin option 表示将系统权限继续分配下去 Grant select on scott.emp to stu;

//with grant option 表示得到权限的用户可以把权限继续分配下去 //with admin option 系统权限可以继续分配下去

使用Profile文件对口令进行管理

(1)账户锁定:限制用户密码的输入洗漱

需求:允许某个用户最多尝试登陆3次,如果3次没有成功,则所定两天,两天后才能重新登陆 Profile Profile文件(规则) 分配profile

基本语法: Sql>create profile 文件名 limit failed_login_attempts 3 password_lock_time 2; Sql> alter user 用户名 profile 文件名; (2)给账户解锁 Sql>alter user 用户名 account unlock;(正规的解锁方法) (3)终止口令

为了让用户定时更改密码可以使用终止口令的指令来完成,同样这个命令也需要dba身份来操作,还有Oracle可以限制用户的新密码跟旧密码不同 如:sql>create profile 文件名limit password_life_time 10 password_grace_time 2; Sql>alter user 用户名 profile 文件名;

口令历史:

概述:如果希望用户在修改密码的时候,不能再用以前使用过的密码,可以使用口令历史,这样Oracle就会将口令修改的信息存放到数据字典中,这样当用户修改密码是,Oracle就会对新旧密码进行比较,当发现新旧密码一样时,就提示用户重新输入密码 例子:

(1)建立profile Sql>create profile password_history limit password_life_time 10 password_grace_time 2 passeord_reuse_time 1;

passeord_reuse_time //指定楼龄可以重用时间即10天后就需要修改 (2)分配给某个用户密码 Sql>alter user tea profile myprofile;

删除用户

概述:当不需要某个profile文件时候,可以删除该文件(这时用户就不受约束了) Sql>drop profile 文件名;

数据库的启动流程 Server服务器 工作环境

远程登录

家庭

Window 操作系统 可以在控制台(dos控制台下运行) 1) lsnrctl start (启动监听)

2) oradim—startup-sid 数据库实例名

联系合同范文客服:xxxxx#qq.com(#替换为@)