实现Oracle授予用户权限的一个实例

发布日期:2014-03-08 21:59:18

本文将从用户创建讲起,特别讲述Oracle授予用户权限的一个实例,希望对大家了解Oracle授予用户权限有所帮助。

这两天在测数据库同步软件的时候,需要在Oracle里创建一个用户名和密码均为SYSDATA的用户,找了找资料,创建成功,现将Oracle中用户的创建和授予命令摘录下来:

1、Linux 下Oracle的启动

以Oracle身份登录

启动lsnrctl start

登录sqplus /nolog

连接数据库connect/assysdba

启动数据库startup

关闭数据库shutdown immediate

2、在数据中创建用户名

启动数据库后创建用户名

连接超级用户connect system/admin system 系统用户名字 admin 密码

创建用户名字create user SYSDATA identified by admin 用户名:SYSDATA 密码:admin

可以写Default tablespace user//指定存储对象使用的默认空间表默认是system

Temporary tablespace temp; //保存临时对象所使用的空间表默认是system

上面的俩行,可以写空间表为user临时为temp;不写就默认

3、添加用户的权限

Grant是Oracle授予用户权限的如:

  1. Grant create session to SYSDATA;//授予SYSDATA连接数据的权限 

系统权限如下:


系统特权

允许执行的操作

Create session

连接数据库

Create sequence

创建序列

Create synonym

创建同名对象

Create table

创建表

Create any table

创建任何模式的表

Drop table

删除表

Create procedure

创建存储过程

Execute any procedure

执行任何模式的存储过程

Create user

创建用户

Create view

创建视图

Drop user

删除用户

Drop any table

删除任何模式的表


4、向用户授予系统特权

  1. Grant execute any procedure toSYSDATA with admin option 

此句意思为为sha用户创建系统特权并且可以用SYSDATA为别的用户授予权限

连接SYSDATA用户connect SYSDATA/admin

可以创建别的用户

5、查看用户权限

进入SYSDATA用户connect SYSDATA/admin

  1. Select * from user_sys_privs;可以查看到一个列表, 

列代表用户名权限是否可以给别的用户附加权限(N、Y)

行代表权限都有那些

6、撤销用户授予的权限

必须连接connect system/admin

撤销权限revoke是系统撤销权限的关键词

  1. Revoke execute any procedure from SYSDATA; 

7、更改用户密码

进入SYSDATA用户connect SYSDATA/admin

Password输入旧密码输入新密码俩边OK

或者用alter user SYSDATA identified by xinmima

8、删除用户

  1. Connect system/admin  
  2. Drop user SYSDATA; 

9、为用户授予角色

  1. Grant dba to SYSDATA;  
  2. Grant connect to SYSDATA; 

Linux下的plsql创建用户

  1. create user SYSDATA identified by admin  
  2. Default tablespace user 
  3. Temporary tablespace temp;  
  4. Granr unlimited tablespace to SYSDATA;//权限  
  5. Grant dba to SYSDATA;//角色  
  6. Grant connect to SYSDATA;