说明:以下命令在PLSQL中运行

一、以管理员身份登录PLSQL

scott/root as sysdba

二、创建新用户

create user extjsTest1 identified by root;

说明:

extjsTest1:新用户名的用户名
root:新用户的密码

三、创建表空间

create tablespace extjsTest1Tablespace datafile 'D:\oracle_tablespace\extjsTest1Data.dbf' size 32M; 

说明:

extjsTest1Tablespace:表空间的名字
D:\oracle_tablespace\extjsTest1Data.dbf:表空间的存储位置
32M:表空间的大小,m单位为兆(M)

四、将表空间分配给用户

alter user extjsTest1 default tablespace extjsTest1Tablespace;

说明:将名字为extjsTest1Tablespace的表空间分配给extjsTest1

五、给用户授权

grant create session,create table,unlimited tablespace to extjsTest1;

说明:一般给用户授予resource角色就行: SQL: grant connect,resource to extjsTest1;

一般的权限都在里头,想查看resource具体有什么权限:
SQL:select PRIVILEGE from role_sys_privs where role='RESOURCE';

六、查询所有用户

select * from all_users;

六、查询指定用户的权限

select * from dba_sys_privs where grantee='EXTJSTEST1';

七、以用户"EXTJSTEST1"登录PLSQL,可以用以下SQL查询当前用户的权限:

select * from user_sys_privs;

续:

1.若要在Oracle SQL Developer/PLSQL中可视化工具中查看、编辑extjsTest1 这个用户的表空间对应的表,需要创建该用户对应的连接,具体方法参见:“在TNSNAMES.ORA文件中配置本机装的oracle ”及“在Oracle SQL Developer中创建新连接”这两篇博客,这里不再赘述。

2.上面SQL由于分配的权限限制,导致我给表创建序列失败,如下图:

因此,现在我得给该用户添加一些权限了(以管理员身份登录PLSQL进行操作),SQL:

1.先删除extjsTest1 用户原权限:

revoke create session,create table,unlimited tablespace from EXTJSTEST1;

2.再添加权限:

grant connect,resource to EXTJSTEST1 ;

发现不管用,执行以上SQL后,用SQL“select * from dba_sys_privs where grantee='EXTJSTEST1';”查询extjsTest1 用户的权限是:

弄了一段时间,忽然想到先看下scott用户有什么权限,也用以上SQL查询,发现权限和上面的完全一样——不对,scott用户能创建序列,那么--又百度一下,发现一条SQL也能查询权限:(注:用普通身份登录scott就好了,不用以管理员身份登录,这个是查询当前用户的所有权限)

select * from session_privs;

结果:

现在大概能明白了,select * from dba_sys_privs where grantee='EXTJSTEST1'就是个“坑”,它是查询用户的系统权限,而session_privs是当前用户的所有权限,关于它们之间的区别在这里就不再深究了,详情参见:http://blog.sina.com.cn/s/blog_625651900100ifrk.html

小结:grant connect,resource to EXTJSTEST1 ;这条语句没有任何问题,可以赋给指定用户一般需要的权限。

												

oracle新建用户的更多相关文章

  1. Linux下Oracle新建用户并且将已有的数据dmp文件导入到新建的用户下的操作流程

    Oracle新建用户并且将已有的数据dmp文件导入到新建的用户下的操作流程 1.切换到oracle用户下 su - oracle 2.登录sqlplus sqlplus /nolog 3.使用sysd ...

  2. Oracle 新建用户、赋予权限

    1.新建用户 新建用户: create User username Identified by password 修改用户密码: alter User username Identified by p ...

  3. Oracle新建用户、角色,授权,建表空间

    oracle数据库的权限系统分为系统权限与对象权限.系统权限( database system privilege )可以让用户执行特定的命令集.例如,create table权限允许用户创建表,gr ...

  4. oracle新建用户并授权步凑

    #首先创建表空间.存放路径.设置表空间大小 create tablespace tbs_ams datafile '+DATA/pdorcl1/datafile/ams1.dbf' size 1024 ...

  5. 记一次oracle新建用户及分配指定表权限的操作记录

    1.登录 2.创建用户create user new用户名 identified by new用户名创建new用户名用户,密码设置为new用户名. 3.授权new用户名用户的连接.资源权限.grant ...

  6. Oracle新建用户赋只读某几张表的权限

    create user JSETI_WZQ identified by abcdef; -- 假设abcdef是密码 grant connect,resource to JSETI_WZQ; gran ...

  7. oracle 新建用户后赋予的权限语句

    grant create session,resource to itsys; grant create table to itsys;grant resource to itsys;grant cr ...

  8. oracle 新建用户

    create user username identified by password; grant dba to username; 授权 或 grant connect, resource to ...

  9. 使用Navicat for Oracle新建表空间、用户及权限赋予---来自烂泥

    Navicat for Oracle是有关Oracle数据库的客户端工具.通过这个客户端,我们可以图形方式对Oracle数据库进行操作. 说 明我们此次试验的Oracle数据库版本是Oracle 10 ...

随机推荐

  1. asp.net中web.config配置节点大全详解【转】

    web.config 文件查找规则: (1)如果在当前页面所在目录下存在web.config文件,查看是否存在所要查找的结点名称,如果存在返回结果并停止查找. (2)如果当前页面所在目录下不存在web ...

  2. Java Concurrency - 线程执行器

    Usually, when you develop a simple, concurrent-programming application in Java, you create some Runn ...

  3. C#数组比较取值

    string strs = string.Empty;            string[] strArray1 = { "a", "b", "c& ...

  4. 微软的技术态度 -- 从其对于CRT的设计考虑说起

    很多人从C语言学习过来的人都知道,在编写程序时用到的像printf这样的函数,是作为该语言标准库函数提供的,这也是C语言标准中规定的内容.因此,操作系统必须对其保持一定程度上的透明,也就是说,作为一个 ...

  5. (转)如何把exe的flash还原成swf

    首先要准备一个16进制字节码编辑器,这里用的是UltraEdit,可以到这里下载它最新的破解版.现在我们开始我们的还原工作吧.1.用UltraEdit打开待还原的exe文件.你就会看到这个exe的字节 ...

  6. (转)在SQL中取出字符串中数字部分或在SQL中取出字符部分

    近来在开发一个项目时,一包含数字的字符串,需要取出中间的数字部分进行排序.经过baidu搜索.并结合自己项目的需求,编写了一个自定义的SQL函数用供项目中使用. /****** Object: Use ...

  7. (转)持续化集成工具CruiseControl.NET

    持续化集成工具CC.NET[ 引言: 团队开发需要 进行集中的项目文件管理与有效的协调,我们采用源代码管理工具协助我们管理,卓有成效.限定重要文件的访问权限.使用悲观锁杜绝成员同时编辑同一份文件. 不 ...

  8. java学习笔记_GUI(1)

    import javax.swing.*; public class Gui { public static void main(String[] args) { JFrame frame = new ...

  9. JAVA_SE复习(Class)

    一.面向对象程序设计(OOP) 1.面向对象的程序设计是程序开发的一种方法.它将对象作为程序的基本单元,将程序和 数据封装其中,以提高软件的重用性.灵活性和扩展性 2.三个特征: 封装:隐藏信息 继承 ...

  10. 判断浏览器js代码

    (function(){ var UA = {}; var ua = navigator.userAgent.toLowerCase(),s; UA.ie = (s = ua.match(/(msie ...