RAC实例 表空间 维护
?
?
先配置一下監(jiān)聽,這樣我們就可以從客戶端進行連接了。?我這里寫了三種連接。?第一種是正常方式,一般都采用這種方式,后面的rac1和rac2?是方便測試。因為如果用第一種方式的話,客戶端連哪個實例是隨機的,不好進行控制,除非手動的關(guān)閉某個實例,讓Oracle?漂過去,那樣有點麻煩。?我就又多添加了2個監(jiān)聽,分別對應(yīng)實例1和實例2.??配置這2個監(jiān)聽的時候,要注意Service_name?這個參數(shù),也是orcl.?即全局名。?不是對應(yīng)的實例名。
?
Oracle?實例監(jiān)聽:
RAC =
??(DESCRIPTION =
????(ADDRESS_LIST =
??????(ADDRESS = (PROTOCOL = TCP)(HOST = 10.85.10.1)(PORT = 1521))
??????(ADDRESS = (PROTOCOL = TCP)(HOST = 10.85.10.2)(PORT = 1521))
????)
????(CONNECT_DATA =
??????(SERVICE_NAME = orcl)
??????(FAILOVER_MODE =
????????(TYPE = session)
????????(METHOD = basic)
????????(RETRIES = 180)
????????(DELAY = 5)
??????)
????)
??)
?
Rac1 =
??(DESCRIPTION =
????(ADDRESS_LIST =
??????(ADDRESS = (PROTOCOL = TCP)(HOST = 10.85.10.1)(PORT = 1521))
????)
????(CONNECT_DATA =
??????(SERVICE_NAME = orcl)
????)
??)
?
Rac2 =
??(DESCRIPTION =
????(ADDRESS_LIST =
??????(ADDRESS = (PROTOCOL = TCP)(HOST = 10.85.10.2)(PORT = 1521))
????)
????(CONNECT_DATA =
??????(SERVICE_NAME = orcl)
????)
??)
?
ASM?實例監(jiān)聽配置,手動的修改tnsnames.ora?文件。
?
如何配置從遠程客戶端?來訪問ASM?實例,參考Blog:
????????????遠程客戶端?訪問?ASM?實例
http://blog.csdn.net/tianlesoftware/archive/2010/09/23/5901749.aspx
?
?
在這里做一下說明,?RAC?的數(shù)據(jù)文件和控制文件都是放在共享設(shè)備上的,所以添加數(shù)據(jù)文件或?qū)?shù)據(jù)文件做修改時,只需要在一個節(jié)點上進行就可以了。
?
?
一.???用別名管理數(shù)據(jù)文件
?
1.1???查看已經(jīng)存在的數(shù)據(jù)文件:
?
C:/Users/Administrator.DavidDai>sqlplus /nolog
SQL*Plus: Release 11.2.0.1.0 Production on?星期四?9月
Copyright (c) 1982, 2010, Oracle.??All rights reserved
SQL> conn sys/oracle@rac2 as sysdba;
已連接。
SQL> select file_name from dba_data_files;
FILE_NAME
------------------------------------------------------
+DATA/orcl/datafile/users.279.730181053
+DATA/orcl/datafile/sysaux.277.730181053
+DATA/orcl/datafile/undotbs1.278.730181053
+DATA/orcl/datafile/system.276.730181051
+DATA/orcl/datafile/undotbs2.284.730181347
?
?
ASM文件名字的格式是固定的:+group/dbname/file type/tag.file.incarnation
?
在創(chuàng)建db時系統(tǒng)自動創(chuàng)建的幾個表空間(system,undotbs,sysaux,users)對應(yīng)的都是真實的數(shù)據(jù)文件,即ASM?文件默認的命名格式。而且這個信息都寫到了控制文件里。?如果我們使用別名的話,會方便很多。?對于這些創(chuàng)建數(shù)據(jù)庫時自動創(chuàng)建的表空間,我們要他們使用別名,除了手工創(chuàng)建對應(yīng)別名外,還需要重建控制文件,并且在重建時,datafile?里寫別名的信息。?這樣數(shù)據(jù)庫也就使用別名了。
?
?
1.2??創(chuàng)建一個別名
?
注意:?別名的相關(guān)操作都要連接到ASM實例進行。?這也是我們前面配置ASM?監(jiān)聽的原因。
?????????
C:/Users/Administrator.DavidDai>sqlplus /nolog
SQL*Plus: Release 11.2.0.1.0 Production on?星期四?9月?23 12:07:24 2010
Copyright (c) 1982, 2010, Oracle.??All rights reserved.
?
SQL> conn sys/oracle@ASM AS SYSDBA
已連接。
SQL> select name from v$asm_diskgroup;
NAME
-------------------------------------------
DATA
FLASH_RECOVERY_AREA
?
1.2.1?使用全路徑來創(chuàng)建
?
SQL> ALTER DISKGROUP DATA ADD ALIAS '+DATA/orcl/datafile/undotbs1.dbf'
FOR '+DATA/orcl/datafile/undotbs1.278.730181053';
?
1.2.2?使用數(shù)據(jù)文件的編號來創(chuàng)建
?
這里的編號就最后幾個數(shù)字,在下面這個文件里,編號就是:284.730181347
+DATA/orcl/datafile/undotbs2.284.730181347
?
看一下創(chuàng)建SQL:
SQL> ALTER DISKGROUP DATA ADD ALIAS '+DATA/orcl/datafile/undotbs2.dbf'
??2????FOR '+DATA.284.730181347';??--?注意這里的格式
磁盤組已變更。
?
?
來查看別名的信息,這里要用asmcmd命令:
?
[oracle@rac1 admin]$ export ORACLE_SID=+ASM1
[oracle@rac1 admin]$ asmcmd
ASMCMD> pwd
+DATA/ORCL/DATAFILE
ASMCMD> ls -a
+DATA/ORCL/DATAFILE/dave.dbf => DAVE.288.730415847
none => SYSAUX.257.729962649
none => SYSAUX.261.729964001
none => SYSAUX.266.729966263
none => SYSAUX.270.729970051
none => SYSAUX.277.730181053
none => SYSTEM.256.729962647
none => SYSTEM.260.729963993
none => SYSTEM.265.729966263
none => SYSTEM.269.729970045
none => SYSTEM.276.730181051
none => UNDOTBS1.258.729962649
none => UNDOTBS1.262.729964005
none => UNDOTBS1.267.729966265
none => UNDOTBS1.271.729970057
+DATA/ORCL/DATAFILE/undotbs1.dbf => UNDOTBS1.278.730181053
+DATA/ORCL/DATAFILE/undotbs2.dbf => UNDOTBS2.284.730181347
none => USERS.259.729962651
none => USERS.263.729964005
none => USERS.268.729966267
none => USERS.272.729970063
none => USERS.279.730181053
dave.dbf
undotbs1.dbf
undotbs2.dbf
?
在這里,我們看到別名和數(shù)據(jù)文件的對應(yīng)關(guān)系,我們創(chuàng)建的所有數(shù)據(jù)文件都有對應(yīng)的ASM?文件。我們可以使用別名來與之對應(yīng),但是創(chuàng)建DB時創(chuàng)建的表空間沒有對應(yīng)的別名與之對應(yīng)。?這個就是我之前說的,要修改這個默認設(shè)置就需要重建控制文件。
?
1.3?重命名別名
SQL> ALTER DISKGROUP DATA RENAME ALIAS '+DATA/orcl/datafile/undotbs1.dbf' TO '+DATA/orcl/datafile/undotbs3.dbf';
?
磁盤組已變更。
?
1.4?刪除別名
SQL>??ALTER DISKGROUP DATA DROP ALIAS??'+DATA/orcl/datafile/undotbs3.dbf';
磁盤組已變更。
?
--?這里要說明一下,很多資料說是用delete?關(guān)鍵字。?其實這里用的是drop?關(guān)鍵字
?
1.5?用別名來刪除文件
ALTER DISKGROUP DATA DROP FILE '+DATA/ORCL/DATAFILE/undotbs3.dbf';
?
?
1.6?根據(jù)數(shù)據(jù)文件的文件號來刪除文件
ALTER DISKGROUP DATA DROP FILE ' DATA.342.3';
?
?
1.7?用完整文件路勁刪除文件
ALTER DISKGROUP DATA DROP FILE ' DATA /orcl/datafile/dave.342.3';
?
這部分內(nèi)容可以參考Oracle?聯(lián)機文檔:
http://download.oracle.com/docs/cd/E11882_01/server.112/e16102/asmfiles.htm#CHDDHIGG
?
?
?
二.?數(shù)據(jù)文件管理
?
2.1.?創(chuàng)建表空間
?
和單實例的相同,只不過文件路勁寫成ASM的路勁:
?
SQL> CREATE TABLESPACE DaveHomeTown DATAFILE??'+DATA/orcl/datafile/AnhuiAnqing.dbf' SIZE 10M;
表空間已創(chuàng)建。
?
SQL> select file_name from dba_data_files;
?
FILE_NAME
--------------------------------------------------------------------------------
+DATA/orcl/datafile/users.279.730181053
+DATA/orcl/datafile/sysaux.277.730181053
+DATA/orcl/datafile/undotbs1.278.730181053
+DATA/orcl/datafile/system.276.730181051
+DATA/orcl/datafile/undotbs2.284.730181347
+DATA/orcl/datafile/dave.dbf
+DATA/orcl/datafile/anhuianqing.dbf
?
已選擇7行。
?
我是在節(jié)點1上創(chuàng)建的。?前面已經(jīng)說過,因為它是共享的,所以在節(jié)點2上也能查詢到。
?
如果遇到如下錯誤:
?
ORA-00569: Failed to acquire global enqueue.
Cause:?A prior error occurred on one of the instances in the cluster. Typically errors are caused by shared pool resource contention.
Action:?Check for and resolve prior errors on all instances in the cluster. If there is shared pool resource contention, increase the SHARED_POOL_SIZE, DML_ LOCKS, PROCESSES, TRANSACTIONS, CLUSTER_DATABASE_INSTANCES and PARALLEL_MAX_SERVERS initialization parameters.
?
就檢查一下ASM的相關(guān)參數(shù)。
Oracle ASM?詳解
http://blog.csdn.net/tianlesoftware/archive/2010/02/22/5314541.aspx
?
?
2.2????????????修改數(shù)據(jù)文件大小
?
默認情況下,user?表空間是5M,?我們來把它改成10M。
?
SQL> ALTER DATABASE DATAFILE '+DATA/orcl/datafile/users.279.730181053' RESIZE 10M;
數(shù)據(jù)庫已更改。
?
?
現(xiàn)在設(shè)置表空間的自動擴展屬性:
?
SQL> ALTER DATABASE DATAFILE '+DATA/orcl/datafile/users.279.730181053'
??2??AUTOEXTEND ON
??3??NEXT 10M
??4??MAXSIZE UNLIMITED;
?
數(shù)據(jù)庫已更改。
?
2.3?表空間添加數(shù)據(jù)文件
?
SQL> ALTER TABLESPACE DAVE ADD DATAFILE '+DATA/orcl/datafile/dave2.dbf' SIZE 10M AUTOEXTEND ON NEXT 10M MAXSIZE 20M;
?
表空間已更改。
?
?
2.4?刪除數(shù)據(jù)文件
SQL> ALTER TABLESPACE DAVE DROP DATAFILE '+DATA/orcl/datafile/dave2.dbf';
表空間已更改。
?
?
2.5.?刪除表空間
SQL> drop tablespace dave including contents and datafiles;
表空間已刪除。
?
?
以前整理的一個單實例表空間常用命令:
????????????Oracle?表空間基本操作
http://blog.csdn.net/tianlesoftware/archive/2009/10/17/4681973.aspx
?轉(zhuǎn):http://blog.csdn.net/tianlesoftware/article/details/5901953
轉(zhuǎn)載于:https://www.cnblogs.com/andy6/p/5766673.html
《新程序員》:云原生和全面數(shù)字化實踐50位技術(shù)專家共同創(chuàng)作,文字、視頻、音頻交互閱讀總結(jié)
以上是生活随笔為你收集整理的RAC实例 表空间 维护的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: java 线程的几种状态
- 下一篇: 说一说限制字数的输入框踩的坑