ITPub博客

首页 > Linux操作系统 > Linux操作系统 > Oracle从创建用户到创建数据库

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

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

    首先我们在创建用户时不使用默认表空间,看看会有什么情况发生。

    这个错误是在用户创建时留下的,如果使用图形化工具创建用户可能就会留下这种问题,在创建表的时候出现:ORA-01950:对表空间’USERS’无权限。这种问题,如果这种问题已经存在了,解决方法很简单,修改一下用户属性即可。执行下面这条语句:
Sql代码 复制代码 收藏代码
  1. alter user 用户名 quota unlimited on 表空间名  


    这样就可以创建表了。当然在创建用户的时候就可以避免这个问题,方法也很简单,创建完用户时: create user 用户名 identified by 密码 default tablespace 表空间名;之后再给用户授权:
Sql代码 复制代码 收藏代码
  1. grant create session, create table to 用户名  

    这样就可以创建表了。当然也可以如下授权:
Sql代码 复制代码 收藏代码
  1. grant connect, resource to 用户名  

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


    欢迎交流,希望对大家有用。

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/7298399/viewspace-712588/,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2011-11-29

  • 博文量
    6
  • 访问量
    16706