株式会社コーソル

コーソルDatabaseエンジニアのブログ

技術ブログ

入門書「[改訂2版]Oracleの基本」が7月16日に発売されます!

Oracle ACEの渡部です。 私とコーソルの同僚で執筆した [改訂2版]Oracleの基本 ~データベース入門から設計/運用の初歩までが、技術評論社さんから2022年7月16日に発売されます!

「Oracle Database、そもそもデータベースって何?」というレベルの、「本当の入門者」 の方向けの書籍です。 おそらく、IT基礎研修を終えた新卒入社エンジニアの方にマッチするレベルです。

なお、この書籍は、2017年に発売開始されたOracleの基本 ~データベース入門から設計/運用の初歩までを、最新の長期サポートリリースOracle 19cおよびマルチテナント構成に対応すべく改版したものです。

[改訂2版]Oracleの基本 について

この書籍は、Oracleの基本 ~データベース入門から設計/運用の初歩までを最新の長期サポートリリースOracle 19cおよびマルチテナント構成に対応すべく改版したものです。

[改訂2版]Oracleの基本 のポイント

改訂2版のポイント

  • すべての解説を、マルチテナント構成を前提に記述しています : マルチテナント構成を前提に記述したOracle書籍はほとんどないのでは?
  • インストール手順や画面キャプチャなどを最新の長期サポートリリースOracle Database 19cに変更

旧版からのポイント

  • 平易な表現を用いて、実用上必須な部分を厳選して、段階的に懇切丁寧にOracleを解説しています。
  • Oracleを前提にしつつも、データベース一般にかかわるさまざまな視点から説明しています。リレーショナルデータベース、SQL、テーブル設計、データベース運用の基礎などです。

旧版の紹介ブログも参考にしてください。

注意点

  • Oracleが持つ多くの機能やOracle用語について、網羅的に説明する書籍ではありません。 Oracleの初学者が確実にOracleを習得できるよう、実用上必須な部分について(のみ)丁寧に説明する書籍です。
  • マルチテナント構成を前提に記述した数少ない(もしかするとほぼない?)Oracle書籍ではありますが、マルチテナント構成にフォーカスして説明する書籍ではありません
    もし、書籍を用いてマルチテナント構成について学習されたい場合は、ORACLE MASTER Gold DBA 2019試験対策本をご利用ください。
  • 同様に、バージョン毎の動作差異など、Oracleの細かい挙動を事細かに説明する書籍ではありません。とはいえ、本書で取り上げた範囲においてバージョン毎の動作差異がある場合は、脚注で触れるなどして、動作差異の存在に気付くような配慮はしていますので、詳細はマニュアルなどで抑えてくださいませ。

[改訂2版]Oracleの基本 の各種データ

  • 著者: 渡部 亮太、舛井 智行, 岡野 平八郎, 峯岸 隆一, 日比野 峻佑, 相川 潔
  • 監修: 株式会社コーソル
  • 発売日: 2022年07月16日
  • 価格: 本体3,168円(税込)
  • 紙書籍 ISBN: 429712954X (978-4297129545)
  • 紙書籍 仕様: A5サイズ / 384ページ
  • 本記事は情報提供を目的にしています。情報には正確を期していますが、これを保証するものではありません。
  • 書籍に関する質問がある場合、技術評論社 書籍ページの「お問い合せ」から問い合わせてください。

