广告
返回顶部
首页 > 资讯 > 数据库 >在线移动oracle 数据文件位置
  • 542
分享到

在线移动oracle 数据文件位置

2024-04-02 19:04:59 542人浏览 泡泡鱼
摘要

    在线移动oracle 数据文件 Oracle数据文件可以在数据库OPEN的时候被重命名或移动,但此时表空间必须为只读,这将允许用户从表中查询,但

    在线移动oracle 数据文件


Oracle数据文件可以在数据库OPEN的时候被重命名或移动,但此时表空间必须为只读,这将允许用户从表中查询,但禁止他们这样做的插入,更新和删除,在表空间至于只读状态的时候,冻结数据文件块头。阻止更新数据文件块头,此时才能在线拷贝数据文件 《注:system表空间除外,system 表空间无法offline》

本测试以TEST表空间为例

sql> select * from v$version;

BANNER
----------------------------------------------------------------
Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - 64bit
PL/SQL Release 10.2.0.1.0 - Production
CORE    10.2.0.1.0      Production
TNS for linux: Version 10.2.0.1.0 - Production
NLSRTL Version 10.2.0.1.0 - Production

1. 确定要移动TEST表空间中所有的数据文件

SQL > SELECT FILE_NAME, STATUS FROM DBA_DATA_FILES 
      WHERE TABLESPACE_NAME = 'TEST'; 

FILE_NAME                                          STATUS
-------------------------------------------------- ---------
/oracle/oradata/orcl/test.dbf                      AVaiLABLE
/oracle/oradata/orcl/test03.dbf                    AVAILABLE

2. 确定所有TEST表空间中数据文件状态为 AVAILABLE. 


SQL> SELECT FILE_NAME,STATUS FROM DBA_DATA_FILES WHERE TABLESPACE_NAME='TEST

FILE_NAME                                                    STATUS
------------------------------------------------------------ ---------
/oracle/oradata/orcl/test.dbf                                AVAILABLE
/oracle/oradata/orcl/test03.dbf                              AVAILABLE

3. 将TEST表空间至于只读模式. 

SQL > ALTER TABLESPACE TEST  READ ONLY; 

  Tablespace altered.

4. 查询数据字典确定TEST表空间为只读模式. 

SQL > SELECT TABLESPACE_NAME, STATUS FROM DBA_TABLESPACES 
      WHERE TABLESPACE_NAME = 'TEST'; 

TABLESPACE_NAME                STATUS
------------------------------ ---------
TEST                           READ ONLY



5. 拷贝TEST表空间所有数据文件到新的位置,拷贝完成后确定权限和大小与原数据文件相匹配

[oracle@oracle orcl]$ du -sh test.dbf 
21M     test.dbf
[oracle@oracle orcl]$ du -sh test03.dbf 
41M     test03.dbf

[oracle@oracle orcl]$ cp test.dbf    /oracle/testdata/
[oracle@oracle orcl]$ cp test03.dbf  /oracle/testdata/
[oracle@oracle orcl]$ cd /oracle/testdata/
[oracle@oracle testdata]$ ls
-rw-r----- 1 oracle oinstall 41951232 May  7 23:49 test03.dbf
-rw-r----- 1 oracle oinstall 20979712 May  7 23:49 test.dbf

[oracle@oracle testdata]$ du -sh test.dbf 
21M     test.dbf
[oracle@oracle testdata]$ du -sh test03.dbf
41M     test03.dbf
[oracle@oracle testdata]$  ls -al 
-rw-r----- 1 oracle oinstall 41951232 May  7 23:49 test03.dbf
-rw-r----- 1 oracle oinstall 20979712 May  7 23:49 test.dbf


6. 数据文件全部拷贝完成后,将TEST表空间offline,此时所有用户都不能访问test表空间. 

SQL > ALTER TABLESPACE TEST OFFLINE; 

     Tablespace altered.


7. 更新控制文件信息. 

