Oracle使いへの王道(山田 精一)|翔泳社の本
  1. ホーム >
  2. 書籍 >
  3. Oracle使いへの王道

Oracle使いへの王道


形式:
書籍
発売日:
ISBN:
9784798103457
定価:
3,080(本体2,800円+税10%)
仕様:
A5・416ページ

Oracleって何?でも大丈夫!DB入門者必読!!

本書は、代表的なデータベースである「Oracle」の入門書です。筆者である山田精一氏の豊富な経験を生かして、Oracleデータベースについて基礎からじっくり解説していきます。操作の手順を示すほかにも、「なぜそうなるのか」「どうしてそうするのか」という理論的な側面を説明し、データベースの仕組みを理解できます。また、Oracleの各国語対応機能やデータの入出力、バックアップ&リカバリなど、現場で役立つ知識を解説しています。本書を読めば、Oracleを自分で運用し、さまざまな問題に自力で対処できる「Oracle使い」への道がきっと開けるでしょう。DBA(データベース管理者)を目指す方のための必携書です。

本書は月刊DB Magazineの人気連載「Oracle使いへの道」を加筆/再編集し、書籍としてまとめたものです。

第1章 なぜデータベースは必要なのか

「データベースうを使いたい」と思ってもらうには
筆者の経験
DBMSがもたらすバラ色(?)の未来
データベースとデータベース管理システム
RDBMSを選択する
Oracleの使用形態

第2章 トランザクションと同時実行制御を理解する

SQL*Plusの使用方法
トランザクション管理の基本
複数ユーザー間のデータの見え方
読み取り一貫性とは
トランザクションレベルの読み取り一貫性
本書のまとめ

第3章 同時実行制御とロック

同時実行制御の考え方
データをロックする
自動ロックを理解する
手動ロックを理解する
デッドロックを理解する
本書のまとめ

第4章 アプリケーションの排他制御

前章までのおさらい
自動ロックだけではダメな理由
マルチユーザーアプリケーションのロック戦略
ロック戦略をOracleに適用する
データの挿入に失敗しない方法
Accessの仕組みを解剖する
排他制御の仕組みを解析する
本書のまとめ

第5章 データベースの構造を知る

データベースの意味は広い
RDBMSによる違い
ファイルを分割する理由
データベースを見てみよう
データベースの作成は難しい?
データベースの作成方法
データベース作成のプランニング
データベースを作成する
作成したデータベースを確認する
データベース作成スクリプトを解剖する
本書のまとめ

第6章 Oracleにおける領域管理

表領域とは
領域管理の仕組みを理解する
表領域を作成する
表領域を拡張する
表領域を削除する
本章のまとめ

第7章 Oracle Net Servicesをマスターする

Oracle Net Servicesの役割とアーキテクチャ
Oracle Net Services設定の基礎知識
Oracle Net Servicesを設定する
Oracle Netの構成ファイルを高度に理解する
Oracleのネットワークセキュリティ

第8章 国際化機能を理解する

国際化とは
国際化されていないソフトウェアの問題
Oracleの国際化機能
文字コードの基礎
キャラクタセットの選択
コード変換を理解する
NLSパラメータについて
Character Set Scannerの利用
本書のまとめ

第9章 データベースの起動と停止

起動と停止の権限
データベースを起動する/停止する
起動と停止に関する便利な知識
Windowsのサービスを理解する
本書のまとめ

第10章 データベースの初期化パラメータ

Windowsの自動起動を設定する
UNIX/Linuxで自動起動を設定する
パラメータファイルを極める
本書のまとめ

第11章 ExportとImport

ExportとImportとは
Export/Import実行の基本
Exportを使ってみる
Importを使ってみる
Export/Import使いになる
ExportとImportの相互運用性
本章のまとめ

第12章 Oracleの内部構造を理解する

Oracleのメモリとプロセス
Oracleの動きを理解する
REDOログの仕組みを理解する
UNDOセグメントの仕組みを理解する
アーカイブモードを変更する
本章のまとめ

第13章 バックアップとリカバリの基本

バックアップの基本
バックアップの計画
ハードウェアの重要性
商用バックアップソフトとの連携
本章のまとめ

第14章 OSコマンドによるバックアップ&リカバリ

OSコマンドを利用したコールドバックアップ
Oracle全体のバックアップ
OSコマンドを利用したオンラインバックアップ
オンラインバックアップを実行する
オンラインバックアップからのリカバリ
本章のまとめ

第15章 RMAN(Recovery Manager)のすすめ

Recovery Managerとは
RMANの使用環境を構築する
RMANを使ってみる
RMANによるリカバリ
本章のまとめ

第16章 RMANを使いこなす

RMANをさらに理解する
増分バックアップの種類
RMANによる増分バックアップ
RMANによるコールドバックアップ
Oracle9i Databaseでの新機能
本章のまとめ

コラム

