广告位联系
返回顶部
分享到

oracle创建新用户以及用户权限配置、查询语句

oracle 来源:互联网 作者:佚名 发布时间:2024-03-03 22:02:24 人浏览
摘要

1.1 创建用户语句: 1 create user [用户名] identified by [密码]; 创建后一定要给用户授权 1 2 --更改用户密码: alter user [用户名] identified by [密码]; 1.2 删除用户 Oracle数据库中默认情况下只有SYSDBA和

1.1 创建用户语句:

1

create user [用户名] identified by [密码];

创建后一定要给用户授权

1

2

--更改用户密码:

alter user [用户名] identified by [密码];

1.2 删除用户

Oracle数据库中默认情况下只有SYSDBA和SYSOPER用户才能执行删除用户命令。

1

drop user [用户名] [CASCADE|FORCE];

--当用户拥有对象时不能直接删除。CASCADE选项表示级联删除,即删除用户后,这个用户创建的对象也一并删除;FORCE参数表示强制删除用户,即无论该用户是否有创建的对象,都会被删除。

1.3 用户授权

系统默认的普通用户scott默认未解锁,不能使用,新建的用户也没有任何权限,必须授予权限。

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

--授予用户创建session的权限,即登陆权限,允许用户登录数据库

grant create session to [用户名];

--授予用户使用表空间的权限

grant unlimited tablespace to [用户名];

--授予创建表的权限

grant create table to [用户名];

--授予删除表的权限

grante drop table to [用户名];

--插入表的权限

grant insert table to [用户名];

--修改表的权限

grant update table to [用户名];

--创建视图的权限

grant create view to [用户名];

--!!!授予所有权限给所有用户!!!

grant all to public;

1.4 撤销用户权限

1

revoke connect from user [用户名];

1.5 查看用户权限

1

2

3

4

--查看指定用户的系统权限

select * from dba_role_privs where grantee=upper('[用户名]');

--查看指定用户的对象权限

select * from dba_tab_privs where grantee=upper('[用户名]');

1.6 角色

1.6.1 三种标准角色

  • CONNECT角色: 是授予最终用户的,最基本的权力,能够连接到ORACLE数据库中,并在对其他用户的表有访问权限时,做SELECT、UPDATE、INSERTT等操作。
  • RESOURCE角色: 是授予开发人员的,能在自己的用户下创建表、序列、视图等。    
  • DBA角色: 是授予系统管理员的,拥有所有的系统权限

1

2

3

4

--将标准角色授权给用户语法:

grant connect,resource to [用户名];

--撤销授权:

revoke connect,resource from [用户名];

1.6.2 创建/授权/删除角色

1

2

3

4

5

6

7

8

9

--创建角色

create role [角色名];

--授权给角色

--将创建session的权限授予角色

grant create session to [角色名];

--将创建的角色授权给用户

grant [角色名] to [用户名];

--删除角色

drop role [角色名];

1.7 权限查询 

1

2

3

4

--查看指定用户有哪些系统权限

select * from dba_role_privs where grantee=upper('[用户名]');

--查看指定用户有哪些对象权限

select * from dba_tab_privs where grantee=upper('[用户名]');

补充:oracle怎么用SQL将一个用户的表完整复制到另一个用户下呢

可以通过以下步骤将一个用户的表完整复制到另一个用户下:

  • 在目标用户下创建一个新的表空间(如果需要)。

  • 在源用户下使用CREATE TABLE AS SELECT语句来创建一个新表,该语句可以将源表的所有数据和结构复制到新表中:

    1

    2

    3

    4

    CREATE TABLE target_user.new_table

    AS

    SELECT *

    FROM source_user.source_table;

  • 在目标用户下使用ALTER TABLE语句更改新表的所有者:

    1

    2

    ALTER TABLE target_user.new_table

    OWNER TO target_user;

  • 如果需要,可以在目标用户下使用GRANT语句授予新表的权限:

    1

    GRANT SELECT, INSERT, UPDATE, DELETE ON target_user.new_table TO other_user;

注意:在上述示例中,“source_user”是源表所在的用户,“source_table”是要复制的表,“target_user”是目标用户,“new_table”是新表的名称,“other_user”是要授予权限的其他用户。


版权声明 : 本文内容来源于互联网或用户自行发布贡献,该文观点仅代表原作者本人。本站仅提供信息存储空间服务和不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权, 违法违规的内容, 请发送邮件至2530232025#qq.cn(#换@)举报,一经查实,本站将立刻删除。
原文链接 :
相关文章
  • 本站所有内容来源于互联网或用户自行发布,本站仅提供信息存储空间服务,不拥有版权,不承担法律责任。如有侵犯您的权益,请您联系站长处理!
  • Copyright © 2017-2022 F11.CN All Rights Reserved. F11站长开发者网 版权所有 | 苏ICP备2022031554号-1 | 51LA统计