日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > windows >内容正文

windows

11G Oracle RAC添加新表空间时数据文件误放置到本地文件系统的修正

發布時間:2023/12/9 windows 20 豆豆
生活随笔 收集整理的這篇文章主要介紹了 11G Oracle RAC添加新表空间时数据文件误放置到本地文件系统的修正 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

? 今天看了一篇文章說是誤將新創建的表空間的數據文件放置在了本地系統而不是共享存儲上。

是Oracle的中文技術支持博客題目是:RAC中誤將數據文件創建在本地盤時的修正


? 于是我想11G 也兼容這些操作的方法,但是11G的新特性有一點就是可以直接支持ASM文件系統直接可以和本地文件系統進行文件的拷貝了,也就是有三種方法。

1. RMAN的 copy datafile 方式

2. dbms_file_transfer方式

3. ASMCMD中的直接cp方式了

分別演示三種方式:

RMAN

1)創建好本地開始的表空間

SQL> create tablespace andy datafile '/home/oracle/andy.dbf' size 100M;

Tablespace created.

2)查看一下狀態

SQL> select name,status from v$datafile;

NAME

--------------------------------------------------------------------------------

STATUS

-------

+DATA/racdb/datafile/system.256.823634487

SYSTEM

+DATA/racdb/datafile/sysaux.257.823634489

ONLINE

+DATA/racdb/datafile/undotbs1.258.823634489

ONLINE

NAME

--------------------------------------------------------------------------------

STATUS

-------

+DATA/racdb/datafile/users.259.823634491

ONLINE

+DATA/racdb/datafile/example.264.823634653

ONLINE

+DATA/racdb/datafile/undotbs2.265.823634943

ONLINE

NAME

--------------------------------------------------------------------------------

STATUS

-------

+DATA/racdb/datafile/undotbs3.266.823634945

ONLINE

+DATA/racdb/datafile/andylhz.272.823709117

ONLINE

+DATA/racdb/datafile/archivedata.274.824748169

ONLINE

NAME

--------------------------------------------------------------------------------

STATUS

-------

+DATA/racdb/datafile/archivedata01.275.824749235

ONLINE

/home/oracle/andy.dbf

ONLINE

3)在本地表空間上創建表 andy01

SQL> create table andy01 tablespace andy as select * from dba_objects;

Table created.

4)在第二個實例上去創建表也放在andy這個表空間上,注意紅色字體部分,報告無法定位andy.dbf數據文件

[oracle@racdb2 ~]$ sqlplus ?/nolog

SQL*Plus: Release 11.2.0.1.0 Production on Wed Feb 12 17:00:30 2014

Copyright (c) 1982, 2009, Oracle. ?All rights reserved.

SQL> conn / as sysdba

Connected.

SQL> create table andy02 tablespace andy as select * from dba_objects;

create table andy02 tablespace andy as select * from dba_objects

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? *

ERROR at line 1:

ORA-01157: cannot identify/lock data file 11 - see DBWR trace file

ORA-01110: data file 11: '/home/oracle/andy.dbf'

5)然后進行修正操作,先將andy表空間進行offline

然后進行RMAN 拷貝 在將數據文件進行移動,online即可

SQL> alter database rename file '/home/oracle/andy.dbf' to '+data/racdb/datafile/andy.dbf';


第二種方式

1)先創建兩個目錄,offline表空間andy

SQL> create directory andy01 as ?'/home/oracle/';

Directory created.

SQL> create directory andy02 as ?'+data/racdb/datafile/';

Directory created.

SQL>

2)進行文件傳輸

SQL> exec dbms_file_transfer.copy_file('andy01','andy.dbf','andy02','andy.dbf');

PL/SQL procedure successfully completed.

SQL>

進入asmcmd查看一下

ASMCMD> pwd

+data/racdb/datafile

ASMCMD> ls

ANDYLHZ.272.823709117

ARCHIVEDATA.274.824748169

ARCHIVEDATA01.275.824749235

COPY_FILE.279.839351419

EXAMPLE.264.823634653

SYSAUX.257.823634489

SYSTEM.256.823634487

UNDOTBS1.258.823634489

UNDOTBS2.265.823634943

UNDOTBS3.266.823634945

USERS.259.823634491

andy.dbf

ASMCMD>

已經成功拷貝過去了

移動數據文件,online數據文件

SQL> alter database rename file '/home/oracle/andy.dbf' to '+data/racdb/datafile/andy.dbf';

Database altered.

SQL> ?alter tablespace andy online;

Tablespace altered.



第三種:通過grid用戶進入到asmcmd環境下然后直接進入到RAC環境下的數據文件所在路徑因為是數據文件創建在了oracle的家目錄下,grid沒有權限讀取,所以使用root用戶將數據文件移動到grid家目錄下同時變更權

[root@racdb1 grid]#mv andy.dbf /home/grid/

[root@racdb1 grid]#chown grid.asmadmin andy.dbf

[root@racdb1 grid]# su - grid

[grid@racdb1 ~]$ asmcmd

ASMCMD> cd data/racdb/datafile/

ASMCMD> ls

ANDYLHZ.272.823709117

ARCHIVEDATA.274.824748169

ARCHIVEDATA01.275.824749235

EXAMPLE.264.823634653

SYSAUX.257.823634489

SYSTEM.256.823634487

UNDOTBS1.258.823634489

UNDOTBS2.265.823634943

UNDOTBS3.266.823634945

USERS.259.823634491

ASMCMD> cp /home/grid/andy.dbf ./

copying /home/grid/andy.dbf -> +data/racdb/datafile/andy.dbf

ASMCMD> ls

ANDYLHZ.272.823709117

ARCHIVEDATA.274.824748169

ARCHIVEDATA01.275.824749235

EXAMPLE.264.823634653

SYSAUX.257.823634489

SYSTEM.256.823634487

UNDOTBS1.258.823634489

UNDOTBS2.265.823634943

UNDOTBS3.266.823634945

USERS.259.823634491

andy.dbf

ASMCMD>

移動數據文件到共享存儲

SQL> alter database rename file '/home/oracle/andy.dbf' to '+data/racdb/datafile/andy.dbf';

Database altered.

SQL>

將數據文件online。


驗證數據文件狀態

SQL> select name,status from v$datafile;

NAME

--------------------------------------------------------------------------------

STATUS

-------

+DATA/racdb/datafile/system.256.823634487

SYSTEM

+DATA/racdb/datafile/sysaux.257.823634489

ONLINE

+DATA/racdb/datafile/undotbs1.258.823634489

ONLINE

NAME

--------------------------------------------------------------------------------

STATUS

-------

+DATA/racdb/datafile/users.259.823634491

ONLINE

+DATA/racdb/datafile/example.264.823634653

ONLINE

+DATA/racdb/datafile/undotbs2.265.823634943

ONLINE

NAME

--------------------------------------------------------------------------------

STATUS

-------

+DATA/racdb/datafile/undotbs3.266.823634945

ONLINE


+DATA/racdb/datafile/andylhz.272.823709117

ONLINE

+DATA/racdb/datafile/archivedata.274.824748169

ONLINE

NAME

--------------------------------------------------------------------------------

STATUS

-------

+DATA/racdb/datafile/archivedata01.275.824749235

ONLINE

+DATA/racdb/datafile/andy.dbf

ONLINE

11 rows selected.


轉載于:https://blog.51cto.com/andylhz2009/1358512

總結

以上是生活随笔為你收集整理的11G Oracle RAC添加新表空间时数据文件误放置到本地文件系统的修正的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。