posts - 9,  comments - 10,  trackbacks - 0
          1、什么是OPS
          OPS(Oracle Parallel Server)可以讓位于不同系統(tǒng)的多個(gè)實(shí)例同時(shí)訪問(wèn)同一個(gè)數(shù)據(jù)庫(kù)。并行服務(wù)器可以有效地提高系統(tǒng)的可用性和對(duì)多系統(tǒng)的訪問(wèn)性能,但是,如果你的數(shù)據(jù)沒(méi)有做很好的分割,性能可能還會(huì)下降。
          安裝OPS時(shí),多個(gè)實(shí)例mount同一數(shù)據(jù)庫(kù)文件,實(shí)例間的通訊由分布式鎖管理器(DLM)來(lái)管理。需要注意的是分布式鎖管理器與你所使用的硬件和操作系統(tǒng)有著密切的關(guān)系。為了確定多個(gè)企圖同時(shí)修改同一數(shù)據(jù)的實(shí)例,Oracle使用了十個(gè)后臺(tái)進(jìn)程:LCK0-LCK9,來(lái)鎖定某一實(shí)例所使用的資源。
          OPS主要用于UNIX/LINUX集群環(huán)境中。
          2、OPS的優(yōu)點(diǎn)
          1)高可用性
          2)加快事務(wù)響應(yīng)時(shí)間 - 可用于決策支持系統(tǒng)
          3)增大交易連接數(shù) - 可用于聯(lián)機(jī)事務(wù)處理系統(tǒng)
          3、所有的應(yīng)用都是適合OPS嗎?
          可以根據(jù)功能或數(shù)據(jù)進(jìn)行分割的應(yīng)用最適合OPS。那些有"熱數(shù)據(jù)"(經(jīng)常被多實(shí)例同時(shí)訪問(wèn)的數(shù)據(jù))的應(yīng)用并不適合使用OPS。
          4、OPS需要特殊的硬件嗎?
          OPS要求服務(wù)器之間互連并共享磁盤(pán)子系統(tǒng)。所有可以做成集群的系統(tǒng)都可以,常用的有UNIX/LINUX和NT等。
          5、如何設(shè)置OPS?
          1)關(guān)閉數(shù)據(jù)庫(kù)
          2)啟用OPS選項(xiàng),在UNIX中通過(guò)重新連接Oracle軟件的方式來(lái)完成。
          3)使Oracle軟件在所有節(jié)點(diǎn)上都有效,可以通過(guò)復(fù)制軟件到其他節(jié)點(diǎn)或共享磁盤(pán)的方式來(lái)完成。
          4)每個(gè)實(shí)例要有自己的Redo log file,所以要增加必要的log文件:
          ALTER DATABASE ADD LOGFILE THREAD 2
          GROUP G4 ('RAW_FILE1') SIZE 500k,
          GROUP G5 ('RAW_FILE2') SIZE 500k,
          GROUP G6 ('RAW_FILE3') SIZE 500k;
          ALTER DATABASE ENABLE PUBLIC THREAD 2;
          5)每個(gè)實(shí)例要有自己的回滾段,所以要增加必要的回滾段:
          CREATE ROLLBACK SEGMENT RB2 TABLESPACE RBS;
          6)編輯初始化參數(shù)文件initSID.ora文件,添加如下幾項(xiàng):
          PARALLEL_SERVER = TRUE
          INSTANCE_NUMBER = 1
          THREAD = 1
          ROLLBACK_SEGMENTS = (r01, r02, r03, r04)
          7)創(chuàng)建OPS所需的數(shù)據(jù)字典,即運(yùn)行CATPARR.SQL。
          8)在所有的節(jié)點(diǎn)上啟動(dòng)實(shí)例。
          6、如何確定一個(gè)數(shù)據(jù)庫(kù)是運(yùn)行在并行狀態(tài)?
          show parameter parallel_server
          7、如何跟蹤活動(dòng)的實(shí)例?
          SELECT * FROM SYS.V_$ACTIVE_INSTANCES;
          SELECT * FROM SYS.V_$THREAD;
          8、如何確定每個(gè)實(shí)例使用了多少個(gè)PCM鎖?
          select count(*) "Number of hashed PCM locks"
          from v$lock_element where bitand(flags, 4) != 0
          /
          select count(*) "Number of fine grain PCM locks"
          from v$lock_element where bitand(flags, 4) = 0
          /
          9、如何查看每個(gè)數(shù)據(jù)文件分配了多少個(gè)PCM鎖以及ping率?
          col file_name format a29
          col tablespace format a12
          col blocking format 9999999
          col nlocks format 99999
          col start_lk format 9999999
          select l.file_id || ' ' || l.file_name file_name,
          l.ts_name "TABLESPACE",
          start_lk, nlocks, blocking, frequency "PING COUNT"
          from sys.file_ping p, sys.file_lock l
          where l.file_id = p.file_id
          order by l.file_id
          /
          10、什么是pinging?
          Pinging是進(jìn)程,用于協(xié)調(diào)多實(shí)例對(duì)同一數(shù)據(jù)塊的讀寫(xiě)操作。OPS性能優(yōu)化的一個(gè)挑戰(zhàn)就是要最小化pinging。
          11、如何監(jiān)控PCM鎖的活動(dòng)情況?
          查看當(dāng)前實(shí)例活動(dòng)PCM鎖的總數(shù):select * from sys.v$lock_activity;
          查看每個(gè)數(shù)據(jù)庫(kù)對(duì)象的PCM鎖活動(dòng)狀況:
          col table format a40
          select file#, kind||' '||username||'.'||name "TABLE", sum(xnc) pings
          from sys.v$false_ping p, sys.dba_users u
          where u.user_id = p.owner#
          group by file#, kind||' '||username||'.'||name, xnc
          order by xnc desc
          /
          12、如何設(shè)置一個(gè)對(duì)所有OPS實(shí)例通用的SQL*Net連接串?
          1)首先要求所有節(jié)點(diǎn)上的SID相同,如果不相同可以按如下操作進(jìn)行更改:
          關(guān)閉數(shù)據(jù)庫(kù)的所有實(shí)例
          將ORACLE_SID環(huán)境變量設(shè)成一致
          復(fù)制原來(lái)的初始化文件initOLDSID.ora為initCOMMON.ora
          重起所有實(shí)例
          2)編輯本地TNSNAMES.ora,如下例:
          PHOENIX =
          (DESCRIPTION =
          (ADDRESS_LIST =
          (ADDRESS = (PROTOCOL = TCP)(HOST = 10.1.1.50)(PORT = 1521))
          (ADDRESS = (PROTOCOL = TCP)(HOST = 10.1.1.51)(PORT = 1521))
          )
          (CONNECT_DATA =
          (SERVICE_NAME = ora8)
          )
          )
          posted on 2007-06-13 14:53 老董 閱讀(249) 評(píng)論(0)  編輯  收藏 所屬分類: Oracle
          <2007年6月>
          272829303112
          3456789
          10111213141516
          17181920212223
          24252627282930
          1234567

          常用鏈接

          留言簿(1)

          隨筆分類(9)

          隨筆檔案(9)

          文章分類(3)

          文章檔案(3)

          友情鏈接

          • 戀戀冬季
          • 一個(gè)很值得收藏的關(guān)于軟件測(cè)試方面的blog

          搜索

          •  

          積分與排名

          • 積分 - 12723
          • 排名 - 2168

          最新評(píng)論

          閱讀排行榜

          評(píng)論排行榜

          主站蜘蛛池模板: 磴口县| 辽宁省| 绥阳县| 安化县| 湘潭县| 石景山区| 贵南县| 来安县| 肃北| 衡阳市| 吉木萨尔县| 温州市| 阜宁县| 株洲市| 兴义市| 定结县| 吉林市| 乐昌市| 双辽市| 堆龙德庆县| 山阳县| 桂林市| 仙游县| 牟定县| 扬中市| 民乐县| 宜丰县| 罗定市| 杭州市| 句容市| 临江市| 宁陵县| 通山县| 错那县| 昌宁县| 蒲城县| 蕲春县| 信丰县| 金坛市| 集安市| 涪陵区|