码迷,mamicode.com
首页 > 数据库 > 详细

oracle 解锁、登陆、链接等+oracle用户管理

时间:2018-09-05 15:07:20      阅读:206      评论:0      收藏:0      [点我收藏+]

标签:int   安装   insert   开始   nop   登陆   修改字符集   mit   创建用户   

1、常用命令

安装完成oracle后,

点击开始

技术分享图片

打开sol plus 后

技术分享图片

密码是隐藏的

技术分享图片

数据库链接成功

我们使用的是scott用户

 alter user scott account unlock;----------------------------------------------解锁
commit;切记:后面的commit一定不要忘了,否则是无效滴

alter user scott identified by 123;---------------------------------------------更改密码
conn scott;------------------------------------------------------------------------使用scott用户
技术分享图片

技术分享图片

 

修改用户密码

这个还是很常用滴,话不多说,往下看图;

技术分享图片

切记:还是commit别忘了

2、用户管理

 

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

技术分享图片

新建的用户是没有任何权限的,包括连接数据库的权限。所以需要给予开通权限:

 

(2)赋予用户连接数据库的权限:grant create session to zhansgan;

 

赋予用户dba的角色:grant dba to zhangsan;

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

 

(3)修改密码

oracle中如果要修改自己的密码直接使用passw[ord]命令,如果要修改其他用户的密码则必须具备dba角色或alteruser权限

修改其他用户的密码

语法:alter user 用户名 identified by 密码;

 

(4)解锁用户/锁定用户

解锁用户: alter user 用户名account unlock;

锁定用户:alter user 用户名 account lock;

(5)

 

----------角色权限:dba 管理员

 

---------------- connect:连接数据库

 

-----------------resource: 创建表的权限

 

----------------案例1:创建用户abc1,并赋予他连接数据库和创建表的权限。

 

步骤:

 

1. sys管理员连接数据库:conn sys/system as sysdba;

 

2. 新建用户abc1create user abc1 identified by 123;

 

3. abc1用户授权:

 

Grant  connectresource  to  abc1;

 

 

---------------案例2: 授予abc1 查询scott 用户emp表的权限。

 

步骤:

 

1.       sys管理员连接数据库:conn sys/system as sysdba;

 

2.       abc1用户授权:

 

grant  select  on  scott.emp  to  abc1;

 

---------------案例3: 授予abc1用户scottemp表的所有权限。

 

步骤:

 

1. sys管理员连接数据库:conn sys/system as sysdba;

 

2. abc1用户授权:

 

grant all on scott.emp to abc1;

 

3. abc1 连接数据库:conn abc1/abc1;

 

4. scott emp表中插入一条数据:

 

insert into scott.emp(empno,ename) values(123, ‘zhangsan’);

 

(6)回收权限

 

Oracle中只有管理员才可以回收权限。

 

语法:revoke 权限/角色from 用户名;

 

--------------案例1: 回收abc1对于scottemp表的所有权限。

 

步骤:

 

1. sys管理员连接数据库: conn sys/system as sysdba;

 

2. 撤销abc1的权限:revoke all on scott.emp fromabc1;

 

3. 连接abc1conn abc1/abc1;

 

4. 查询下scott 用户的emp表:select * from scott.emp;

 

-------------案例2: 回收abc1对于连接数据库的权限。

 

步骤:

 

1.       sys管理员连接数据库: conn sys/system as sysdba;

 

2.       撤销abc1的权限:revoke connect from abc1;

 

3.       abc1连接数据库:conn abc1/abc1;

 

(7)给其他用户授权的能力

 

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

 

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

 

 

 

语法:grant 权限to 用户名 with admin option;

 

  grant 权限 to 用户名with grant option;

 

--------------案例.1:给abc1赋予连接数据库,创建表和授予别的用户的权限的权限,并授予abc2用户连接数据库的权限。

 

步骤:

 

1.       sys管理员连接数据库: conn sys/system as sysdba;

 

2.       abc1用户授权: grant create sessioncreate table to abc1 with adminoption;

 

3.       创建用户abc2createuser abc2 identified by abc2;

 

4.       abc1连接数据库: conn abc1/abc1;

 

5.       abc1abc2授权create sessiongrant create session to abc2;

 

6.       abc2连接数据库:conn abc2/abc2;

 

 

 

--------------案例2:给abc1赋予scott用户下emp表的所有权限和授予别人权限的权限,并给abc3用户授予scott用户下emp表的所有权限。

 

步骤:

 

1.       sys管理员连接数据库: conn sys/system as sysdba;

 

2.       abc1用户授权: grant all on scott.emp to abc1with grant option;

 

3.       创建用户abc3createuser abc3 identified by abc3;

 

4.       abc3用户授予连接数据库的权限:grant create session to abc3;

 

5.       abc1连接数据库: conn abc1/abc1;

 

6.       abc1abc3授权all on scott.emp grant all on scott.emp to abc3;

 

7.       abc3连接数据库:conn abc3/abc3;

 

8.       abc3查询scott用户下emp表的内容:select * from scott.emp;

 

 

(8)查询当前有多少用户(必须用管理员身份才可以查询)

Select *from all_users;

查询dba:select * from dba_users;

查询当前用户的信息:select * from user_users;

 

 

 

oracle 解锁、登陆、链接等+oracle用户管理

标签:int   安装   insert   开始   nop   登陆   修改字符集   mit   创建用户   

原文地址:https://www.cnblogs.com/yang1182/p/9583428.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!