mcpField
O
oracle

oracle

github.com/partme-aiデータ・データベース71889 回インストール4 週間前に更新
リポジトリ

oracle について

Oracle開発者とDBA向けのデータベーススキルです。SQLやPL/SQL、性能分析、管理に加え、パーティション、バックアップ、高可用性構成を扱います。

主な機能

  1. 01Oracle SQLとPL/SQLの開発ガイド
  2. 02テーブル、インデックス、パーティション、制約の設計
  3. 03EXPLAIN PLAN、AWR、ASHによる性能分析
  4. 04ユーザー、ロール、表領域、RMANの管理
  5. 05RAC、Data Guard、レプリケーションのガイド

活用シーン

  1. 01プロシージャ、関数、トリガーの作成
  2. 02実行計画とデータベース性能の分析
  3. 03大規模テーブルのパーティションと索引の計画
  4. 04バックアップ、リカバリ、高可用性環境の設定

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/partme-ai/full-stack-skills --skill oracle

インストール後、Claude Code で/oracleを入力して読み込まれたか確認します。

同梱ファイルLICENSE.txt

詳細

このスキルを使用する場面

ユーザーが次のことを求めている場合は、いつでもこのスキルを使用してください。

  • Oracle SQL または PL/SQL の作成(ストアドプロシージャ、関数、トリガー、パッケージ)
  • Oracle でのテーブル、インデックス、パーティション、制約の設計
  • EXPLAIN PLAN、AWR、ASH レポートを使用したクエリパフォーマンスのチューニング
  • Oracle の管理(ユーザー、ロール、表領域、RMAN バックアップ)
  • RAC、Data Guard、Oracle レプリケーションの設定

このスキルの使用方法

ワークフロー
  1. タスクを特定する - SQL の作成、PL/SQL の開発、パフォーマンスのチューニング、DBA 運用のいずれかを判断します
  2. コードを作成する - Oracle の構文に合わせて、以下のパターンを使用します
  3. パフォーマンスを分析する - EXPLAIN PLAN を実行するか、AWR スナップショットを確認します
  4. Oracle 固有のベストプラクティスを適用する - バインド変数、パーティショニング、RMAN を使用します
クイックスタート例:エラー処理を含む PL/SQL プロシージャ
CREATE OR REPLACE PROCEDURE transfer_funds(
    p_from_acct  IN NUMBER,
    p_to_acct    IN NUMBER,
    p_amount     IN NUMBER
) AS
    v_balance NUMBER;
BEGIN
    -- Check source balance
    SELECT balance INTO v_balance
    FROM accounts WHERE account_id = p_from_acct
    FOR UPDATE;

    IF v_balance < p_amount THEN
        RAISE_APPLICATION_ERROR(-20001, 'Insufficient funds');
    END IF;

    UPDATE accounts SET balance = balance - p_amount WHERE account_id = p_from_acct;
    UPDATE accounts SET balance = balance + p_amount WHERE account_id = p_to_acct;

    COMMIT;
EXCEPTION
    WHEN OTHERS THEN
        ROLLBACK;
        RAISE;
END transfer_funds;
/
パフォーマンス分析
EXPLAIN PLAN FOR
SELECT /*+ INDEX(o idx_orders_date) */ * FROM orders o WHERE order_date > SYSDATE - 30;

SELECT * FROM TABLE(DBMS_XPLAN.DISPLAY);

ベストプラクティス

  1. バインド変数を使用する - SQL インジェクションとハードパースを防止します。ユーザー入力を SQL に連結しないでください
  2. 大きなテーブルをパーティション分割する - 日付列にはレンジパーティション、均等に分散するにはハッシュパーティションを使用します
  3. RMAN バックアップ戦略 - 毎週フルバックアップ、毎日増分バックアップを行い、四半期ごとにリストア手順をテストします
  4. 待機イベントを監視する - AWR/ASH を使用して、I/O、ラッチ、ロックの競合を特定します
  5. 監査とセキュリティを確保する - Oracle Audit Vault を使用し、最小権限のロールを付与して、機密列を暗号化します

キーワード

oracle, PL/SQL, SQL*Plus, SQL Developer, RMAN, RAC, Data Guard, AWR, リレーショナルデータベース, ストアドプロシージャ, EXPLAIN PLAN, 表領域, インデックス, パーティション

コメント