精华内容
下载资源
问答
  • Oracle数据库创建表空间 create tablespace new_taspace –表空间名 DATAFILE 'D:NEWTABLESPACE.DBF' –表空间关联的数据文件和位置 size 200M –文件初始大小 autoextend on next 20MB MAXSIZE 400MB; –...
  • ORACLE12C 创建表空间的方法

    千次阅读 2018-06-09 12:57:01
    oracle 数据库中,表空间是最大的概念,与用户独立,创建一个表空间,所有用户可以共用。接下来,讲解在oracle 12c 数据库中创建表空间的方法,在oracle 12c 数据库中,默认表空间有UNDOTBS1,UESRS,SYSTEM,SYSAUX...

            在oracle 数据库中,表空间是最大的概念,与用户独立,创建一个表空间,所有用户可以共用。接下来,讲解在oracle 12c 数据库中创建表空间的方法,在oracle 12c 数据库中,默认表空间有UNDOTBS1,UESRS,SYSTEM,SYSAUX,

    TEMP。有时候,我们需要自定义表空间,按以下步骤操作:

            1.创建表空间,一般用户可能创建不了,那么使用sys用户登录数据库。

            2.在工作表窗口,输入以下sql语句:

                     create  tablespace  [tablespace_name]

                     Datafile [‘D:\database\oracle_table_space\tablespace_name.dbf’] size [1024m]

                    autoextend  [on|off] next [526k]  

                   [ logging|nologging;]

       在上述SQL语句中,红色字体高亮显示的是创建表空间的关键字。

           1.tablespace_name是用户自定义的表空间名称,由用户随意命名。

           2.datafile 是表空间在本地磁盘的存放路径,由用户自定义,需要注意的是在自定义表空间路径之前,用户要在本地磁盘创建好此路径,因为oracle在执行上述创建表空间SQL 语句时,是不会自动在本地磁盘创建由关键字datafile 指定的路径。

           3.dbf格式的文件是oracle规定的表空间文件,也是我们所要创建的表空间,一般为了方便起见,此文件的名称与表空间名称相同,不同也不影响。

           4.size 关键字,指定开辟的空间大小,其单位有k 和m。

           5.autoextend 关键字,是否为自动扩展表空间,如果为 on,表示可以自动扩展表空间大小,反之为off。Next,用于定义表空间的增长量,即每次自动扩充多少k。

          6.logging表示是否需要对DML进行日志记录,记录下的日志可以用于恢复数据。nologging  则表示不需要对DML进行日志记录。

     创建表空间的另一种方式;

    7.create  tablespace  [tablespace_name]

           [logging|onlogging]

           Datafile [‘D:\database\oracle_table_space\tablespace_name.dbf’] size [1024m]

          autoextend  [on|off] next [526k]  

          [extent management local;]

     

    展开全文
  • oracle数据库导入、导出数据、创建表空间创建用户、用户授权等操作
  • 创建表空间 create tablespace SIRM2 datafile ‘D:\oracle\product\10.2.0\oradata\orcl\SIRM2.dbf’ size 1024M --存储地址 初始大小1G autoextend on next 10M maxsize unlimited --每次扩展10M,无限制扩展 ...
    1. 创建表空间

    create tablespace SIRM2
    datafile ‘D:\oracle\product\10.2.0\oradata\orcl\SIRM2.dbf’ size 1024M --存储地址 初始大小1G
    autoextend on next 10M maxsize unlimited --每次扩展10M,无限制扩展

    EXTENT MANAGEMENT local autoallocate

    segment space management auto;

    2.创建用户

    create user test identified by test

    default tablespace SIRM2
    temporary tablespace TEMP
    profile DEFAULT;

    3.授权

    grant dba to test;
    grant connect to test;
    grant resource to test;

    SYS用户在CMD下以DBA身份登陆:

    在CMD中打sqlplus /nolog

    然后再

    conn / as sysdba

    //创建临时表空间

    create temporary tablespace user_temp

    tempfile ‘D:\oracle\oradata\Oracle9i\user_temp.dbf’

    size 50m

    autoextend on

    next 50m maxsize 20480m

    extent management local;

    //创建数据表空间

    create tablespace test_data
    logging

    datafile ‘D:\oracle\oradata\Oracle9i\user_data.dbf’
    size 50m

    autoextend on

    next 50m maxsize 20480m

    extent management local;

    //创建用户并指定表空间

    create user username identified by password

    default tablespace user_data
    temporary tablespace user_temp;

    //给用户授予权限

    grant connect,resource to username;

    //以后以该用户登录,创建的任何数据库对象都属于user_temp 和user_data表空间,
    这就不用在每创建一个对象给其指定表空间了

    撤权:

       revoke   权限...   from  用户名; 
    

    删除用户命令

    drop user user_name cascade;

    建立表空间

    CREATE TABLESPACE data01
    DATAFILE ‘/oracle/oradata/db/DATA01.dbf’ SIZE 500M
    UNIFORM SIZE 128k; #指定区尺寸为128k,如不指定,区尺寸默认为64k

    删除表空间

    DROP TABLESPACE data01 INCLUDING CONTENTS AND DATAFILES;
    一、建立表空间

    CREATE TABLESPACE data01
    DATAFILE ‘/oracle/oradata/db/DATA01.dbf’ SIZE 500M
    UNIFORM SIZE 128k; #指定区尺寸为128k,如不指定,区尺寸默认为64k

    二、建立UNDO表空间

    CREATE UNDO TABLESPACE UNDOTBS02

    DATAFILE ‘/oracle/oradata/db/UNDOTBS02.dbf’ SIZE 50M

    #注意:在OPEN状态下某些时刻只能用一个UNDO表空间,如果要用新建的表空间,必须切换到该表空间:

    ALTER SYSTEM SET undo_tablespace=UNDOTBS02;

    三、建立临时表空间

    CREATE TEMPORARY TABLESPACE temp_data
    TEMPFILE ‘/oracle/oradata/db/TEMP_DATA.dbf’ SIZE 50M
    四、改变表空间状态

    1.使表空间脱机

    ALTER TABLESPACE game OFFLINE;

    如果是意外删除了数据文件,则必须带有RECOVER选项

    ALTER TABLESPACE game OFFLINE FOR RECOVER;

    2.使表空间联机

    ALTER TABLESPACE game ONLINE;
    3.使数据文件脱机

    ALTER DATABASE DATAFILE 3 OFFLINE;

    4.使数据文件联机

    ALTER DATABASE DATAFILE 3 ONLINE;
    5.使表空间只读

    ALTER TABLESPACE game READ ONLY;
    6.使表空间可读写

    ALTER TABLESPACE game READ WRITE;

    五、删除表空间

    DROP TABLESPACE data01 INCLUDING CONTENTS AND DATAFILES;
    六、扩展表空间

    首先查看表空间的名字和所属文件

    select tablespace_name, file_id, file_name,

    round(bytes/(1024*1024),0) total_space

    from dba_data_files
    order by tablespace_name;

    1.增加数据文件

    ALTER TABLESPACE game

    ADD DATAFILE ‘/oracle/oradata/db/GAME02.dbf’ SIZE 1000M;

    2.手动增加数据文件尺寸

    ALTER DATABASE DATAFILE ‘/oracle/oradata/db/GAME.dbf’

    RESIZE 4000M;

    3.设定数据文件自动扩展

    ALTER DATABASE DATAFILE '/oracle/oradata/db/GAME.dbf

    AUTOEXTEND ON NEXT 100M

    MAXSIZE 10000M;

    设定后查看表空间信息

    SELECT A.TABLESPACE_NAME,A.BYTES TOTAL,B.BYTES USED, C.BYTES FREE,

    (B.BYTES100)/A.BYTES “% USED”,(C.BYTES100)/A.BYTES “% FREE”

    FROM SYS.SM T S A V A I L A , S Y S . S M TS_AVAIL A,SYS.SM TSAVAILA,SYS.SMTS_USED B,SYS.SM$TS_FREE C

    WHERE A.TABLESPACE_NAME=B.TABLESPACE_NAME AND A.TABLESPACE_NAME=C.TABLESPACE

    添加链接描述

    展开全文
  • Oracle创建表空间

    万次阅读 2018-07-09 23:00:03
    数据库—表空间,一个表空间可以与多个数据文件关联,一个数据库下可以建多个表空间,一个表空间可以建立多个用户,一个用户下可以创建多张表。 (SQL) create tablespace mytablespace datafile 'c:\...

    ORacle DDL

    1、 创建表空间

    表空间:Oracle数据库的逻辑单元。数据库—表空间,一个表空间可以与多个数据文件关联,一个数据库下可以建多个表空间,一个表空间可以建立多个用户,一个用户下可以创建多张表。
    表空间-存储数据逻辑单位–用户管理表空间,用户向表空间中添加记录真正存在数据文件中(*.dbf)
    (SQL)
    create tablespace mytablespace
    datafile 'c:\mytablespace.dbf'
    size 100m
    aotuextend on
    next 10m;

    mytablespace : 表空间名称
    datafile: 指定表空间对应的数据文件(位置)
    size:表空间的初始大小
    autoextend on :自动增长,
    next: 一次自动增长的大小
    格式:

    格式固定,顺序不能变
    create tablespace 表空间名称
    datafile '数据文件的位置'
    size 表空间的初始化大小
    autoextend on
    next

    2、创建用户


    create user gaowei identified by gaowei default tablespace mytablespace;
    createa user 用户名 identified by 密码 default tablespace 表空间名称;

    identified by 后边是用户的密码
    default tablespace 后边是表空间名称
    oracle 数据库与其它数据库产品的区别在于,表和其它的数据库对象都是存储在用户下的
    使用命令创建好用户,没有登陆权限,登陆后会提示。
    这里写图片描述
    Oracle 中已存在三个重要的角色:connect 角色,resource 角色,dba 角色
    CONNECT 角色: –是授予最终用户的典型权利,最基本的
    ALTER SESSION –修改会话
    CREATE CLUSTER –建立聚簇
    CREATE DATABASE LINK –建立数据库链接
    CREATE SEQUENCE –建立序列
    CREATE SESSION –建立会话
    CREATE SYNONYM –建立同义词
    CREATE VIEW –建立视图

    RESOURCE 角色: –是授予开发人员的
    CREATE CLUSTER –建立聚簇
    CREATE PROCEDURE –建立过程
    CREATE SEQUENCE –建立序列
    CREATE TABLE –建表
    CREATE TRIGGER –建立触发器
    CREATE TYPE –建立类型
    DBA 角色:拥有全部特权,是系统最高权限,只有 DBA 才可以创建数据库结构,并且系统权限也需
    要 DBA 授出,且 DBA 用户可以操作全体用户的任意基表,包括删除。

    给用户授权限

    grant dba to gaowei;
    --表示把 dba权限授予给 gaowei(用户)
    格式:
    grant connect(或者resource,dba) to 用户名

    展开全文
  • Oracle自动创建表分区

    千次阅读 2020-01-07 11:56:24
    Oracle的分区大家应该都不陌生,分区有范围分区,列表分区,HASH分区及组合分区4种。其中,范围分区应用的最为广泛,列表次之。 范围分区有几个关键字,一个是partition by range,表示分区为范围分区;values ...

    Oracle的分区表大家应该都不陌生,分区表有范围分区,列表分区,HASH分区及组合分区4种。其中,范围分区应用的最为广泛,列表次之。

    范围分区有几个关键字,一个是partition by range,表示分区为范围分区;values less than 是范围分区的特定语法,指明具体的范围。
    
    在生产应用中,我们经常会根据年份或者月份去创建范围分区。目前有个客户,他们需要根据月份做一个范围分区表,但是现在他们要每到月底,需要手动去创建一个分区。有时候因为遗忘可能导致新的数据进来没有对应的分区而报错。因此希望通过一个自动脚本,定时自动创建这个分区。
    
    大致思路:创建一个存储过程,这个存储过程根据日期,对字符串进行操作,生成对应的分区表名,然后创建一个作业,到月底最后一天的晚上10点执行。
    
    首先,分区表的创建语句如下:
    

    create table PAR_TEST
    (
    LOANTYPE VARCHAR2(8),
    REFNO VARCHAR2(25),
    CUSTCOD VARCHAR2(12),
    BRANCH VARCHAR2(6),
    FLSTSCD VARCHAR2(16),
    LNCCY VARCHAR2(3),
    VSPREAD NUMBER,
    DFTYPE VARCHAR2(4000),
    A23ACIT VARCHAR2(13),
    MAP_GL VARCHAR2(13),
    TSDATE DATE,
    CCY_TYPE CHAR(1)
    )
    partition by range (TSDATE)
    (
    partition DPT1 values less than (TO_DATE(’ 2015-07-31 00:00:00’, ‘SYYYY-MM-DD HH24:MI:SS’, ‘NLS_CALENDAR=GREGORIAN’))
    tablespace CRMDATA
    pctfree 10
    initrans 1
    maxtrans 255,
    partition DPT2 values less than (TO_DATE(’ 2015-08-31 00:00:00’, ‘SYYYY-MM-DD HH24:MI:SS’, ‘NLS_CALENDAR=GREGORIAN’))
    tablespace CRMDATA
    pctfree 10
    initrans 1
    maxtrans 255,
    partition DPT3 values less than (TO_DATE(’ 2015-09-30 00:00:00’, ‘SYYYY-MM-DD HH24:MI:SS’, ‘NLS_CALENDAR=GREGORIAN’))
    tablespace CRMDATA
    pctfree 10
    initrans 1
    maxtrans 255
    );
    根据我们对分区表的了解,多加一个分区的语句如下:

    alter table PAR_TEST add partition DPTxx values less than (to_date(‘2017-01-31 00:00:00’,‘SYYYY-MM-DD HH24:MI:SS’,‘NLS_CALENDAR=GREGORIAN’))
    tablespace CRMDATA pctfree 10 initrans 1 maxtrans 255;
    所以根据创建分区的语句,编写如下自动创建的存储过程:

    create or replace procedure add_newpartitions
    as
    cursor c_parts is
    select max(partition_name) as part_name from user_tab_partitions where table_name=‘PAR_TEST’ group by table_name; --捕捉表最大分区的分区表名

    v_pname varchar2(32);
    v_sql varchar2(3999);
    v_npart varchar2(32);
    v_newp date;

    begin
    for i in c_parts loop
    v_pname := i.part_name; --将刚才捕捉到的表名赋值给该变量

    dbms_output.put_line(‘v_pname:’); --代码调试打印,需要打开set serveroutput on才能看到结果
    dbms_output.put_line(v_pname);

    v_npart := substr(v_pname,instr(v_pname,‘T’)+1); --用字母T截取表名,获得DPTxx的T后面的数字xx

    v_newp := last_day(last_day(sysdate)+1); --取到下个月的最后一天
    dbms_output.put_line(v_newp);

    v_pname := substr(v_pname,1,instr(v_pname,‘T’))||to_char(to_number(v_npart)+1); --字符串拼接,拼接出将要创建的分区表的表名
    dbms_output.put_line(‘v_pname:’);
    dbms_output.put_line(v_pname);

    v_sql := ‘alter table DW_DPDAILY add partition ‘||v_pname||’ values less than (’||‘to_date(’’’||to_char(v_newp,‘yyyy-mm-dd’)||’ 00:00:00’’,’’’||‘SYYYY-MM-DD HH24:MI:SS’||’’’,’‘NLS_CALENDAR=GREGORIAN’’)’||’)’||’ tablespace CRMDATA pctfree 10 initrans 1 maxtrans 255’;

    dbms_output.put_line(v_sql);
    execute immediate v_sql;
    end loop;
    end;
    有了这个存储过程,需要定期执行,因此就需要创建一个JOB,让这个存储过程定期被调用执行,具体如下:

    DECLARE
    v_job number;
    begin
    dbms_job.submit(
    job => v_job,
    what => ‘add_newpartitions;’,
    next_date => trunc(last_day(SYSDATE))+22/24, --每月最后一天的晚上10点执行
    interval => ‘trunc(last_day(add_months(SYSDATE,1)))+22/24’); --下个月的最后一天晚上10点执行
    commit;
    end;
    /
    注:此脚本创建分区表的格式为DPT20,如果每个分区的命名规则不是这样,需要修改字符串拼接那部分。

    转自 http://www.learnfuture.com/article/1706

    展开全文
  • 创建表空间 create tablespace 表空间名称 datafile ‘/oracledata/tablespace_name.DBF’ (表空间路径及文件) size 1024M(文件大小) autoextend on maxsize unlimited (不限时自动扩展) ; 例子: create ...
  • oracle如何创建表空间

    千次阅读 2019-06-29 17:20:19
    文章已更新,最新地址:... 创建语句: create tablespace 名字 datafile '数据文件名' size 大小 autoextend on next 大小 maxsize 大小 例句: create tablespace TEST_TBLSPACE data...
  • oracle创建表空间

    千次阅读 2021-01-27 09:10:12
    不同于mysql有多个数据库, oracle新增了表空间和用户的概念,表空间是虚拟的,并且只有一个数据库,为了方便维护,一般一个表空间上只创建一个用户; 这里的用户名类似于mysql的数据库名,oracle的用户名.表名等价...
  • Oracle数据库创建表空间及为用户指定表空间 SYS用户在CMD下以DBA身份登陆: 在CMD中打sqlplus /nolog  www.2cto.com  然后再 onn / as sysdba //创建临时表空间  Java代码  create ...
  • Oracle创建表空间

    千次阅读 2018-12-24 13:28:44
    创建表空间 ORACLE物理上是由磁盘上的以下几种文件:数据文件和控制文件和LOGFILE构成的 oracle中的就是一张存储数据的表空间是逻辑上的划分。方便管理的。 数据表空间 (Tablespace) 存放数据总是需要空间...
  • -----oracle创建表空间的方法 create tablespace dragon --dragon为创建表空间名称 bagfile/smallfile代表创建 datafile 'D:\dragon.dbf' --D:\dragon.dbf为数据文件名称和 存放的地址 size 100M reuse --设置...
  • oracle创建表空间自动增长

    千次阅读 2019-12-04 17:09:23
    create tablespace ZB_TABLESPACE datafile 'ZB_TABLESPACE.dbf' size 3200 M autoextend on next 5 M maxsize unlimited ...#删除表空间啊 https://www.cnblogs.com/liushuaibiao/p/10783986.html
  • Oracle数据库创建表空间和用户名

    千次阅读 2018-07-23 15:44:16
    然后创建表空间 create tablespace abs_business datafile 'D:\OracleDBF\abs_business.DBF' size 100m autoextend on next 10m abs_business为表空间 datafile 用于设置物理文件名称,这里存放在D:\OracleDBF中...
  • Oracle创建表空间创建临时表空间

    万次阅读 2017-12-21 11:33:38
    /*第1步:创建临时表空间 */ create temporary tablespace kc_temp tempfile 'C:\app\Administrator\oradata\orcl\kc_temp.dbf'  size 50m  autoextend on  next 50m maxsize 20480m  extent management ...
  • Oracle 创建表空间和用户

    千次阅读 2020-05-27 23:53:20
    文章目录一、创建表空间二、创建用户 一、创建表空间 表空间ORACLE 数据库的逻辑单元。 数据库 — 表空间: 一个表空间可以与多个数据文件(物理结构)关联 一个数据库下可以建立多个表空间,一个表空间可以建立...
  • 1、创建表空间 CREATE TABLESPACE DB_DATA LOGGING DATAFILE 'D:app/Administrator/oradata/NewDB/DB_DATA.DBF' SIZE 32M AUTOEXTEND ON NEXT 32M MAXSIZE UNLIMITED ...
  • oracle创建表空间文档

    2014-10-22 13:43:16
    CREATE USER "SPSX" PROFILE "DEFAULT" IDENTIFIED BY "12345678" DEFAULT TABLESPACE "SPSX" TEMPORARY TABLESPACE "SPSX_TEMP" ACCOUNT UNLOCK;
  • 1、为什么要创建表空间?  答:在建立用户的时候,我们建议数据库管理员要指定用户的默认表空间。因为我们在利用CREATE语句创建数据库对象,如数据库的时候,其默认是存储在数据库的当前默认空间。若不...
  • Oracle创建修改表空间

    千次阅读 2011-10-20 22:18:11
    今天在现场发现网络监控系统无论我怎么配置都无法写入数据到Oracle数据库中,后来一看表空间使用率已超过了95%,当初500M的表空间没有设置自动扩展以及无大小限制,都是粗心惹的祸啊,下面是创建表空间以及修改...
  • -----创建临时表空间----- create temporary tablespace zhangmingchaotemp tempfile 'd:\oracle\zhangmingchaotemp.dbf' -----初始化大小----- size 50m -----每次扩展50m,无限制增长----- next 50m maxsize ...
  • oracle创建表表空间深入学习

    千次阅读 2018-07-20 15:04:59
    Oracle创建表空间 创建表空间 ORACLE物理上是由磁盘上的以下几种文件:数据文件和控制文件和LOGFILE构成的 oracle中的就是一张存储数据的表空间是逻辑上的划分。方便管理的。 数据表空间 (Tablespace...
  • Oracle数据库创建表空间及用户

    千次阅读 2014-02-24 00:46:38
    摘要: /* create tablespace systemv datafile '/opt/oracle/oradata/ibm/systemv01.dbf' size 10m autoextend on; */ /* drop tablespace systemv including contents and datafiles; */ create user "SYST
  • 我在工作学习过程中经常用到Oracle,由于经验欠缺,熟练度不足,每次都要百度一下。... 1、创建表空间 2、创建用户 3、用户授权 */ /*创建表空间*/ create tablespace QCJ_TABLESPACE ...
  • oracle创建表空间,创建用户,授权给新建的用户。
  • oracle创建表空间及用户,导出导入数据备份

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 116,576
精华内容 46,630
关键字:

oracle自动创建表空间