オラクル・ラックのケーススタディ
2022-01-18 04:43:54
racとは?
異なるサーバー上の複数のインスタンス、共有データベースファイルへのアクセス、CPUとメモリのスケーリング、パフォーマンスの向上、複数ノード、HAを可能にします。
racはどのような問題を解決するのか
- 高可用性:自動切り替え、ロードバランシング
- ハイパフォーマンス:マルチインスタンス、多接続、同時実行
- 高いスケーラビリティ:ノードのスケールアップに伴うダウンタイムがない。
実現までの道のり
構成
3層構造。
- クラスタソフトウェア:クラスタ管理、ノード追加、削除、ハートビート、同期、2つのコンポーネント(投票ディスク、クラスタ登録サービス)を含む。
- racデータベースソフトウェア:データベースインスタンスを提供します。
- rac データベース:共有ストレージ、共有ファイル。
1. トポロジー図
2. ストレージの分割例
共有ストレージは現在、説明のためにASMを提案しています。
rac共通操作
1. スタート/ストップ
shutdown: listen->db->cluster->os
-
リスナー(グリッドユーザー)をシャットダウンし、新しいプログラムが接続できないようにします。
srvctl stop listener -
ダーティブロックの書き込み
alter systerm checkpoint; (複数回実行) -
データベースをシャットダウンします (グリッドユーザで) racdb はデータベースのグローバル一意名です。実行に時間がかかりますが、終了しないでください。
/u01/app/11.2.0/grid/bin/srvctl stop database -d racdb -o immediate -
クラスタウェアをシャットダウンします(rootユーザー)
/u01/app/11.2.0/grid/bin/crsctl stop cluster -all -
リソースの状態を見る
/u01/app/11.2.0/grid/bin/crsctl status resource -t -
オペレーティングシステムのシャットダウン(root)
シャットダウン -h now
----------- RACデータベースを起動する ------。
クラスタ->db
-
デフォルトでは、OS起動時(root)にクラスタソフトウェアが起動します。
クラスタリソースを確認します。/u01/app/11.2.0/grid/bin/crsctl status resource -t -- すべてオンラインであることが必要です。
クラスタリソースを起動します。/u01/app/11.2.0/grid/bin/crsctl start cluster -all -
データベース(グリッド)の起動
srvctl start database -d racdb -
リスナーの状態を確認します。デフォルトでは、リスナーはクラスタソフトウェア(グリッド)と共に起動されます。
srvctl status listener -- リスナーの状態を表示する。
srvctl start listener -- リスナーを起動します。 - 接続テストのためにplsqlにログインします。
2. 追加と削除
- RACのインストールと同じようにOSを設定し、Mountでディスクを共有します。ただし、Oracleとグリッドソフトはインストールしない
- グリッドインストーラのスクリプトを使用して、ノード間のsshを設定します。
- グリッドユーザーでノードを追加する場合、主にグリッドコンポーネントを追加すると、grid_homeの内容が新しいノードにコピーされます
- oracle ユーザーの下にノードを追加すると、主に oracle コンポーネントを追加して、oracle_home 以下のコンテンツが新しいノードにコピーされます
- DBCAを使用して新しいインスタンスを追加するか、手動で追加します(このdbca add)。
難易度
1. ノードデータの整合性。
インメモリトランザクション情報、ロック、異なるノードからのデータを同期する場合、異なるノード間の競合を避けるために、単一のインスタンス。 cacheFusion、キャッシュフュージョン
サーバー間でキャッシュを共有する。hdpは分散ファイルシステムをベースにしており、ノード上でブロックベースの計算を行い、その後マージすることで、真の独立性を保ちます。
質問です。
hbaカード
光ファイバーネットワークカード
仮想IPとは何をするものですか?
Oracleインストール時にパブリックNICへのバインディングが自動生成され、外部に提供される(パブリックNICの仮想IP)
rac2 が失敗すると、その仮想 ip は自動的に rac1 の物理 NIC に流れます。クライアントがそれを要求すると、rac2 は vip1 を再接続して入ってくるように失敗メッセージを返します。
vipがない場合、クライアントシングルリクエストが来ると、3回試行した後、tcp\ip接続が失敗するまで失敗を返すので、体験が悪くなる。
vipはHA実装のための重要なツールです。
<リンク
関連
-
Oracle Databaseの失敗したオブジェクトの処理の詳細
-
Oracle12Cのデフォルトのユーザー名とシステムパスワードが正しくない場合の解決策
-
Oracleデッドロック検出クエリとその処理
-
PLSQLDeveloper14を使用したOracle11gへの接続手順を詳しく伝授
-
Navicat PremiumツールでOracleデータベースをMySQLに移行する
-
Oracleで読み取り専用アカウントを作成する詳細手順
-
Oracle 11g R2 インストールチュートリアル フルバージョン
-
[解決済み] ORA-30036: アンドゥ テーブルスペース 'UNDOTBS' でセグメントを 8 つ拡張できません。
-
[解決済み] PLS-00103:次のいずれかを期待しているときに、記号"; "に遭遇しました。
-
[解決済み] ORA-4031 "unable to allocate x bytes of shared memory" を解決する。
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
Oracle Dbeaver ストアドプロシージャの構文説明
-
LogMinerによるOracle Databaseの同期マイグレーション
-
Oracle11g r2のアンインストール、詳細なチュートリアルのクリーンな再インストール(プロのテストは、効果的な再インストールされている)。
-
Oracle 11gのダウンロード、インストール、グラフィックチュートリアルを使用します。
-
Oracle TriggersとCursorsを高速に学ぶ
-
[解決済み】Oracle "SQL Error: Missing IN or OUT parameter at index:: 1" と表示されました。
-
[解決済み] ORA-01109: データベースが開きません」エラーを解決するにはどうすればよいですか?
-
[解決済み] ORA-01849: 時間は 1 から 12 の間でなければなりません。
-
[解決済み] ORA-12545: ターゲットホストまたはオブジェクトが Mac に存在しないため、接続に失敗しました - SQLPLUS
-
[解決済み] ORA-01950: テーブルスペース 'USERS' に特権がありません [閉鎖]。