SQL > ALTER DATABASE RENAME FILE '/oracle/oradata/orcl/test.dbf' TO '/oracle/testdata//test.dbf'; 

Database altered.

SQL > ALTER DATABASE RENAME FILE '/oracle/oradata/orcl/test03.dbf' TO '/oracle/testdata//test03.dbf'; 

Database altered.


8. 所有数据文件更新后,将TEST表空间ONLINE. 

SQL > ALTER TABLESPACE TEST ONLINE; 

9. 将TEST表空间至于读写模式. 

SQL > ALTER TABLESPACE TEST READ WRITE; 

10. 备份控制文件,查看控制文件信息 

SQL > ALTER DATABASE BACKUP CONTROLFILE TO TRACE; 

Database altered.

$cd /oracle/admin/orcl/udump

more orcl_ora_8453.trc

STARTUP NOMOUNT
CREATE CONTROLFILE REUSE DATABASE "ORCL" NORESETLOGS  NOARCHiveLOG
    MAXLOGFILES 16
    MAXLOGMEMBERS 3
    MAXDATAFILES 100
    MAXINSTANCES 8
    MAXLOGHISTORY 292
LOGFILE
  GROUP 1 '/oracle/oradata/orcl/redo01.log'  SIZE 50M,
  GROUP 2 '/oracle/oradata/orcl/redo02.log'  SIZE 50M,
  GROUP 3 '/oracle/oradata/orcl/redo03.log'  SIZE 50M
-- STANDBY LOGFILE
DATAFILE
  '/oracle/oradata/orcl/system01.dbf',
  '/oracle/oradata/orcl/undotbs01.dbf',
  '/oracle/oradata/orcl/sysaux01.dbf',
  '/oracle/oradata/orcl/users01.dbf',
  '/oracle/testdata/test.dbf',
  '/oracle/oradata/orcl/system02.dbf',
  '/oracle/oradata/orcl/test02.dbf',
  '/oracle/testdata/test03.dbf',
  '/oracle/oradata/orcl/jycq.dbf'

在更新的控制文件中, TEST表空间数据文件已经换了位置 
  
11. 查看数据字典中TEST信息

SQL> select  file_name from dba_data_files where tablespace_name='TEST';

FILE_NAME
--------------------------------------------------------------------------------
/oracle/testdata/test.dbf
/oracle/testdata/test03.dbf


数据文件已经移到指定位置,此时数据文件已经移动完成,可以将TEST表空间原来位置的数据文件删除


您可能感兴趣的文档:

--结束END--

本文标题: 在线移动oracle 数据文件位置

