实现把用户表空间中的数据文件从某一个路径移动到另一个路径
一、针对可offline的非系统表空间
本例移动oracle的案例表空间(EXAMPLE表空间),将其从
D:\ORADATA\ORCL\ 移动到 D:\ORACLE\ORADATA\
1.查看要改变的表空间的数据文件信息
SQL> select tablespace_name,file_name,online_status from dba_data_files where tablespace_name='EXAMPLE'; TABLESPACE_NAME FILE_NAME ONLINE_ --------------- ----------------------------------- ------- EXAMPLE D:\ORADATA\ORCL\EXAMPLE01.DBF ONLINE
2.将目标表空间设置为脱机状态
SQL> alter tablespace EXAMPLE offline;
3.再次查看目标表空间的状态,确保其已经是脱机状态
SQL> select tablespace_name,file_name,online_status from dba_data_files where tablespace_name='EXAMPLE'; TABLESPACE_NAME FILE_NAME ONLINE_ --------------- ----------------------------------- ------- EXAMPLE D:\ORACLE\ORADATA\EXAMPLE01.DBF OFFLINE
4.将原来的数据文件移动(或复制)到新的路径
SQL> host move D:\ORADATA\ORCL\EXAMPLE01.DBF D:\ORACLE\ORADATA\
5.修改该表空间的数据文件路径
SQL> alter tablespace EXAMPLE rename datafile 'D:\ORADATA\ORCL\EXAMPLE01.DBF' to 'D:\ORACLE\ORADATA\EXAMPLE01.DBF';
6.查看该表空间修改后的信息,确保信息无误
SQL> select tablespace_name,file_name,online_status from dba_data_files where tablespace_name='EXAMPLE'; TABLESPACE_NAME FILE_NAME ONLINE_ --------------- ----------------------------------- ------- EXAMPLE D:\ORACLE\ORADATA\EXAMPLE01.DBF OFFLINE
7.修改该表空间为在线状态
SQL> alter tablespace EXAMPLE online;
8.查看该表空间最后结果
SQL> select tablespace_name,file_name,online_status from dba_data_files where tablespace_name='EXAMPLE';
TABLESPACE_NAME FILE_NAME ONLINE_ --------------- ----------------------------------- ------- EXAMPLE D:\ORACLE\ORADATA\EXAMPLE01.DBF ONLINE
备注:本方法对SYSAUX、USERS表空间也适用
二、系统表空间移动
该方法需要数据库处于mount状态
1.关闭运行中的数据库
SQL> shutdown immediate
2.启动数据库到mount状态
SQL> startup mount
3.移动系统表空间(SYSTEM表空间)的数据文件
SQL> host move D:\ORADATA\ORCL\SYSTEM01.DBF D:\ORACLE\ORADATA\
4.修改该表空间的数据文件路径
SQL> alter database rename file 'D:\ORADATA\ORCL\SYSTEM01.DBF' to 'D:\ORACLE\ORA DATA\SYSTEM01.DBF';
5.启动数据库,打开实例
SQL> alter database open;
6.查看表空间修改结果
SQL> select tablespace_name,file_name,online_status from dba_data_files where ta blespace_name='SYSTEM'; TABLESPACE_NAME FILE_NAME ONLINE_ --------------- ----------------------------------- ------- SYSTEM D:\ORACLE\ORADATA\SYSTEM01.DBF SYSTEM
备注:本方法对UNDOTBS1、TEMP表空间也适用。
以上内容是小编给大家分享的Oracle表空间数据文件移动的方法,希望大家喜欢。
本文向大家介绍Oracle dbf文件移动的方法,包括了Oracle dbf文件移动的方法的使用技巧和注意事项,需要的朋友参考一下 背景 oracle空间不足,发现dbf文件未按设计的路径存放,linux磁盘挂载空间未利用,需要移动一下位置错误的dbf文件。 检查文件系统 home挂载点下空间已达到100%。 检查大文件 发现是dbf文件过大后,准备移动一下。应该存放数据库文件的oradata挂载
本文向大家介绍Oracle表空间数据库文件收缩案例解析,包括了Oracle表空间数据库文件收缩案例解析的使用技巧和注意事项,需要的朋友参考一下 我们经常会遇到数据库磁盘空间爆满的问题,或由于归档日志突增、或由于数据文件过多、大导致磁盘使用紧俏。这里主要说的场景是磁盘空间本身很大,但表空间对应的数据文件初始化的时候就直接顶满了磁盘空间,导致经常收到磁盘空间满的报警。 一、错误信息 告警内容如下: 【
oracle 11g关于数据库表空间文件最佳配置是什么样的? 企业的数据库是oracle11g的 数据库data空间文件里创建了很多个 有时候满了会用alter新增一个新的文件 有一些疑惑 1.初始大小是设置100m好还是直接一步到位设置 32G? (DB_BLOCK_SIZE是8K 最大就是32G) 2.如何初始大小比如设置10G,开启文件自动扩展 每次扩展大小是设置多大为好? 因为看到别人远程
THX!
我需要将GPS坐标保存在一个没有安装spatial extension的Oracle数据库中。有一个软件pl/sql模拟Oracle Spatial的主要功能(显然没有使用它的数据类型),以同样的方式对Oracle 11的JSON功能进行“包装”。github:https://github.com/pljson/pljson上有这个项目
问题内容: 我有一个属于表空间 报告 的分区表。我想将其移至表空间 记录 。 一种可能性是删除表并在新表空间中重新创建它,但这对我来说不是一个选择,因为表中有数据需要在移动后幸存。 我首先使用以下命令检查分区是否真正属于表空间报告: 然后我只是尝试: 但这给了我错误ORA-145111``无法对已分区的对象执行操作’‘。 然后我发现我可以使用以下方法移动单个分区: 但是由于该表有60个分区(基于日