oracle完整的新建用户,oracle新建用户

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

一、以管理员身份登录PLSQL

45a6679e3d51ea838c0de7b902c8bc8a.png

scott/root as sysdba

二、创建新用户

create user extjsTest1 identified by root;

说明:

extjsTest1:新用户名的用户名

root:新用户的密码

三、创建表空间

create tablespace extjsTest1Tablespace datafile 'D:oracle_tablespaceextjsTest1Data.dbf' size 32M;

说明:

extjsTest1Tablespace:表空间的名字

D:oracle_tablespaceextjsTest1Data.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;

d5a38906ea4a0a8d3f51488148cbc202.png

六、查询指定用户的权限

select * from dba_sys_privs where grantee='EXTJSTEST1';

90fbe1131506a900de96f90dcc0d606b.png

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

select * from user_sys_privs;

续:

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

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

f3e0eaa485a2519f8a45002096e8f31c.png

因此,现在我得给该用户添加一些权限了(以管理员身份登录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 用户的权限是:

6ee546a07709680e3eb5e095c0f4f8ef.png

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

select * from session_privs;

结果:

cb83c9f4fc7df58d92ba562c6f5cb891.png

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

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

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值