Oracle从创建用户到创建数据库

以Oracle 11g为例。
很多时候我们经常使用第三方工具连接数据库,比如Navicat,这些工具图形化使用方便,但在数据库权限上可能带来无法预料的问题。现在遇到这样的问题:在Navicat中创建的用户SQL*PLUS中识别不到,对某表空间无权限等。这种操作在图形化工具中虽然可以勾选完成,但是权限管理大事还是用SQL语句来的更放心。
下面将从创建用户开始到创建数据库,解决一些遇到的问题,Oracle实验版本为11g。创建用户的SQL语句为:
create user 用户名 identified by 密码 default tablespace 表空间名

首先我们在创建用户时不使用默认表空间,看看会有什么情况发生。
[img]http://dl.iteye.com/upload/attachment/203273/728ac5df-77e8-33b5-b3f0-032f6a4d58de.jpg[/img]
这个错误是在用户创建时留下的,如果使用图形化工具创建用户可能就会留下这种问题,在创建表的时候出现:ORA-01950:对表空间’USERS’无权限。这种问题,如果这种问题已经存在了,解决方法很简单,修改一下用户属性即可。执行下面这条语句:
alter user 用户名 quota unlimited on 表空间名

[img]http://dl.iteye.com/upload/attachment/203275/08c7d76c-ccc9-3295-ae1a-b9893e4c1fef.jpg[/img]
这样就可以创建表了。当然在创建用户的时候就可以避免这个问题,方法也很简单,创建完用户时: create user 用户名 identified by 密码 default tablespace 表空间名;之后再给用户授权:
grant create session, create table to 用户名

这样就可以创建表了。当然也可以如下授权:
grant connect, resource to 用户名

这种方式的授权就是create user时忘记default tablespace也可创建表。connect只有create session权限,这是连接数据库的基本权限。resource是开发者权限,至于其中包含的内容可以查询系统表中的具体内容:
select * from role_sys_privs where role=’RESOURCE’

[img]http://dl.iteye.com/upload/attachment/203280/b6f1f06e-d84c-390c-b4f5-c7c703bc83cf.jpg[/img]
欢迎交流,希望对大家有用。
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值