oracle-变更-查看及变更数据文件datafile常用操作

简介:

数据文件相关操作

查看datafile的日志路径

select distinct 'datafile', (substr(name,0,instr(name,'/',-1) -0))
from v$datafile;

查看tempfile的日志路径

select distinct 'tempfile',substr(name,0,instr(name,'/',-1) -0)
from v$tempfile;

查看redo和standby log的日志路径

select  substr(member,instr(member,'/',-1)), substr(member,0,instr(member,'/',-1) -0)
from v$logfile;

select  distinct 'redo-standby',substr(member,0,instr(member,'/',-1) -0)
from v$logfile;

查看原来的数据文件路径,生成修改成新的路径语句rename datafile

SQL> select  'set newname for datafile '||file#|| ' to ''' ||'/data01/oradata01/prod2'||substr(name,instr(name,'/',-1)) ||''';'  aa from v$datafile;
set newname for datafile 1 to '/data01/oradata01/prod2/system01.dbf';

rename logfile,rename tempfile

SQL> select 'alter database rename file '''||member|| ''' to '''  ||'/data01/oradata01/prod2'||substr(member,instr(member,'/',-1)) ||''';'  aa from v$logfile;

alter database rename file '/u1/PROD/prodora/db/apps_st/data/log02a.dbf' to '/data01/oradata01/prod/log02a.dbf';
###tempfile

SQL> select 'alter database rename file '''||name|| ''' to '''  ||'/data01/oradata01/prod2'||substr(name,instr(name,'/',-1)) ||''';'  aa from v$tempfile;

alter database rename file '/u1/PROD/prodora/db/apps_st/data/temp01.dbf'  to '/data01/oradata01/prod/temp01.dbf'; 

把自动增长文件修改成非自动增长

SELECT 'ALTER DATABASE DATAFILE ''' || file_name || ''' AUTOEXTEND OFF;',
       file_name,
       tablespace_name,
       bytes / 1024 / 1024 / 1024 ,
       AUTOEXTENSIBLE,
       maxbytes / 1024 / 1024 / 1024,
       user_bytes / 1024 / 1024 / 1024,
       online_status
  FROM dba_data_files
 WHERE file_name LIKE '/oradata05%' AND AUTOEXTENSIBLE = 'YES';
 

把非自动增长文件修改成自动增长

SELECT 'ALTER DATABASE DATAFILE ''' || file_name || ''' AUTOEXTEND ON NEXT 100M MAXSIZE 30G;',
       file_name,
       tablespace_name,
       bytes / 1024 / 1024 / 1024 ,
       AUTOEXTENSIBLE,
       maxbytes / 1024 / 1024 / 1024,
       user_bytes / 1024 / 1024 / 1024,
       online_status
  FROM dba_data_files
 WHERE tablespace_name='USERS' AND AUTOEXTENSIBLE = 'NO' ORDER BY 4; 

为表空间添加文件,生成脚本,再修改脚本中的文件号之后执行

select * from (SELECT 'ALTER TABLESPACE'||tablespace_name|| 'ADD DATAFILE ''' || file_name || ''' SIZE 1G AUTOEXTEND ON NEXT 100M MAXSIZE 30G;',
      file_name,file_id,
      tablespace_name,
      AUTOEXTENSIBLE,
      online_status
 FROM dba_data_files
WHERE tablespace_name='TEST_INX' AND  file_id =(select max(file_id) from dba_data_files WHERE tablespace_name='TEST_INX' )) connect by 0 + level <= 15;
目录
相关文章
|
7天前
|
存储 Oracle 关系型数据库
【赵渝强老师】Oracle的还原数据
Oracle数据库中的还原数据(也称为undo数据或撤销数据)存储在还原表空间中,主要用于支持查询的一致性读取、实现闪回技术和恢复失败的事务。文章通过示例详细介绍了还原数据的工作原理和应用场景。
【赵渝强老师】Oracle的还原数据
|
7天前
|
SQL Oracle 关系型数据库
【赵渝强老师】Oracle的控制文件与归档日志文件
本文介绍了Oracle数据库中的控制文件和归档日志文件。控制文件记录了数据库的物理结构信息,如数据库名、数据文件和联机日志文件的位置等。为了保护数据库,通常会进行控制文件的多路复用。归档日志文件是联机重做日志文件的副本,用于记录数据库的变更历史。文章还提供了相关SQL语句,帮助查看和设置数据库的日志模式。
【赵渝强老师】Oracle的控制文件与归档日志文件
|
3月前
|
SQL 运维 Oracle
【迁移秘籍揭晓】ADB如何助你一臂之力,轻松玩转Oracle至ADB的数据大转移?
【8月更文挑战第27天】ADB(Autonomous Database)是由甲骨文公司推出的自动化的数据库服务,它极大简化了数据库的运维工作。在从传统Oracle数据库升级至ADB的过程中,数据迁移至关重要。
66 0
|
3月前
|
数据采集 Oracle 关系型数据库
实时计算 Flink版产品使用问题之怎么实现从Oracle数据库读取多个表并将数据写入到Iceberg表
实时计算Flink版作为一种强大的流处理和批处理统一的计算框架,广泛应用于各种需要实时数据处理和分析的场景。实时计算Flink版通常结合SQL接口、DataStream API、以及与上下游数据源和存储系统的丰富连接器,提供了一套全面的解决方案,以应对各种实时计算需求。其低延迟、高吞吐、容错性强的特点,使其成为众多企业和组织实时数据处理首选的技术平台。以下是实时计算Flink版的一些典型使用合集。
|
7天前
|
Oracle 关系型数据库 数据库
【赵渝强老师】Oracle的参数文件与告警日志文件
本文介绍了Oracle数据库的参数文件和告警日志文件。参数文件分为初始化参数文件(PFile)和服务器端参数文件(SPFile),在数据库启动时读取并分配资源。告警日志文件记录了数据库的重要活动、错误和警告信息,帮助诊断问题。文中还提供了相关视频讲解和示例代码。
|
7天前
|
SQL Oracle 关系型数据库
【赵渝强老师】Oracle的联机重做日志文件与数据写入过程
在Oracle数据库中,联机重做日志文件记录了数据库的变化,用于实例恢复。每个数据库有多组联机重做日志,每组建议至少有两个成员。通过SQL语句可查看日志文件信息。视频讲解和示意图进一步解释了这一过程。
|
7天前
|
SQL Oracle 关系型数据库
【赵渝强老师】Oracle的数据文件
在Oracle数据库中,数据库由多个表空间组成,每个表空间包含多个数据文件。数据文件存储实际的数据库数据。查询时,如果内存中没有所需数据,Oracle会从数据文件中读取并加载到内存。可通过SQL语句查看和管理数据文件。附有视频讲解及示例。
|
2月前
|
Oracle 关系型数据库 数据库
数据库数据恢复—Oracle数据库文件出现坏块的数据恢复案例
打开oracle数据库报错“system01.dbf需要更多的恢复来保持一致性,数据库无法打开”。 数据库没有备份,无法通过备份去恢复数据库。用户方联系北亚企安数据恢复中心并提供Oracle_Home目录中的所有文件,急需恢复zxfg用户下的数据。 出现“system01.dbf需要更多的恢复来保持一致性”这个报错的原因可能是控制文件损坏、数据文件损坏,数据文件与控制文件的SCN不一致等。数据库恢复工程师对数据库文件进一步检测、分析后,发现sysaux01.dbf文件损坏,有坏块。 修复并启动数据库后仍然有许多查询报错,export和data pump工具使用报错。从数据库层面无法修复数据库。
数据库数据恢复—Oracle数据库文件出现坏块的数据恢复案例
|
1月前
|
Oracle 关系型数据库 数据库
oracle数据恢复—Oracle数据库文件损坏导致数据库打不开的数据恢复案例
打开oracle数据库时报错,报错信息:“system01.dbf需要更多的恢复来保持一致性,数据库无法打开”。急需恢复zxfg用户下的数据。 出现上述报错的原因有:控制文件损坏、数据文件损坏、数据文件与控制文件的SCN不一致等。数据恢复工程师对数据库文件做进一步检测分析后发现sysaux01.dbf文件有坏块。修复sysaux01.dbf文件,启动数据库依然有许多查询报错。export和data pump工具无法使用,查询告警日志并分析报错,确认发生上述错误的原因就是sysaux01.dbf文件损坏。由于该文件损坏,从数据库层面无法修复数据库。由于system和用户表空间的数据文件是正常的,
|
1月前
|
Oracle 关系型数据库 数据库
oracle数据创建同义词
oracle数据创建同义词
47 0