Oracle 学习笔记 1

   一  oracle用户管理的基本命令
1 创建一个用户(只有system和sys用户有创建一个新用户的权限)
SQL>create user zhaoming identified by Zhaoming262350;
zhaoming是用户名,Zhaoming262350是用户密码。
2 用户的切换(可以由任意一个用切换到另一个用户,包括从普通用scott到系统用户system,也可以从system用户切换到scott用户)
SQL>conn system/manager;
system代表系统用户,manager代表密码;
3 查看当前登陆的是哪一个用户
SQL>show user;
看目前正在对数据库操作的是系统用户还是普通用户;
4 修改用户密码
SQL>password zhaoming;
修改zhaoming这个用户的密码;
注意:在删除用户时,如果要删除已经创建的表,那么就要在删除时带一个参数(cascade)。
     新创建的用户没有登录数据库的权限,必须对这个数据库赋给权限才可以登录数据库。
5 给数据库赋权限,权限分为系统权限和对象权限。
  系统权限: 用户对数据库的相关权限。(create session)
  对象权限:用户对其他用户数据对象的权限  (select,insert,update,delete,all,create,index)
SQL>grant connect to zhaoming;
给zhaoming这个数据库普通用户赋予登录数据库的权限,这个权限必须有系统用户赋予。
6 创建一个表test
SQL>create table test (userId varchar2(30) ,userName varchar2(30));
创建一个表,包括用户编号和用户名。
7 赋给空间资源权限给一个用户这样用户就可以在自己的表空间建表。
resource:在任何一个表空间建表。
SQL>grant resource to zhaoming;
8 查看表结构
SQL>desc test;
9 对象权限的授权
SQL>grant select on emp to zhaoming;
希望zhaoming这个用户可以去查询emp这个表,也就是简单的对象授权。
10 对表的行距进行设置
SQL>set linesize 120;
(120 是自己设置的一个数据,这个数据可由自己设置)。
11 通过普通用户scott查询一个简单的表emp.
SQL>select * from scott.emp;
12 授权用户zhaoming去修改scott的emp表
SQL>grant update on emp to zhaoming;
13 授权用户zhaoming可以对emp表可以进行全部操作
SQL>grant all on emp to zhaoming;
14 scott用户收回用户zhaoming对emp的操作权利
SQL>revoke select on emp from zhaoming;
15 用户的权限是可以传给其他用户的,用户zhaoming可以把查询scott表emp的权限可以传给其他的用户。
SQL>grant select on emp to zhaoming with grant option;
这样传出的是对象权限,如果是系统权限:
SQL>grant connect to zhaoming with admin option;

                       二    用户口令(profile)
    profile是口令限制,资源限制的命令集合,当建立数据库时,oracle会自动建立名称为default的profile,当建立用户没有指定profile选项,那oracle就会将default分配给用户。
    账户锁定:指定该账户登录时最多可以输入密码的次数,也可以指定用户锁定的时间,一般都用dba的身份去执行该命令。
eg:scott用户最多只能尝试登陆三次,锁定时间为两天,如何实现?
创建profile文件:
SQL>create profile *** limit failed-login-attemps 3 password-lock-time 2;
***表示的是profile的名称,登陆次数3和锁定的时间可由自己设定。
SQL>alter user scott profile ***;
   如何给一个用户解锁:
SQL>alter user scott account unlock;
这个用户scott可以改变,例如用户zhaoming
    终止口令:为了让用户定期修改密码,可以使用终止口令的指令来完成,同样这个命令要用dba 的身份来操作。
eg:给用户zhaoming创建一个profile文件要求用户每隔10天改一次登陆密码,宽限期为两天,如何实现?
 SQL >create profile *** limit password-life-time 10 password-grace-time 2 ;
 SQL>alter user zhaoming profile ***;(把profile 文件分配给用户)
  口令历史:如果用户在修改密码时,不能使用以前的口令历史,因为会存到数据词典。
 SQL>create profile *** limit password-life-time 10 password-grace-time 2 password-rease-time 10;
   如何删除profile;
 SQL>drop profile *** [cascade];
    
                     三   oracle 的用户与权限
   sys:超级用户,权限最高,他的角色是dba,默认密码是change-on-install.
   system:系统管理员,权限也很高,角色是dbaoper,密码manager。
   scott:是一个普通用户,密码是tiger。
   sys有create database的权限,而system没有,其他类似。
   sys相当于一个董事长,而system相当于一个总经理。
   sys与system的区别:
   1,存储数据的重要性不同。sys:所有oracle的数据词典的基表和视图都存放在sys用户中,基表和视图对于oracle的运行至关重要,由数据自己维护,任何用户都不能手动修改,sys用户拥有dba,sysdba,sysoper角色或权限,oracle权限最高的用户。
   2,权限的不同。sys用户必须以as sysdba或as sysoper 形式登录,不能以normal的形式登录数据库。system如果正常登录,它其实就是一个普通的dba用户,但是如果以as sysdba登录,其结果实际上是sys用户登录的,从登录信息里面我们可以看出来。
    以一个系统管理员的身份如何登录数据库?
SQL> conn sys/change-on-install as sysdba;
注意:sysoper拥有的权限sysdba都有,但是sysdba拥有的权限sysoper不一定有。
在sysdba,sysoper,dba这个用户中,sysdba的级别最高,sysoper次之,dba的级别最低。
   dba用户是指拥有dba角色的数据库用户,特权用户可以执行启动,关闭实例等特殊操作,而dba用户只有启动数据库后才能执行各种管理工作。
SQL>shut down;(关闭数据库)
SQL>start up ;(启动数据库)
关闭和启动数据库只有sysdba和sysoper有这个权限,dba不具有。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值