Oracle实战笔记(第一天)

导读

  笔记内容来自韩顺平老师的视频《玩转Oracle实战教程》,可以结合笔记进行观看。第一天视频中还有Oracle的介绍和安装等内容,很容易搜索到,这里就不再进行总结。

目录

  1、命令行工具SQLPlus的启动

  2、sqlplus常用命令

  3、文件操作命令(运行、编辑、输出文件)

  4、用户管理(用户创建/删除、权限管理、口令管理)

一、命令行工具SQLPlus

  SQLPlus是Oracle自带的命令行工具,初学者最好是先使用命令行工具进行操作。

  SQLPlus的启动

  方法一:使用电脑上的SQLPlus的启动图标启动。

  

  方法二:win + R 打开运行窗口输入“cmd”打开命令行窗口,输入:sqlplus [username/password][@server][as sysdba|sysoper];启动。其中username/password如果不输人,SQL*Plus会在后续提示输入。server是网络服务名,登录本机数据库暂不需要。as sysdba|sysoper分别表示以sysdba或sysoper特权用户登录。

二、SQLPlus常用命令

  1、连接到数据库     

  语法:conn username/password [@server][as sysdba|sysoper];

      说明:相当于用户登录

  2、断开连接    

  语法:disc[onnect];
    说明:disc是disconnect的缩写,该命令断开和oracle的连接但是不退出sqlplus窗口。

  3、修改密码

  语法:passw[ord];
      说明:passw是password的缩写,该命令用于修改当前用户的密码。ps:如果需要修改其他用户的密码,需要使用sys/system账户登录。

       4、显示当前用户名

       语法:show user;

  5、关闭窗口

       语法:exit;
      说明:exit命令断开和oracle的连接同时退出sqlplus窗口。

  操作截图:

  

三、文件操作命令

  1、运行文件     

  语法:start 文件位置;
      说明:例如start d:\a.sql;就能运行d盘下的a.sql文件。这里start可以用@代替。

  2、编辑文件

      语法:edit 文件位置;
     说明:例如edit d:\a.sql;就能使用记事本打开a.sql文件。

  3、输出文件

      语法:spool 文件位置;......;spool off;
     说明:将sqlplus屏幕中spool 文件位置;spool out;两个语句之间的内容输入到指定文件中。

四、用户管理

  1、创建用户(dba)

  语法:create user *** identified by ***;
  说明:这里dba是指需要数据管理员身份才能进行权限操作,如system等管理员用户才能创建新用户。***处分别填写要创建的用户和密码。ps:新创建的用户没有任何权限。

  

  2、删除用户(dba)

  语法:drop user *** [cascade];
   说明:权限操作,如果该用户下有表格,删除用户是需要带上cascade关键字。

  3、权限管理

  1)相关概念
  权限:Oracle中用户的很多操作都是需要权限的,Oracle中的权限可以分为系统权限(用户对数据库相关操作的权限)和对象权限(用户对其他用户的数据对象如表格、视图、触发器等进行操作的权限)。
  角色:我们一般不直接将权限赋予给用户,而是将角色赋予给用户,不同的角色携带不同的权限,由此用户就得到了角色拥有的权限。而角色又分为预定义角色和自定义角色。
  2)赋予/撤销权限grant to /revoke from
  通过角色赋予权限
  语法:grant 角色名 to 用户名;
  说明:比如新创建的用户tom是没有登录权限的,执行语句“grant connect to tom;”就是赋予tom这个用户一个connect的角色,然后用户tom就具有了连接数据库的权限。

  

  用户赋予表格操作权限
  语法:grant 权限 on 表格 to 用户名;
  说明:比如用户tom是没有访问用户scott的emp表权限的,所以我们需要登录scott用户,并执行“grant select on emp to tom;”语句,这时用户tom就有了访问scott.emp的权限。ps:其他权限如delete、update、insert、all等。

  撤销用户赋予的表格操作权限
  语法:revoke 权限 on 表格 from 用户名;
  说明:和grant to类似改为revoke from就是权限撤销。

  权限传递
  我们希望赋予的权限能够“传递”,比如scott执行了语句“grant select on emp to tom;”就是赋予tom访问emp表的权限,我们希望通过tom也能赋予其他用户这个权限,那么scott需要执行语句“grant select on emp to tom with grant option;”。(相当于scott有一把小刀,并且scoot给了tom使用小刀的权利,并且,scott赋予了tom把这把刀给其他人用的权利)。
  语法:赋予系统权限的语句 + admin option;
                 赋予对象权限的语句 + grant option;
  说明:需要注意的是,比如scott赋予了tom操作emp表并且能传递这个权限的权利,tom将操作scott.emp这个权限赋予给了用户lucy,当scott撤销tom操作emp表权利时,lucy也不再具有该权限。相当于“级联撤销”。

  4、用户口令管理profile

  profile是口令限制,使用profile关键字可以管理用户口令。

  1)账户锁定

  语法:create profile *** limit failed_login_attemps m password_lock_time n;
      alert user 用户名 profile ***;
  说明:第一句是创建一个名为***的口令限制profile,第二句是设置用户的口令限制为***:即当用户错误输入口令m次后该账户将会锁定n天。

  2)账户解锁(dba)

  语法:alert user 用户名 account unlock;
  说明:当某用户被锁定时可以使用dba用户进行解锁。

  3)终止口令

  语法:create profile *** limit password_life_time m password_grace_time n;
       alert user 用户名 profile ***;
  说明:创建一个终止口令profile并修改为某用户的profile,即设置该用户的口令生命周期为m天,即需要每m天修改一次口令,宽限n天。

  4)历史口令

  语法:create profile *** limit password_life_time m password_grace_time n password_reuse_time z;
       alert user 用户名 profile ***;
  说明:在终止口令语句后加password_reuse_time z就可以让用户不使用z天内的历史口令,即z天后历史口令又可以继续使用。

  5)删除profile

  语法:drop profile *** [cascade];
  说明:当不需要某个profile时可以将其删除,cascade是进行级联删除。

 

posted @ 2018-01-20 19:18  风之之  阅读(791)  评论(1编辑  收藏  举报