RDBとRDBMS
Net Servicesとは
推薦図書
コミットするタイミングを考える
AccessからOracleのテーブルをリンクする
「物理的」と「論理的」
ASMについて
PSRについて
Oracle9iの機能拡張
Oracle Database 10gの機能拡張
データファイルサイズの最大値
キャラクタセットを変更できる場合
外字について
推薦図書
再インストールをしないでグループを変更する方法
PFILE行をコメントアウトする理由
ランレベルと起動スクリプト
Oracle9i Database R1では
Oracle Data Pumpとは
Oracle Enterprise ManagerからのExport/Importの実行
バックグラウンドプロセスとSGA
SCNとは
REDOという名前の理由
同期書き込みと遅延書き込み
非同期I/Oとは
リカバリとリストア
推薦図書
パラメータファイルの復元
不要なファイルを削除する
ディザスタリカバリとは
OCOPYについて
テキスト形式でバックアップした制御ファイル
switch logfileとarchive log currentの違い
リカバリカタログを使うべきかどうか
BACKUP...PLUS ARCHIVELOGについて

本書は付属データの提供はございません。

お問い合わせ

内容についてのお問い合わせは、正誤表、追加情報をご確認後に、お送りいただくようお願いいたします。

正誤表、追加情報に掲載されていない書籍内容へのお問い合わせや
その他書籍に関するお問い合わせは、書籍のお問い合わせフォームからお送りください。

利用許諾に関するお問い合わせ

本書の書影(表紙画像)をご利用になりたい場合は書影許諾申請フォームから申請をお願いいたします。
書影(表紙画像)以外のご利用については、こちらからお問い合わせください。

追加情報はありません。

ご購入いただいた書籍の種類を選択してください。

書籍の刷数を選択してください。

刷数は奥付(書籍の最終ページ)に記載されています。

現在表示されている正誤表の対象書籍

書籍の種類:

書籍の刷数:

本書に誤りまたは不十分な記述がありました。下記のとおり訂正し、お詫び申し上げます。

対象の書籍は正誤表がありません。

最終更新日:2006年02月16日
発生刷 ページ数 書籍改訂刷 電子書籍訂正 内容 登録日
1刷 269
表2
2刷
LOG ログファイルを指定します。指定しないとログファイルは保存されません。パラメータファイルを指定します。
PARAFILE 行データをインポートするかどうかを指定します。デフォルトはYです。
ROWS Yを指定すると、Exportファイルの内容が画面に表示されます。インポートは実行されません。
SHOW Exportファイルの中身を確認したいときや、Exportフィルからデータ定義文を抽出するときに使用します。

LOG ログファイルを指定します。指定しないとログファイルは保存されません。
PARAFILE パラメータファイルを指定します。
ROWS 行データをインポートするかどうかを指定します。デフォルトはYです。
SHOW Yを指定すると、Exportファイルの内容が画面に表示されます。インポートは実行されません。Exportファイルの中身を確認したいときや、Exportフィルからデータ定義文を抽出するときに使用します。
2004.12.11
1刷 352
図7、図8
2刷
352ページの画面7「アラートファイルの内容」の図と、 353ページの画面8「データベースライタのトレースファイルの内容」の図が逆
352ページの画面7の図と、353ページの画面8の図を入れ替える
2006.02.16
1刷 374
上から8行目
2刷
①カタログデータベース上、
①ターゲットデータベース上、
2004.12.14
1刷 375
上から10行目
2刷
①カタログデータベース上、
①ターゲットデータベース上、
2004.12.14
1刷 378
下から10行目
2刷
①カタログデータベース上、
①ターゲットデータベース上、
2004.12.14
2刷 086
7行目

10gの変更点 ORA_ROWSCN疑似列編

 ORA_ROWSCNは、表の各行について、最後に変更したときのSCNを参照できる疑似列です(擬似列とは表定義時に指定しなくても、列のように参照できる列のことです)。このORA_ROWSCNを使用すると、行データを最後に変更したSCNを参照できるので、行データの変更を簡単に判断できます。  ただしOracleは、ブロック単位でSCNを管理するので、同じブロックに含まれるほかの行が更新された場合でも変更されます。それでも排他制御の実装には利用できますが、更新の競合が多いシステムでは無駄が多くなってしまいます。1行あたり6バイト増えてしまいますが、表作成時にROWDEPENDENCIESオプションを指定すれば、完全に行レベルでORA_ROWSCNを管理できます。またSCN_TO_TIMESTAMP関数を使用すれば、ORA_ROWSCNを日時に変更できます。  実際にどのような動作をするものなのか説明します。 1. サンプルの表を作成します。 create table test(col1 number(10)); insert into test values(1); insert into test values(2); commit; 2. ORA_ROWSCNを含めて選択します。 SQL>select col1, ora_rowscn from test; COL1 ORA_ROWSCN ---------- ---------- 1 1471292 2 1471292 3. 1行だけを更新してから選択します。変更した行は、コミットしていないのでORA_ROWSCNはブランクになります。 SQL> update test set col1=10 where col1=1; SQL> select col1, ora_rowscn from test; COL1 ORA_ROWSCN ---------- ---------- 10 2 1471292 4.コミットすると新しいSCNがセットされていることがわかります。ただし、この2つの行は同一ブロックに格納されているため、ORA_ROWSCNは2行とも変わっています。 SQL> commit; SQL> select col1, ora_rowscn from test; COL1 ORA_ROWSCN ---------- ---------- 10 1471336 2 1471336 5.こんどはrowdependenciesを付けて表を作成します。 create table test2(col1 number(10)) rowdependencies; insert into test2 values(1); insert into test2 values(2); commit; 6. 同様に選択します。 SQL> select col1, ora_rowscn from test2; COL1 ORA_ROWSCN ---------- ---------- 1 1471421 2 1471421 7. 同様に1行だけ更新します。 SQL> update test2 set col1=10 where col1=1; SQL> select col1, ora_rowscn from test2; COL1 ORA_ROWSCN ---------- ---------- 10 2 1471421 8. コミットすると、今回は変更した行だけORA_ROWSCNが変わっています。 SQL> commit; SQL> select col1, ora_rowscn from test2; COL1 ORA_ROWSCN ---------- ---------- 10 1471472 2 1471421 9.SCN_TO_TIMESTAMP関数を使用すれば、ORA_ROWSCNを時間に変更できます。 SQL> SELECT SCN_TO_TIMESTAMP(ORA_ROWSCN) FROM test2; SCN_TO_TIMESTAMP(ORA_ROWSCN) ---------------------------------------------------- 05-01-14 15:41:54.000000000 05-01-14 15:40:34.000000000