本文链接: https://www.lsjlt.com/news/39375.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • 在线移动oracle 数据文件位置
        在线移动oracle 数据文件 Oracle数据文件可以在数据库OPEN的时候被重命名或移动,但此时表空间必须为只读,这将允许用户从表中查询,但...
    99+
    2022-10-18
  • oracle 12c新特性之在线移动数据文件
    11g时是无法在线移动数据文件的,12c增强了移动数据文件的功能,不仅可以更改路径,还可以给数据文件改名。 oracle 12c在线移动或更名数据文件语法案例: alter database mo...
    99+
    2022-10-18
  • oracle 在线rename数据文件
    今天给表空间加数据文件的时候,马虎大意多加了一个空格,为了避免之后备份等问题。现在准备在 ...
    99+
    2022-10-18
  • Oracle修改数据文件名/移动数据文件
    生产上有时会用到数据文件的迁移,下边示例几种数据文件的迁移方法。数据库版本sys@ORCL>select * from v$version; selec ...
    99+
    2022-10-18
  • oracle数据文件移动方法
    oracle数据库数据文件移动方法小结 ...
    99+
    2022-10-18
  • Oracle表空间数据文件移动
    Oracle表空间数据文件移动系统:windowsoracle:10g实现把用户表空间中的数据文件从某一个路径移动到里一个路径一、针对可offline的非系统表空间本例移动oracle的案例表空间(EXAM...
    99+
    2022-10-18
  • oracle 数据文件迁移
    环境:win 2008   oracle 11g    应开发人员申请,将本地automap数据文件迁移到磁阵上。    数据库非归档模式 数据文件迁移...
    99+
    2022-10-18
  • Oracle RAC修改参数文件位置
    目的: 将参数文件原位置+DATA/cjcdb/spfilecjcdb.ora修改到+DATA/cjcdb/spfile/spfilecjcdb.ora 步骤如下: 一:临时位置生成pfile ...
    99+
    2022-10-18
  • PHPCMS V9数据库配置文件database.php位置在哪
    初次用phpcms V9的朋友可能找不到数据库配置文件,其实在官方的wiki中已经介绍了。那就是 caches\configs\database.php 文件。 在本地做好了网站之后,上传到服务器上,就要修改caches...
    99+
    2022-06-12
    数据库配置文件 database.php PHPCMS
  • win7驱动文件夹位置在哪
    这篇文章主要讲解了“win7驱动文件夹位置在哪”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“win7驱动文件夹位置在哪”吧!win7驱动在哪个文件夹:答:在C盘drivers下。 正常情况下...
    99+
    2023-06-30
  • oracle12C 新特性——之在线重命名和移动数据文件
    【摘要】在12c版本之前,是不能够在线重命名和移动数据文件的。很多情况下,需要移动数据文件或重命名,那么只能停机操作了。但是到了12c,这个操作就变的非常简单了,可以在线操作,并且对应用业务没有任何影响,大...
    99+
    2022-10-18
  • Oracle数据库添加和移动控制文件
    配置Oracle数据库控制文件冗余的操作过程: 查看数据字典v$controlfile来获取现有控制文件信息 SQL> set lines 200; SQL>...
    99+
    2022-10-18
  • 如何更改Oracle中表空间的数据文件位置
    本篇文章给大家分享的是有关如何更改Oracle中表空间的数据文件位置,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。表空间概述Oracle的表空...
    99+
    2022-10-18
  • Oracle更改表空间中数据文件位置的案例
    这篇文章主要介绍了Oracle更改表空间中数据文件位置的案例,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。表空间概述Oracle的表空间属于...
    99+
    2022-10-18
  • windows系统驱动文件夹位置在哪
    这篇文章主要介绍了windows系统驱动文件夹位置在哪的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇windows系统驱动文件夹位置在哪文章都会有所收获,下面我们一起来看看吧。系统驱动在哪个文件夹:答:在C盘的...
    99+
    2023-06-30
  • windows惠普驱动文件夹位置在哪
    这篇文章主要介绍“windows惠普驱动文件夹位置在哪”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“windows惠普驱动文件夹位置在哪”文章能帮助大家解决问题。惠普驱动文件夹位置我们可以右键计算机...
    99+
    2023-06-30
  • Oracle 12.1新特性:在线rename或relocate数据文件
    在Oracle12.1之前的版本中要重命名数据文件或移动数据文件需要关闭数据库或把表空间/数据文件置为offline状态才可以,参考之前总结的Oracle修改数据文件名/移动数据文件。但到了12.1版本,可...
    99+
    2022-10-18
  • Linux下如何使用mv命令移动文件位置
    这篇文章给大家分享的是有关Linux下如何使用mv命令移动文件位置的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。Linux中要想移动文件位置可以使用mv命令,mv命令有两种用途。mv命令的功能有以下两种:&nbs...
    99+
    2023-06-27
  • Oracle 在 Linux 下移动控制文件步骤
    ①.查看控制文件 [oracle@dbserver ~]$ sqlplus / as sysdba SQL>desc v$controlfile SQL>select * fro...
    99+
    2022-10-18
  • Skype for Business Server 2015 后端数据库文件如何迁移位置
    今天给大家介绍一下Skype for Business Server 2015 后端数据库文件如何迁移位置。文章的内容小编觉得不错,现在给大家分享一下,觉得有需要的朋友可以了解一下,希望对大家有所帮助,下面...
    99+
    2022-10-19
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作