精华内容
下载资源
问答
  • 更改表空间名称

    2012-02-08 08:17:33
    简单介绍 在 Oracle 10g 以前的版本,更改表空间名字是几乎不可能的事情...Oracle 10g 新添加了一项更改表空间名字的功能,使得更改表空间名字瞬间即可完成。是个较为人性化的功能。 SQL> COL FILE_NAME format a70

    以下内容来自:http://www.sjtsoft.com/sjblog/article.asp?id=628

    简单介绍
    在 Oracle 10g 以前的版本,更改表空间名字是几乎不可能的事情,除非删除,重新创建,大费周章。Oracle 10g 新添加了一项更改表空间名字的功能,使得更改表空间名字瞬间即可完成。是个较为人性化的功能。

    SQL> COL FILE_NAME format a70
    SQL> SET linesize 120
    SQL> SET pagesize 99
    SQL> COL TABLESPACE_NAME format a10
    SQL>
    SQL> SELECT file_name, tablespace_name FROM dba_data_files;

    FILE_NAME TABLESPACE
    ---------------------------------------------------------------------- ----------
    /u01/app/oracle/product/10.1.0/db_1/oradata/TEST/users01.dbf USERS
    /u01/app/oracle/product/10.1.0/db_1/oradata/TEST/sysaux01.dbf SYSAUX
    /u01/app/oracle/product/10.1.0/db_1/oradata/TEST/undotbs01.dbf UNDOTBS1
    /u01/app/oracle/product/10.1.0/db_1/oradata/TEST/system01.dbf SYSTEM
    /u01/app/oracle/product/10.1.0/db_1/oradata/TEST/example01.dbf EXAMPLE
    /u01/app/oracle/product/10.1.0/db_1/oradata/TEST/foo1.dbf FOO
    6 rows selected.

    该命令的语法很简单:
    ALTER TABLESPACE tablespacename RENAME TO newtablespacename;
    tablespacename 和newtablespacename 分别对应原来的表空间名字和更改后的表空间名字:

    实战演练
    注意:在操作前后都请做好控制文件的备份工作
    SQL>ALTER TABLESPACE foo RENAME TO test;
    Tablespace altered.

    SQL> SELECT file_name, tablespace_name FROM dba_data_files;
    FILE_NAME TABLESPACE
    ---------------------------------------------------------------------- ----------
    /u01/app/oracle/product/10.1.0/db_1/oradata/TEST/users01.dbf USERS
    /u01/app/oracle/product/10.1.0/db_1/oradata/TEST/sysaux01.dbf SYSAUX
    /u01/app/oracle/product/10.1.0/db_1/oradata/TEST/undotbs01.dbf UNDOTBS1
    /u01/app/oracle/product/10.1.0/db_1/oradata/TEST/system01.dbf SYSTEM
    /u01/app/oracle/product/10.1.0/db_1/oradata/TEST/example01.dbf EXAMPLE
    /u01/app/oracle/product/10.1.0/db_1/oradata/TEST/foo1.dbf TEST

    因为 system 和 sysaux 这两个表空间的特殊性,是不可以更名的:
    SQL> ALTER TABLESPACE system RENAME TO mysystem;
    ALTER TABLESPACE system RENAME TO mysystem
    *
    ERROR at line 1:
    ORA-00712: cannot rename system tablespace

    SQL> ALTER TABLESPACE sysaux RENAME TO mysysaux;
    ALTER TABLESPACE sysaux RENAME TO mysysaux
    *
    ERROR at line 1:
    ORA-13502: Cannot rename SYSAUX tablespace

    可以对 undo tablespace 重新命名,如果使用的是 spfile ,而不是 pfile, Oracle 会自动对 spfile 中的 undo_tablespace 进行更改( 不过要在数据库重新启动之后才可以观察到), 如果使用的是 pfile ,要对其进行手工更改。我们看看 spfile 的变化情况:
    SQL> ALTER tablespace undotbs1 RENAME TO undotbs;

    Tablespace altered.

    SQL>
    SQL> show parameter pfile

    NAME TYPE VALUE
    ------------------------------------ ----------- ------------------------------
    spfile string /u01/app/oracle/product/10.1.0
     /db_1/dbs/spfileTEST.ora
    SQL> show parameters undo

    NAME TYPE VALUE
    ------------------------------------ ----------- ------------------------------
    undo_management string AUTO
    undo_retention integer 900
    undo_tablespace string UNDOTBS1
    SQL> shutdown immediate;
    Database closed.
    Database dismounted.
    ORACLE instance shut down.
    SQL> startup
    ORACLE instance started.

    Total System Global Area 180355072 bytes
    Fixed Size 777996 bytes
    Variable Size 128983284 bytes
    Database Buffers 50331648 bytes
    Redo Buffers 262144 bytes
    Database mounted.
    Database opened.
    SQL> show parameters undo

    NAME TYPE VALUE
    ------------------------------------ ----------- ------------------------------
    undo_management string AUTO
    undo_retention integer 900
    undo_tablespace string UNDOTBS
    SQL>

    对脱机表空间的更名是不允许的:

    SQL> ALTER TABLESPACE TEST OFFLINE;

    Tablespace altered.

    SQL> ALTER TABLESPACE test RENAME TO testoffline;
    ALTER TABLESPACE test RENAME TO testoffline
    *
    ERROR at line 1:
    ORA-01135: file 6 accessed for DML/query is offline
    ORA-01110: data file 6:
    '/u01/app/oracle/product/10.1.0/db_1/oradata/TEST/foo1.dbf'

    给出的提示信息很有参考价值:更名操作是要对表空间进行 DML/query 操作的,表空间offline的话,则不可以。

    那么如果表空间是只读的会怎么样呢?
    SQL> ALTER TABLESPACE TEST ONLINE;

    Tablespace altered.

    SQL> ALTER TABLESPACE TEST READ ONLY;

    Tablespace altered.

    SQL> ALTER TABLESPACE test RENAME TO testreadonly;

    Tablespace altered.

    SQL> list
     1* SELECT file_name, tablespace_name FROM dba_data_files
    SQL> /

    FILE_NAME TABLESPACE
    ---------------------------------------------------------------------- ----------
    /u01/app/oracle/product/10.1.0/db_1/oradata/TEST/users01.dbf USERS
    /u01/app/oracle/product/10.1.0/db_1/oradata/TEST/sysaux01.dbf SYSAUX
    /u01/app/oracle/product/10.1.0/db_1/oradata/TEST/undotbs01.dbf UNDOTBS
    /u01/app/oracle/product/10.1.0/db_1/oradata/TEST/system01.dbf SYSTEM
    /u01/app/oracle/product/10.1.0/db_1/oradata/TEST/example01.dbf EXAMPLE
    /u01/app/oracle/product/10.1.0/db_1/oradata/TEST/foo1.dbf TESTREADONLY

    6 rows selected.

    看来数据字典已经更新,不过Oracle会向alert_SID.log 中写入类似如下的日志:
    ALTER TABLESPACE test RENAME TO testreadonly
    Sat Nov 13 16:15:21 2004
    Tablespace 'TEST' is renamed to 'TESTREADONLY'.
    Tablespace name change is not propagated to file headersbecause the tablespace is read only.
    Completed: ALTER TABLESPACE test RENAME TO testreadonly

    注意Log里有个细微的小Bug:headersbecause。这是两个词,应该空开的 :-)

    更名对 Bigfile 表空间一样有效。

    限制条件
    应用这个特性有个主要的限制条件:COMPATIBLE 初始化参数要求为 10.0 或者更高才可以

    参考信息
    Oracle Database Administrator's Guide 10g Release 1 (10.1) Part Number B10739-01 ( Note 62294.1 )
    展开全文
  • 更改表空间名字

    2010-11-19 16:19:58
    在10g中,oracle增加了重命名空间名的功能,摆脱了以往tablespace不能更改名字的问题。当发出一个alter tablespace 命令,数据库会自动更新所有与表空间名字相关的数据字典,控制文件和数据文件头部,相对...
    在10g中,oracle增加了重命名表空间名的功能,摆脱了以往tablespace不能更改名字的问题。当发出一个alter tablespace 命令,数据库会自动更新所有与表空间名字相关的数据字典,控制文件和数据文件头部,相对应的tablespace id则保持不变。
    alter tablespace users rename to usersts;

    限制:
    1.COMPATIBLE必需是10.0以上
    2.不能对system或是sysaux更名
    3.如果表空间中的某个数据文件处于offline状态,不能更名
    4.表空间处于只读状态,数据文件头将不会被更新,也不会报错,不能更新的信息将会记录在alert log里面。和表空间相关的数据字典和控制文件将被更新
    5.对于默认的临时表空间,相关的信息也会在database_properties更新
    6.对于undo 表空间,相关的信息会自动更新spfile,如果是pfile,我们需要在启动数据库之前手工更改参数信息

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

    转载于:http://blog.itpub.net/22123669/viewspace-678533/

    展开全文
  • 一、表空间名称修改  1.查看所有表空间:select * from dba_tablespaces  2.修改表空间名称:alter tablespace TABLESPACENAME rename to NEWTABLESPACENAME ; 二、数据文件名称修改  ...

    数据库管理工具:SQL PLUS

    系统管理员登录:sys   密码口令:as sysdba

    一、表空间名称修改

           1.查看所有表空间:select * from dba_tablespaces

           2.修改表空间名称:alter tablespace TABLESPACENAME rename to NEWTABLESPACENAME ;

    二、数据文件名称修改
           1.查看所有表空间数据文件信息:select * from dba_data_files
           2.修改表空间状态为离线:alter tablespace TABLESPACENAME offline;
           3.必须先创建一个修改后的正确名称的文件,再执行sql(必须新旧名称的文件同时存在,否则报错找不到文件:ORA-01141:重命名数据文件时出错-未找到新文件)
           4.执行sql:alter tablespace TABLESPACENAME rename datafile 'E:\TABLESPACENAME.DBF' to 'E:\NEWTABLESPACENAME.DBF';
           5.再删除旧的文件
           6.修改表空间状态为在线:alter tablespace TABLESPACENAME online;

    展开全文
  • Oracle修改表空间名字

    2020-02-19 09:01:21
    1、使用管理员登录 在运行中输入sqlplus /nolog,打开SQLPLUS...2、执行修改表空间命令 SQL> alter tablespace OLDNAME rename to NEWNAME; 3、查看已修改表空间 SQL>select name from v$tablespace; ...

    1、使用管理员登录

    在运行中输入sqlplus /nolog,打开SQLPLUS工具,输入“conn  / as sysdba”,以管理员身份登录;

    2、执行修改表空间命令

    SQL> alter tablespace OLDNAME rename to NEWNAME;

    3、查看已修改的表空间

    SQL>select name from v$tablespace;

    展开全文
  • --dragon为创建的表空间名称 bagfile/smallfile代表创建 datafile 'D:\dragon.dbf' --D:\dragon.dbf为数据文件名称和 存放的地址 size 100M reuse --设置初始大小 reuse参数为 如果文件存在则删除 autoexte...
  • Oracle:修改表空间名称

    万次阅读 2018-04-07 18:23:35
    我是使用SQL PLUS登录修改1.首先登录使用sys用户登录 使用SQL PLUS登录sys用户的口令为: 密码 AS SYSDBA请输入用户名: sys 输入口令: 连接到: Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - 64...
  • NEW_BASE的名称和对应的数据文件名称/u01/app/oradata/oradb/IRC_NEW_BASE.dbf都修改为IRC_NEW_HR系统用户sys以sysdba的身份登录修改oracle表空间名称和数据文件名称的步骤如下:1、修改表空间名称alter tablespace ...
  • 1、一般使用建表空间、建用户的流程是: 建立表空间; 建立用户角色,赋予权限给用户角色; 建立用户; ...2、使用逻辑备份,导出的dmp包,里面包含所使用的表空间名字; 有时在进行导入...
  • 1、修改表空间名称: altertablespacetablespace_name1renametotablespace_name2; 2、修改数据文件名称: 1)先将联机状态的需要修改表空间设置为脱机状态: ALTERTABLESPACEtablespace_nameOFFLINE; 2)...
  • 目的:我想将表空间IRC_NEW_BASE的名称和对应的数据文件名称/u01/app/oradata/oradb/IRC_NEW_BASE.dbf都修改为IRC_NEW_HR 系统用户sys以sysdba的身份登录修改oracle表空间名称和数据文件名称的步骤如下: 1、修改...
  • 修改表空间名称步骤如下: 1、使用oracle用户登录执行 $sqlplus/assysdba 2、执行修改表空间命令如下 SQL>altertablespaceTEST renametoTEST1; 注:可连续对多个表空间进行重命名 4、确认表空间名已经修改 ...
  • 查看用户和默认表空间的关系。   select username,default_tablespace from dba_users;   1.查看结构:desc表名 2.查看当前用户的: select table_name from user_tables;  3.查看所有用户的表名: ...
  • 1.修改表空间名称: altertablespacetablespace_name1renametotablespace_name2; 2.修改数据文件名称: 1)先将联机状态的需要修改表空间设置为脱机状态: ALTERTABLESPACEtablespace_nameOFFLINE; 2)...
  • 表空间组成 1创建表空间时,必须在物理磁盘上为表空间创建数据文件。 2表空间由数据文件组成,数据文件之和=表空间的大小 3数据文件可发布在不同的物理磁盘上二创建表空间 create tablespace myspace data...
  • 修改oracle数据文件和表空间名字

    万次阅读 2015-01-06 12:13:09
    一、修改表空间名字 SQL> alter tablespace TMS_RITONG rename to TMS_LYT; Tablespace altered   二、修改表空间的数据文件名字(联机状态) 1、将空间置为offline SQL> ALTER TABLESPACE TMS_LYT ...
  • //创建数据空间create tablespace test(表空间名字)logging--datafile 'D:\oracle\product\10.2.0\oradata\mzjx\mzjx.dbf'datafile 'D:\oracle tablespace\test.dbf'size 32mautoextend onnext 32m maxsize 2048...
  • ]修改表空间--增大表空间大小 创建表空间时,必须在物理磁盘上为表空间创建数据文件。数据文件的大小决定了创建的表空间大小。构成表空间的数据文件可以位于不同的物理磁盘上,表空间的大小就等于不同物理磁盘上...
  • 一属性 只有表空间的属性为在线时,才能访问该表空间的数据 1在线 ...适用于对表空间进行脱机备份,或者应用程序进行升级和维护二修改表空间的属性 在线 alter tablespace tablespaceName online;
  • (据说这样可以,前提是新的库里面不能有与源库相同名字表空间。有待验证!) 二、使用脚本进行修改。据目前所了解,正长情况下需要修改表空间的索引的空间,如果涉及到BOLB字段的修改的方式又不一样...
  • 更改表空间

    2017-10-20 16:45:54
    SQL> alter tablespace CSFIS offline;表空间更改。alter tablespace CSFIS rename datafile 'D:\ORADATA\SFIST\ORADATAFILE\CSFIST01.ORA' to 'F:\oracleDATE\CSFIST01.ORA'1. alter tablespace 表空间...
  • oracle中修改表空间

    2019-09-25 17:27:40
    修改表所属表空间:alter table表名move tablespace "表空间名称" 修改表索引所属表空间:alter index索引名 rebuild tablespace "表空间名称" 查询某表空间的所有:select segment_name from dba_segments ...
  • 在10g中,oracle增加了重命名空间名的功能,摆脱了以往tablespace不能更改名字的问题。当发出一个alter tablespace 命令,数据库会自动更新所有与表空间名字相关的数据字典,控制文件和数据文件...
  • 创建表空间 create tablespace SIRM2 datafile ‘D:\oracle\product\10.2.0\oradata\orcl\SIRM2.dbf’ size 1024M --存储地址 初始大小1G autoextend on next 10M maxsize unlimited --每次扩展10M,无限制扩展 ...
  • 更改Oracle表空间

    2017-11-24 12:26:44
    在 Oracle 10g 以前的版本,更改表空间名字是几乎不可能的事情,除非删除,重新创建,大费周章。 Oracle 10g 新添加了一项更改表空间名字的功能,使得更改表空间名字瞬间即可完成。是个较为人性化的功能。 SELECT ...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 758,255
精华内容 303,302
关键字:

修改表空间名字