補足として追加
2005.11.17
2刷 313
6行目
10gでは、この作業は不要です。詳細は正誤表P316をご覧ください。

補足として追加
2005.11.17
2刷 314
3行目
3刷
またlog_archive_destとは書式が異なり「log_archive_dest_n='location=ディレクトリ名'」のように設定します。

「先を複数指定できます。」の直後に追加
2005.11.17
2刷 316
8行目

10gの変更点 アーカイブモード編

Oracle Database 10gでは、アーカイブモードに関して重要な変更がいくつかあります。その中でも重要なものを紹介します。 1.アーカイブモードの表示  archive log listコマンドでは、正しくARCHIVELOGモードを表示できないことがあります。次のようにv$databaseを参照してください。 SQL> select log_mode from v$database; LOG_MODE ------------ ARCHIVELOG  表示の意味は次のとおりです。 自動ARCHIVELOGモード:ARCHIVELOG 手動ARCHIVELOGモード:MANUAL NOARCHIVELOGモード:NOARCHIVELOG 2. log_archive_startパラメータの廃止  log_archive_startパラメータは非推奨のパラメータになりました。10gでは、ARCHIVELOGモードに変更すると、自動的にアーカイブするようになっています(log_archive_start=trueの動作と同じ)。このパラメータを設定してデータベースを起動すると次のエラーメッセージが表示されます。 ORA-32004: obsolete and/or deprecated parameter(s) specified 3. アーカイブ先について  フラッシュリカバリ機能が有効になっている場合、つまりdb_recovery_file_destとdb_recovery_file_dest_sizeパラメータが設定されているとき、アーカイブ先はdb_recovery_file_destパラメータで指定するディレクトリになります。例えばdb_recovery_file_dest='c:\oracle\flash_recovery_area'の場合、アーカイブREDOログはc:\oracle\flash_recovery_area\\ARCHIVELOGに出力されます。このときarchive log listコマンドを実行すると、次のようにUSE_DB_RECOVERY_FILE_DESTと表示されます。 SQL> archive log list データベース・ログ・モード アーカイブ・モード 自動アーカイブ 使用可能 アーカイブ先 USE_DB_RECOVERY_FILE_DEST 最も古いオンライン・ログ順序 19 アーカイブする次のログ順序 21 現行のログ順序 21  このとき注意点があります。db_recovery_file_destパラメータを指定しているとき、同時にlog_archive_destパラメータは指定できません。指定した場合データベースが起動できなくなります。どうしてもlog_archive_destパラメータを使用するときには、db_recovery_file_destパラメータを設定しないでください。  db_recovery_file_destパラメータと同時に使用できるのはlog_archive_dest_nパラメータです。Enterprise Editionをご使用の場合で、アーカイブの二重化などを行いたいときは次のようにパラメータを設定してください。 log_archive_dest_n='location=ディレクトリ名'

補足として追加
2005.11.17
2刷 383
末尾
 また10gでは、フラッシュ・リカバリ領域が導入され、さらにRMANが使いやすくなっています。フラッシュ・リカバリに関する詳細は製品マニュアルの「バックアップおよびリカバリ基礎」などをご覧ください。

補足として追加
2005.11.17

感想・レビュー

ネムリン さん

2009-01-29

随分前に1回読んでいたけど、国際化と10gのことについて調べるために再読したら以前より理解が早くて自分の成長を感じられたことがうれしい。また、前に読んだ時には素通りしていたタメになるTipsが多く含まれていることに今さら気づかされ著者の技術者としての力量を改めて凄いと感じました。

just-older さん

2012-01-05

Oracleのいろはを教えてくれるすばらしい本。手元において何度も参照すべき本でした。買おうかなぁ。。

aji さん

2019-07-10

Oracle9i のコマンドについても説明があり、使える。