Oracle用户的创建和删除

1. 创建用户

SQL> create user user01 identified by user01;

User created.

但登录提示01045的错误,缺少CREATE SESSION权限。

ERROR:

ORA-01045: user USER01 lacks CREATE SESSION privilege; logon denied

Enter user-name:

此时需要赋予connect权限给用户(原因见(2)),登陆后创建表提示01031错误:

SQL> create table t(x number);

create table t(x number)

*

ERROR at line 1:

ORA-01031: insufficient privileges

再次赋予resource权限给用户(原因见(2)),就可以创建表了。

2. 需要为用户授予connect和resource权限

SQL> grant connect, resource to user01;

Grant succeeded.

下面来说说为什么需要connect和resource权限,

关于connect和resource的权限可参见之前的博客文章:http://blog.itpub.net/7192724/viewspace-1184490/

RESOURCE:拥有Resource权限的用户只可以创建实体,不可以创建数据库结构。

CONNECT:拥有Connect权限的用户只可以登录Oracle,不可以创建实体,不可以创建数据库结构。

SQL> select grantee,privilege from dba_sys_privs where grantee=‘RESOURCE‘ order by privilege;

GRANTEE                              PRIVILEGE

------------------------------ ----------------------------------------

RESOURCE                            CREATE CLUSTER

RESOURCE                            CREATE INDEXTYPE

RESOURCE                            CREATE OPERATOR

RESOURCE                            CREATE PROCEDURE

RESOURCE                            CREATE SEQUENCE

RESOURCE                            CREATE TABLE

RESOURCE                            CREATE TRIGGER

RESOURCE                            CREATE TYPE

8 rows selected.

SQL> select grantee,privilege from dba_sys_privs where grantee=‘CONNECT‘ order by privilege;

GRANTEE                              PRIVILEGE

------------------------------ ----------------------------------------

CONNECT                             CREATE SESSION

因此具有connect的用户就有sqlplus创建SESSION的权限,至于创建表就靠resource权限。

3. 删除用户

SQL> drop user user01;

drop user user01

*

ERROR at line 1:

ORA-01922: CASCADE must be specified to drop ‘USER01‘

报错说明该用户下有创建的其他对象,如果删除用户,有两种方法:

1. 删除用户下的对象:

登录user01后执行:

SQL> drop table tbl_seg;

Table dropped.

再次登录SYS执行:

SQL> drop user user01;

User dropped.

2. 使用CASCADE级联删除:

drop user user01 cascade;

Oracle用户的创建和删除

时间: 2024-09-28 23:29:48

Oracle用户的创建和删除的相关文章

Oracle数据库管理之创建和删除数据库

一.数据库管理概述 在完成Oracle软件安装后,DBA就应该对组织和管理数据库负责任,其主要任务是: (1)启动和关闭数据库: (2)创建数据库: (3)删除数据库: (4)调整初始化参数: (5)管理网络. 对于数据库的管理,必须要具有SYSDBA和SYSOPER的角色,才有权启动.关闭.运行数据库.SYSDBA角色拥有SYS数据表的所有权限,SYSOPER的角色拥有Public数据表的所有权限. 二.数据库的管理方法 (1)DOS命令行方式 命令行管理是DBA管理数据库服务器的传统方法.在

Oracle 表文件,表空间,用户,的创建 和删除

[本文谢绝转载,原文来自http://990487026.blog.51cto.com] 连接超级用户: [[email protected] ~]$ sqlplus /nolog SQL> conn /as sysdba Connected. 查数据文件: SQL> select * from v$dbfile;   4 /opt/oracle/app/oradata/orcl/users01.dbf  3 /opt/oracle/app/oradata/orcl/undotbs01.dbf

Oracle数据库之创建和删除数据库

创建数据库 1 使用Database Configuration  Assistant工具创建Oracle数据库 步骤一 操作窗口 有4种选择  A 创建数据库 B 配置数据库选件 C 删除数据库 D 管理模板 步骤二 数据库模板 窗口 有3种选择  A 一般用途或事务处理 B 定制数据库 C 数据仓库 步骤三 数据库标识 在这一步中,需要输入 全局数据库名 和 Oracle 系统标识符(SID) 全局数据名是Oracle 数据库的唯一标识,所以不能与已有的数据库重名 打开oracle数据库时,

mysql用户的创建、删除、权限更改

创建用户:  CREATE USER 'username'@'host' IDENTIFIED BY 'password'; 用户删除: DROP USER 'username'@'host'; 创建用户并授权: GRANT privileges ON databasename.tablename TO 'username'@'host' IDENTIFIED BY 'password' ; 用授权户: GRANT privileges ON databasename.tablename TO

ORACLE数据库中创建、删除--同义词、视图、索引、序列

select * from emp; create synonym emp_ny for emp; create public synonym pub_emp_ny for employees;--创建公有同义词 DROP SYNONYM EMP_NY;--删除同义词 DROP PUBLIC SYNONYM PUB_EMP_NY;--删除公有同义词 查看已有同义词 SELECT * FROM SYS.ALL_SYNONYMS WHERE table_name='DIC_TRIPMODE'; CR

oracle序列的创建、删除和使用

创建序列 create sequence TEST --序列名minvalue 1 --定义序列生成器能产生的最小值.选项NOMAXVALUE是默认选项,代表没有最小值定义,这时对于递减序列,系统能够产生的最小值是?10的26次方;对于递增序列,--最小值是1.maxvalue 999999999999999999999999999 --定义序列生成器能产生的最大值.选项NOMAXVALUE是默认选项,代表没有最大值定义,这时对于递增Oracle序列,系统能够产生的最--大值是10的27次方;对

Linux基础学习-用户的创建修改删除

用户添加修改删除 1 useradd添加用户 添加一个新用户hehe,指定uid为3000,家目录为/home/haha [[email protected] ~]# useradd -u 3000 -d /home/haha hehe hehe:x:3000:3000::/home/haha:/bin/bash [[email protected] ~]# ls /home/ haha 这里-u是uid,-g可以指定组id,不定值系统自动分配,-G可以指定附加组,如果不想让用户登录系统可以指定

强制删除正在连接的Oracle用户,以删除SDE用户为例

. 有时候想强制删除一个已经连接的Oracle用户,不能直接删除,可以用Kill会话信息. 比如今天想删除一个被连接的SDE用户,可以用以下方法删除一个“正在被连接”的用户. 1.查看所有用户的会话信息. select sid,serial#,username from v$session; 2.查看某一个指定用户的会话信息. 比如我们要删除其中的SDE用户,则可以用以下命令查看SDE用户的会话信息. select  sid,serial# from v$session where userna

MySql数据库基础操作——数据库、用户的创建,表的制作、修改等

MySql 是一款使用便捷.轻量级的数据库.因为他体积小.速度快.安装使用简单.开源等优点,目前是使用最广泛的数据库.目前位于Oracle甲骨文公司旗下.那今天我们就来介绍一下数据库的基本操作.具体介绍通过指令的方式来操作数据库. 首先,连接数据库的软件很多,比如说 Navicat 等软件.通过这些软件可以轻松便捷的操作数据库,但是今天的重点不在这. 我们今天普及一下指令操作的方式操作MySql数据库. 我们主要从以下 4 个方面介绍: 1.数据库的 创建.删除.查询 等语句 跳转 2.用户的