ITPub博客

首页 > 应用开发 > IT综合 > Oracle12c新特性之在线迁移特性在生产数据库中实施应用过程

Oracle12c新特性之在线迁移特性在生产数据库中实施应用过程

原创 IT综合 作者:businessqaz 时间:2021-03-04 16:52:50 0 删除 编辑

acle12c数据库新特性之在线迁移特性在生产数据库中实施应用过程

在巡检过程中,发现 44、45号数据文件创建路径不合理,存放在根目录下,随着业务量及数据文件的扩展,有可能导致根目录满而引起系统挂起的情况,属于隐患问题,需要及时处理。以下就是12c环境下在线迁移数据文件的过程。

首先登陆到 cdb命令行,查看44、45号文件,确认其路径。

SQL> select

file#,name from v$datafile where file# in (44,45);
     FILE# NAME
----------

----------------------------------------------------------------------
      44

/u01/app/oracle/12.1.0/db/dbs/D:apporacleoradataqyws_jkda01.dbf
      45

/u01/app/oracle/12.1.0/db/dbs/D:apporacleoradataqyws_jkda02.DBF
2 rows selected.
在 cdb下执行在线迁移
SQL> alter

database move datafile

'/u01/app/oracle/12.1.0/db/dbs/D:apporacleoradataqyws_jkda01.dbf' to

'/oradata/apporacleoradataqyws_jkda01.dbf' keep;
alter database

move datafile '/u01/app/oracle/12.1.0/db/dbs/D:apporacleoradataqyws_jkda01.dbf'

to '/oradata/apporacleoradataqyws_jkda01.dbf' keep
*
ERROR at line 1:
ORA-01516:

nonexistent log file, data file, or temporary file "44"

报出 ora-01516错误,根据提示,无法找到数据文件、日志文件、临时文件,在12c环境中,各个pdb之间及其与cdb之间,数据文件都是互相隔离的,所以此处出现该错误说明44号文件应该不存在cdb下,通过以下方式确定其所属那个数据库。

 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
SQL>  select  file_name,file_id,con_id  from  cdb_data_files  where  file_id = 44;
  
FILE_NAME
-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
-------------------------------------------   FILE_ID     CON_ID
---------- ----------
/u01/app/oracle/12.1.0/db/dbs/D:apporacleoradataqyws_jkda01.dbf
       44      9
  
  
SQL>  select  file_name,file_id,con_id  from  cdb_data_files  where  file_id = 45;
  
FILE_NAME
-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
-------------------------------------------   FILE_ID     CON_ID
---------- ----------
/u01/app/oracle/12.1.0/db/dbs/D:apporacleoradataqyws_jkda02.DBF
       45      9

可以查到,  44号和45号数据文件所属pdb的con_id都是9,查看pdb

1
2
3
4
5
SQL>  select  pdb_name,status,con_id  from  cdb_pdbs  where  con_id = 9;
  
PDB_NAME                    STATUS        CON_ID
---------------------------------------- --------- ----------
QYWS_MYGH                      NORMAL       9


可以看到, 9号pdb为QYWS_MYGH,切换到QYWS_MYGH数据库下。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
SQL>  alter  session  set  container= QYWS_MYGH;
  
Session altered.
  
SQL>  select  file#, name  from  v$datafile;
  
      FILE#  NAME
---------- ----------------------------------------------------------------------
        4 /oradata/QYWSXXDB/datafile/o1_mf_undotbs1_d5ljrc20_.dbf
       41 /oradata/QYWSXXDB/448F174D916D03B1E055000000000001/datafile/o1_mf_syst
          em_d61zyly7_.dbf
  
       42 /oradata/QYWSXXDB/448F174D916D03B1E055000000000001/datafile/o1_mf_sysa
          ux_d61zyly8_.dbf
  
       43 /oradata/QYWSXXDB/448F174D916D03B1E055000000000001/datafile/o1_mf_qyws
          _myg_d61zz1vr_.dbf
  
       44 /u01/app/oracle/12.1.0/db/dbs/D:apporacleoradataqyws_jkda01.dbf
  
      FILE#  NAME
---------- ----------------------------------------------------------------------
       45 /u01/app/oracle/12.1.0/db/dbs/D:apporacleoradataqyws_jkda02.DBF
  


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

请登录后发表评论 登录
全部评论

注册时间:2021-03-01

  • 博文量
    27
  • 访问量
    9462