• oracle 的用户管理 sqlplus的常用命令


    创建用户:create user 用户名 identified by 密码;

    SQL> create user scw identified by 123;
    
    用户已创建。
    
    SQL>

    在oracle中创建用户只能由管理员或者具有管理员的权限的用户创建

    修改密码:

    1.修改自己的密码:

    SQL> passw;
    更改 SCW 的口令
    旧口令:
    新口令:
    重新键入新口令:
    口令已更改
    SQL> conn scw/123;
    ERROR:
    ORA-01017: invalid username/password; logon denied
    
    
    警告: 您不再连接到 ORACLE。
    SQL> conn scw/234;
    已连接。

    2.修改其他用户密码  需要权限;

    SQL> conn system/123;
    已连接。
    SQL> alter user scw identified by 123;
    
    用户已更改。
    
    SQL>

    解锁用户/锁定用户:

    SQL> alter user scw account unlock;
    
    用户已更改。
    
    SQL> conn scw/123;
    已连接。
    SQL> conn system/123;
    已连接。
    SQL> alter user scw account lock;
    
    用户已更改。
    
    SQL> conn scw/123;
    ERROR:
    ORA-28000: the account is locked
    
    
    警告: 您不再连接到 ORACLE。

    删除用户:

    drop user 用户名;
                                       如果当前用户拥有数据库表、视图、序列等等,删除用户就需要指定关键字:cascade.
    drop user zhangsan cascade;

    授权:

    新建的用户是没有任何权限的,包括连接数据库的权限。
    新创建的用户是没有任何权限的,直接登录会报如下错误:

    SQL> conn scw/123;
    ERROR:
    ORA-01045: user SCW lacks CREATE SESSION privilege; logon denied
    
    
    警告: 您不再连接到 ORACLE。

    如果新建的用户想要连接数据库,就需要被赋予权限,只有管理员才能赋予新用户权限。

    系统权限:create table,create session,drop user,drop table等等
    角色权限:dba 管理员
                   connect:连接数据库
                    resource: 创建表的权限

    赋予用户连接数据库的权限:

    grant create session to zhansgan;
    SQL> conn system/123;
    已连接。
    SQL> grant create session to scw;
    
    授权成功。
    
    SQL> conn scw/123;
    已连接。
    SQL>

    system赋予用户dba的角色:

    SQL> grant dba to scw;
    grant dba to scw
    *
    第 1 行出现错误:
    ORA-01031: 权限不足
    
    
    SQL>

    SQL> conn system/123;
    已连接。

    SQL> grant dba to scw;

    授权成功。

    SQL>

    (dba是数据库管理员
    它除了重启数据库 修改字符集的权限没有外 具有其它全部权限)
    DBA: 数据库管理员

    用Scott给其他用户查看的权限:

    SQL> conn scott/123;
    已连接。
    SQL> grant select on emp to scw;
    
    授权成功。
    
    SQL> conn scw/234;
    已连接。
    SQL> select * from scott.emp;

    用system给其他用户查看的权限:

    SQL> grant select on scott.emp to scw;                        grant all on scott.emp to scw; (查看所有表)  
    授权成功。
    
    SQL>

    给其他用户授权的能力:

    with admin option: 授予系统相关的admin权限
    with grant option:授予对象相关的grant 权限

    注意多级权限的回收;

    撤销权限:

    revoke 权限 from 用户   

    注意:多级权限的回收:

    对于对象权限,sys——>abc1——>abc3,当sys回收abc1权限的时候,abc3的权限也被回收了。

    总结:对于系统权限,sys——>abc1——>abc2,然后由sys将abc1的权限回收,abc2依然可以连接数据库。

    对表的操作:

    查看当前用户的所有表:

    SQL> conn scott/123;
    已连接。
    SQL> select * from user_tables;

    查看当前用户所有表的表名:

    SQL> select table_name from user_tables;
    
    TABLE_NAME
    ------------------------------------------------------------
    SALGRADE
    BONUS
    EMP
    DEPT

    查看用户:

    查看所有用户(必须要有管理员权限):

    Select *from all_users;
    查询dba:select * from dba_users;
    查询当前用户的信息:select * from user_users;

    查看权限:

    查询所有具有系统权限的dba:

    Select *from dba_sys_privs where grantee='DBA';

    查看所有角色role;

    Select *from dba_roles;

    profile管理用户
    u 创建profile文件与指定给用户  
    案例1. 如果用户连续3次登陆失败,锁定用户,锁定时间2天.lock
    步骤:
    1.先创建一个profile文件
      create profile lock_account(文件名) limit failed_login_attempts3 password_lock_time 2;
    2.将profile文件指定给用户
    alter user abc2 profilelock_account;
     
    3.abc2连续三次登陆失败,账号锁定。
    4.       解锁abc2用户 alter userabc2 account unlock;(管理员身份解锁)
     
    u 解除用户的profile文件   
    Alter user abc2 profile default;
     
    案例2:用户每隔10天修改密码,宽限2天。
    步骤:
    1.sys管理员连接数据库:conn sys/system as sysdba;
    2.新建profile文件,用来限制用户十天修改密码,宽限期是2天。
    create profile change_pwd limit password_life_time 10password_grace_time 2;
    3.将profile配置文件指定给相应的用户
    Alter user abc2profile change_pwd;
    案例3:限制用户修改密码不能使用以前用过的密码
    步骤:
    1.sys管理员连接数据库:conn sys/system as sysdba;
    2.新建profile文件,限制用户修改密码,不能使用用过的密码
    Create profilepassword_history limit password_life_time 10 password_grace_time 2 passworh d_reuse_time 2;
     
    3.abc2连接数据库,然后连续两次修改密码:
     
    u 查询所有的profile文件
    select *from dba_profiles;
    u 删除profile文件
    drop profileprofile文件名;
    drop profilepassword_history;
    如果profile文件已经指定给用户了,就需要加上cascade关键字。

    SQL> create profile lock_account limit failed_login_attempts 3 password_lock_time 2;
    
    配置文件已创建
    
    SQL> alter user scw profile lock_account;
    
    用户已更改。
    SQL> drop profile lock_act;
    
    配置文件已删除。
    SQL> conn system/123;
    已连接。
    SQL> alter user scw account unlock;
    
    用户已更改。
    SQL> conn scw/111;
    ERROR:
    ORA-01017: invalid username/password; logon denied
    
    
    警告: 您不再连接到 ORACLE。
    SQL> conn scw/111;
    ERROR:
    ORA-01017: invalid username/password; logon denied
    
    
    SQL> conn scw/111;
    ERROR:
    ORA-01017: invalid username/password; logon denied
    
    
    SQL> conn scw/123;
    ERROR:
    ORA-28000: the account is locked
    
    
    SQL> alter userabc2 account unlock;

    进入SQL Plus
    要想使用sqlplus,自然得先打开sqlplus界面,打开界面有两种方式
    ⦁ 从开始菜单中的oracle安装目录直接打开,如下图;


    选择SQL Plus快捷方式,会进入到sqlplus界面,进入之前会让你先登录, 


    ⦁ 从cmd命令窗口进入(如何打开cmd界面不再详述,不会的,出门右转去问度娘),如下图


    连接数据库
    连接数据库也有两种方式
    ⦁ 进入sqlplus界面或者在cmd界面输入指令sqlplus,都会提示“请输入用户名”,如下图
    开始菜单打开的


    CMD打开的


    在cmd界面把sqlplus和登录信息一起输入,直接登录到数据库,如下图;


    到这里,就表示连接成功啦
    用户解锁
    首先必须使用system登录,因为只有数据库管理员才有修改用户状态的权限,比如我要解锁scott账户;


    切记:后面的commit一定不要忘了,否则是无效滴
    用户加锁
    这个可能不太常用,用户解锁会用的比较多,但是还是说一下,也以scott账户举栗;


    切记:和解锁时一样,后面的commit一定不要忘了,否则是无效滴
    修改用户密码
    这个还是很常用滴,话不多说,往下看图;


    切记:还是commit别忘了,>_<;
    显示和设置环境变量
    Linesize:用于控制每行显示多少个字符,默认显示80个字符
    Set linesize 1000;

    
    
  • 相关阅读:
    (转) CS0234: 命名空间“System.Web.Mvc”中不存在类型或命名空间名称“Ajax”(是否缺少程序集引用?)
    服务器修改密码后,发布的网站报“500内部服务器错误”
    关于“/”应用程序中的服务器错误 之解决方案
    (转)根据IP返回对应的位置信息
    (转)C# DateTime格式化大全
    线包字效果
    (转)VS2012网站发布详细步骤
    HTML5 为什么这么火?
    百度地图下拉框搜索建议,并自动添加标注点
    js中检查时间段列表是否有交叉
  • 原文地址:https://www.cnblogs.com/scw123/p/9584813.html
Copyright © 2020-2023  润新知