美文网首页
Linux 下创建用户表空间.md

Linux 下创建用户表空间.md

作者: 小小一匹狼 | 来源:发表于2017-05-20 09:36 被阅读0次

linux下创建oracle用户表空间

操作步骤如下:

  1. 登录linux,以oracle用户登录(如果是root用户登录的,登录后用 su - oracle命令切换成oracle用户)
  2. 以sysdba方式来打开sqlplus,命令如下: sqlplus "/as sysdba"
  3. 查看我们常规将用户表空间放置位置:执行如下sql:select name from v$datafile;上边的sql一般就将你的用户表空间文件位置查出来了
  4. 创建用户表空间:CREATE TABLESPACE NOTIFYDB DATAFILE '/oracle/oradata/test/notifydb.dbf' SIZE 200M AUTOEXTEND ON EXTENT MANAGEMENT LOCAL SEGMENT SPACE MANAGEMENT AUTO;
  5. 创建用户,指定密码和上边创建的用户表空间:CREATE USER hc_notify IDENTIFIED BY hc_password DEFAULT TABLESPACE NOTIFYDB;
  6. 赋予权限
grant connect,resource to hc_notify;
grant unlimited tablespace to hc_notify;
grant create database link to hc_notify;
grant select any sequence,create materialized view to hc_notify;
GRANT create any table TO jack;
GRANT resource,dba TO jack;
GRANT select any table TO jack;
  1. 经过以上操作,我们就可以使用hc_notify/hc_password登录指定的实例,创建我们自己的表了

创建临时表空间:

create temporary tablespace test_temp tempfile 'F:\app\think\oradata\orcl\test_temp01.dbf' size 32m autoextend on next 32m maxsize 2048m extent management local;

创建表空间:

create tablespace test_data logging datafile 'F:\app\think\oradata\orcl\test_data01.dbf' size 32m autoextend on next 32m maxsize 2048m extent management local;

创建用户:

create user jack identified by jack default tablespace test_data temporary tablespace test_temp;

为用户赋予权限:

GRANT create any table TO jack;
GRANT resource,dba TO jack;
GRANT select any table TO jack;

这种问题,一看就是当前连接用户没有对sys用户下的表v$session,v$sesstat,v$statname的select权限
解决此问题的方式就是授权:
以sysdba身份登录

grant select on v_$statname to username;
grant select on v_$sesstat to username;
grant select on v_$session to username;
grant select on v_$mystat to username;

第一个是授予所有table有create权限,第三是授予所有table有select权限.
第二个就是赋予DBA的权限,这才是最重要的,其实只要第二就可以了.

删除用户表空间的步骤:

Alter tablespace 表空间名称 offline;
Drop tablespace 表空间名称;(表空间无有数据时用)

或者
drop tablespace 表空间名称 including contents;(表空间下有数据时候用)
temporary tablespace是oracle里临时表空间,临时表空间主要用途是在数据库进行排序运算、管理索引、访问视图等操作时提供临时的运算空间,当运算完成之后系统会自动清理。当oracle里需要用到sort的时候,而pga又没有足够大的时候,将会把数据放入临时表空间里进行排序,同时如果有异常情况的话,也会被放入临时表空间,但是我们需要重建temporary tablespace,直接是不能drop默认的临时表空间的,不过我们可以通过以下方法来做。

查看目前的temporary tablespace

select name from v$tempfile;

相关文章

  • Linux 下创建用户表空间.md

    linux下创建oracle用户表空间 操作步骤如下: 登录linux,以oracle用户登录(如果是root用户...

  • Oracle DDL语句

    创建表空间 删除表空间 创建表空间下用户 授权

  • Oracle创建表空间创建用户和用户授权

    Oracle创建表空间创建用户和用户授权 --创建表空间 --创建临时表空间 --创建用户 --用户授权grant...

  • 4. ubuntu 18.04 dm7 表创建和权限处理

    创建表需要和表空间关联,在图形化创建表的时候,其步骤为 创建表空间 创建用户,并且关联表空间 模式下新建模式并且指...

  • 2022-09-10

    (一)创建表空间、创建用户、用户赋权限、表结构 一、创建表空间 二、创建用户 三、用户赋权限 说明:给用户赋dba...

  • oracle常用基础命令

    使用系统用户登录 查看登录的用户 启用scott用户 创建表空间 查看表空间的路径 修改表空间 删除表空间 创建表...

  • 创建表空间和用户

    oracle em地址: 创建临时表空间 创建数据表空间 创建用户并指定表空间 给用户授予权限 增加表空间大小 删...

  • 【转载】linux系统下创建oracle表空间和用户权限查询

    创建用户和表空间: 登录linux,以oracle用户登录(如果是root用户登录的,登录后用 su - orac...

  • 创建表空间及用户

    临时表空间 数据表空间 创建用户 赋予权限 查询所有用户 查询所有临时表空间 查询所有表空间 删除用户 删除表空间...

  • Oracle表空间管理

    Oracle表空间管理 创建表空间并指定用户请查看此文章:创建表空间并指定用户 查看表空间大小: 查看表空间存放位...

网友评论

      本文标题:Linux 下创建用户表空间.md

      本文链接:https://www.haomeiwen.com/subject/esnuxxtx.html