oracle如何移动表空间?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了oracle如何移动表空间?相关的知识,希望对你有一定的参考价值。
我的oracle是安装在D:盘的,现在D盘的空间不够用了,
1、请问可以新建表空间在D盘吗?
2、如果可以,在使用和向表空间导入数据的时候要注意哪些问题?
3、麻烦大神们在E盘新建表空间给个详细的步奏和注意事项。
4、将D盘已有的表空间移动到E盘的详细步骤?
您所问的表空间在D盘、E盘的 实际上是数据文件所在的位置。
-- 以上是对于 表空间和数据文件的一个简单的感念,希望lz能先弄明白这个。
-- 移动表空间总的来说有两种办法。一种联机,一种脱机。分别介绍如下:
脱机(可以移动任何表空间中的数据文件,命令为alter database rename file)
SQL>shutdown
2:用系统命令移动数据文件,这里lz是win操作系统,可直接复制粘贴
3:sqlplus / as sysdbsa
SQL>startup mount
alter database rename file 'D:/xxxxx' to 'E:/xxxxx'
(注意在alter open之前不要退出)
SQL>alter database open;
二:联机(不可移动system表空间,回滚段和临时表空间中的数据文件,命令为alter tablespace )
SQL> conn / as sysdba
SQL> alter tablespace xxxx offline;
2:在操作系统层面上移动数据文件
3:alter tablespace xxxx rename datafile 'D:/xxxx' to 'E:/xxxxx';
4:alter tablespace xxxx online; 参考技术A 你只要往表空间添加数据文件就可以了,把新数据文件放在空闲的磁盘上。
移动到e盘,你只需要把D盘的文件移动到E盘,然后rename datafile就行了,告诉oracle新的文件位置就行了 参考技术B 具体的操作系统命令如下:
D:\>IMP transport_tablespace=y datafiles= 'd:\localdb\local1.dbf'
,'d:\localdb\local2.dbf’
用户名:internal/oracle@test as sysdba
当执行完上述命令之后,会将表空间local和local2及其所包含的所有数据对象信息导入到目标数据库中。 参考技术C 不需要新建表空间,只做表空间数据文件迁移即可
第一步,将表空间offline
alter tablespace tablespace_name offline;
第二步,cp文件到新的目录并rename修改控制文件
cp /app3/oradb/shisl/plantation01.dbf /octopus/emc/shisl/plantation01.dbf
alter database rename file '/app3/oradb/shisl/plantation01.dbf' to '/octopus/emc/shisl/plantation01.dbf'
第三步,将相应表空间online
alter tablespace tablespace_name online;
Oracle移动数据文件
由于oracle表空间数据文件规划问题导致当前数据文件所在文件系统空间不足,当其他文件系统空间充足情况下,可将数据文件移动到空间充足的文件系统下。本文主要描述Oracle表空间数据文件移动的操作步骤。
表空间数据文件移动操作步骤
1、查看当前待操作表空间DATATBS对应的数据文件的路径、状态。
SQL> select tablespace_name,file_name,online_status from dba_data_files where tablespace_name=‘DATATBS‘;
2、将DATATBS表空间状态想修改为offline
SQL> alter tablespace datatbs offline;
3、移动数据文件到指定的目录下。
SQL> host move /opt/oracle/oradata/datatbs.dbf /home/oracle/datatbs.dbf;
4、重命名当前数据文件名为修改后的路径。
SQL> alter tablespace datatbs rename datafile ‘/opt/oracle/oradata/datatbs.dbf‘ to ‘/home/oracle/datatbs.dbf‘;
5、将表空间对应状态修改为online
SQL> alter tablespace datatbs online;
6、操作完成。
以上是关于oracle如何移动表空间?的主要内容,如果未能解决你的问题,请参考以下文章