本書の章立て

  • 第1章 データベースを知る
    • 1.1 なぜデータベースは必要なのか
    • 1.2 リレーショナルデータベースの基礎
      • リレーショナルモデルにしたがってデータを整理する
      • 標準化されたデータアクセス用言語SQL
      • 本書の構成
  • 第2章 Oracleを使ってみる
    • 2.1 データベースを構築する
      • インストールファイルをダウンロードする
      • Oracleをインストールする
      • マルチテナントアーキテクチャ
      • 作成したコンテナデータベースを確認する
    • 2.2 データベースに接続する
      • CDBルートにローカル接続する
      • Linux/UNIXでの環境設定
      • Windowsでの環境設定
      • データベースへの接続を切断する
      • PDBにリモート接続する
    • 2.3 データベースを起動/停止する
      • SYSユーザーでCDBルートにローカル接続する
      • コンテナデータベースを停止する
      • コンテナデータベースを起動する
      • PDBをオープンする
      • PDBをクローズする
    • 2.4 学習用ユーザーを作成する
      • testユーザーを作成する
    • 2.5 テーブルとデータ操作の基本
      • テーブルを作る‐CREATE TABLE文
      • データ型とは
      • テーブルの定義を確認する
      • データを追加する‐INSERT文
      • データを検索する‐SELECT文
      • データを更新する‐UPDATE文
      • データを削除する‐DELETE文
      • すべてのデータを高速に削除する‐TRUNCATE TABLE文
      • テーブルを削除する‐DROP TABLE文
      • SQLにコメントを入れる
      • データベースを削除する
  • 第3章 より高度なデータ操作を学ぶ
    • 3.1 データを複雑な条件で検索する
      • テストデータを準備する
      • 列の表示名を変更する
      • 検索結果をソートする‐ORDER BY句
      • さまざまな条件でデータを絞り込む
    • 3.2 データを加工/集計する
      • 演算子とファンクション
      • データを合計する‐SUM()
      • データの平均値,最大値,最小値を得る‐AVG(),MAX(),MIN()
      • データの件数を数える‐COUNT(*)
      • 種類ごとにデータを集計する‐GROUP BY 句,HAVING 句
    • 3.3 NULLとIS NULL条件
      • 列にNULLを設定する
      • NULLを検索する‐IS NULL条件
      • 演算子,ファンクション,文字列連結とNULL
      • 集計ファンクションとNULL
      • COUNT()とNULL
      • NULLの注意点
    • 3.4 SELECT文とSELECT文を組み合わせる
    • 3.5 テーブルを結合する
      • 内部結合
      • 左外部結合
      • 右外部結合
    • 3.6 データの表示画面にこだわる
      • 改行/改ページの動作を調整する
      • 列データの表示幅を調整する
      • 日時データの表示を調整する
    • 3.7 トランザクションでデータを安全に更新する
      • なぜトランザクションが重要か
      • トランザクションの「ALL or NOTHING」特性
      • トランザクションを使う
      • 実行中のトランザクションを取り消す‐ROLLBACK文
      • トランザクションを開始/終了する方法
  • 第4章 データをより高速に/安全に扱うしくみ
    • 4.1 検索処理を高速化するインデックス
      • なぜインデックスが必要か
      • インデックスのしくみ
      • インデックスを作成する‐CREATE INDEX文
      • インデックスを使う
      • インデックスを使える検索条件
    • 4.2 SELECT文をシンプルにまとめるビュー
      • なぜビューが必要か
      • ビューを作成する‐CREATE VIEW文
      • ビューを使うメリット
    • 4.3 不正なデータの混入を防ぐ制約
      • なぜ制約が必要か
      • NOT NULL制約
      • 主キー制約(プライマリーキー制約)と主キー
      • 一意制約(ユニーク制約)と一意キー
      • 外部キー制約(参照整合性制約)と外部キー
      • チェック制約
      • 複数の列に対して制約を指定する
    • 4.4 連番を振り出すシーケンス
      • なぜシーケンスが必要か
      • シーケンスを作成して連番を取得する
    • 4.5 セキュリティ機構の基礎となるユーザー機能
      • マルチテナント環境におけるユーザー
      • Oracleのユーザー機能の役割
      • ユーザーを作成する‐CREATE USER文
      • ユーザーを削除する‐DROP USER文
      • アカウントをロックする
      • パスワードを変更する
      • オブジェクト所有者としてのユーザー/スキーマ
    • 4.6 ユーザー権限を制御する
      • 権限システムの基礎
      • 権限を付与する/取り消す‐GRANT文/REVOKE文
      • 複数の権限をグループ化するロール
      • アプリケーション用ユーザーに付与すべき権限
      • 明示的に権限を付与しなくても実行できる操作
      • 権限を付与できる権限
    • 4.7 管理ユーザーSYS,SYSTEMと共通ユーザー
      • 管理ユーザー(SYSユーザー/SYSTEMユーザー)の権限
      • 共通ユーザー
  • 第5章 テーブル設計の基本を知る
    • 5.1 テーブル設計とは
      • テーブル設計の3つのステップ
      • テーブル設計の題材とする業務
    • 5.2 第1ステップ‐概念設計
      • テーブル候補を決める‐エンティティの抽出
      • 情報をテーブル候補に含める‐エンティティの属性の抽出
      • テーブル候補を図に表す‐概念E-R図の作成
    • 5.3 第2ステップ‐論理設計
      • 論理設計でやること
      • リレーショナルモデルの基本
      • 主キーを決める
      • くり返し項目を別テーブルに切り出す
      • 関連の多重度を明らかにする
      • 1対多関連を外部キーでモデル化する
      • 多対多関連を交差テーブルに変換する
      • 1対1関連を取り除く
      • 重複して存在する列を削除する
      • ほかの列から計算できる列を取り除く
      • 正規形のルールを破っていないかを確認する
      • 列に設定するデータ項目の特徴を整理する
      • 業務に必要なデータがデータベース化されているかチェックする
    • 5.4 第3ステップ ‐ 物理設計
      • Oracleがオブジェクトにストレージ領域を割り当てるしくみ
      • 物理名を決める
      • 列のデータ型,サイズを決める
      • 制約を決める
      • インデックスを付ける列を決める
      • テーブル,インデックスのサイズを見積もる
      • オブジェクトを格納する表領域を作成する
      • オブジェクトの所有ユーザーを作成する
      • 決定事項を設計書にまとめる
      • SQL(CREATE xxx文)を作成する
  • 第6章 データベース運用/管理のポイントを押さえる
    • 6.1 データベースにおける運用/管理の重要性
      • 適切な運用・管理がされないと問題が発生する
      • データを守る:バックアップ
      • データベースを調整する:メンテナンス
      • データベースが正常に動作しているか見る:監視
      • ネットワーク環境でデータベースを使用する:リモート接続
      • データベースのトラブルに対処する
    • 6.2 バックアップを取ってデータを守る
      • Oracleのバックアップ機能のしくみ
      • アーカイブログモードで運用する
      • アーカイブログモードへ変更する
      • RMANを使ってオンラインバックアップを取得する
      • オフラインバックアップを取得する
      • バックアップ取得で守るべき4つのポイント
      • バックアップ出力先を設定する
      • アーカイブREDOログファイルをバックアップする
      • 定期的にバックアップを取得するしくみをつくる
      • 古いバックアップを削除する
      • 障害からデータベースを復旧する
    • 6.3 データベースのメンテナンス
      • OracleがSQLを実行するしくみ
      • オプティマイザ統計情報を収集する
      • テーブルが断片化するまでの流れ
      • テーブルを再編成して断片化を解消する
      • Oracleを構成する初期化パラメータとは
      • 初期化パラメータの値を確認する
      • 初期化パラメータの値を変更する‐ALTER SYSTEM SET文
      • メモリ関連の初期化パラメータ
      • ‐MEMORY_TARGET,SGA_TARGET,PGA_AGGREGATE_TARGET
      • プロセス関連の初期化パラメータ‐PROCESSES
    • 6.4 データベースを監視する
      • データベース監視の4つの観点
      • OracleやOSの起動状態を監視する‐死活監視
      • OracleやOSのエラーを監視する
      • ストレージの空き状況を監視する
      • OSリソースの使用状況を監視する
      • Oracleのパフォーマンス情報を定期的に取得する
    • 6.5 ネットワーク環境/本番環境でOracleに接続する
      • ローカル接続とリモート接続
      • リモート接続の全体像とOracleクライアント
      • リスナーを構成する
      • リスナーを起動/停止する‐lsnrctlコマンド
      • サービス登録を構成する
      • クライアントマシンを構成する
      • クライアントのSQL*Plusからデータベースにリモート接続する
      • 簡易接続ネーミングメソッド(EZCONNECT)
      • アプリケーションとドライバ
    • 6.6 トラブルに立ち向かうためには
      • まず,なにが起きているのか確認する
      • ログを確認する
      • My Oracle Supportやインターネット検索を活用する
      • テクニカルサポートに迅速に支援を依頼できる準備をしておく
  • おわりに
  • 本記事は情報提供を目的にしています。情報には正確を期していますが、これを保証するものではありません。
  • 書籍に関する質問がある場合、技術評論社 書籍ページの「お問い合せ」から問い合わせてください。

プロフィール

On7tWW6m1Ul4

渡部 亮太

・Oracle ACE
・AWS Certified Solutions Architect - Associate
・ORACLE MASTER Platinum Oracle Database 11g, 12c 他多数

カテゴリー

アーカイブ