改訂第5版 PC UNIXユーザのためのPostgreSQL完全攻略ガイド
2006年3月4日紙版発売
石井達夫 著
B5変形判/520ページ
定価3,850円(本体3,500円+税10%)
ISBN 4-7741-2687-X
ただいま弊社在庫はございません。
書籍の概要
この本の概要
待望のシーラカンス本が8.1対応版になって登場しました。初心者からPostgreSQL管理者まで,すべてのユーザにお役立ちのPostgreSQLバイブルです。とくに第3章の内部構造,第5章の運用管理は必見です!
こんな方におすすめ
- データベース管理者
- Webアプリケーションプログラマ
- 商業データベースからの乗り換えを検討中の方
著者の一言
みなさまおなじみの「シーラカンス本」がPostgreSQLの最新版である8.1に対応して第5版となりました。PostgreSQL 8.1はミッションクリティカルな機能が充実し,基幹業務でも十分使えるデータベースに仕上がっています。また性能の向上が著しく,7.4や8.0と比べると,ときには同じハードで倍近い性能向上があります。
本書を活用し,ぜひとも進化するオープンソースデータベースの「すごさ」を感じていただければと思います。
目次
Chapter1 PostgreSQLとは
- 1.1 PostgreSQLとは
- 1.1.1 データベースとは
- 1.1.2 オープンソースデータベースPostgreSQL
- 1.2 PostgreSQLの歴史
- 1.2.1 ingres
- 1.2.2 Postgres
- 1.2.3 Postgres95
- 1.2.4 PostgreSQLの誕生
- 1.2.5 日本語対応と国際化
- 1.2.6 PostgreSQL クロニクル
- 1.3 PostgreSQLの特徴
- 1.3.1 SQLのサポート
- 1.3.2 無償利用&ソースコードの公開
- 1.3.3 数多くのプラットフォームで稼動
- 1.3.4 多彩なプログラミングインターフェースをサポート
- 1.3.5 クライアント/サーバアーキテクチャ
- 1.3.6 日本語化&国際化対応(マルチバイトサポート)
- 1.3.7 ユーザ定義関数
- 1.3.8 ユーザ定義データ型
- 1.3.9 リレーショナルデータモデルを超えるオブジェクト指向機能
- 1.3.10 大規模ハードウェアのサポート
- 1.3.11 PostgreSQLが扱うことのできる各種上限値
Chapter2 インストールの前に
- 2.1 インストール前に
- 2.1.1 ドキュメント
- 2.2 インストールのための準備
- 2.2.1 ソースの入手方法
- 2.2.2 必要なツール類
- 2.3 コンパイルとインストール
- 2.3.1 必要なディスク容量
- 2.3.2 インストールのステップ
- 2.3.3 専用アカウント作成などの準備
- 2.3.4 ソースの展開
- 2.3.5 いよいよコンパイル
- 2.4 環境設定
- 2.4.1 コマンドサーチパス
- 2.4.2 環境変数
- 2.5 初期設定
- 2.5.1 データベースの初期化
- 2.5.2 postmasterの起動
- 2.5.3 postmasterの終了
- 2.5.4 postmasterの再起動
- 2.5.5 Postgresql.confの再読み込み
- 2.5.6 Postmasterの起動状態の確認
- 2.5.7 regression test
- 2.5.8 postmasterの自動起動
- 2.6 ユーザ登録&ユーザDB作成
- 2.6.1 ユーザ登録
- 2.6.2 データベースの作成
- 2.7 基本的な使い方
- 2.7.1 psql
- 2.7.2 テーブルの作成
- 2.7.3 データ登録
- 2.7.4 データの表示
- 2.7.5 UPDATE
- 2.7.6 DELETE
- 2.7.7 DROP TABLE
- 2.7.8 COPY
- 2.7.9 psqlのヘルプ機能
- 2.7.10 バックスラッシュコマンド
- 2.7.11 psqlの起動オプション
- 2.7.12 本章のまとめ
Chapter3 PostgreSQLのプロセス&モジュール構造
- 3.1 PostgreSQLのプロセス&モジュール構造
- 3.1.1 PostgreSQLの利用形態
- 3.1.2 PostgreSQLの構造
- 3.1.3 PostgreSQLのデータ構造
- 3.2 PostgreSQLのソースツリー
- 3.3 PostgreSQLの問い合わせ言語 ●その1:予約語
- 3.4 PostgreSQLの問い合わせ言語 ●その2:データ型
- 3.4.1 概要
- 3.4.2 数値データ型
- 3.4.3 文字列データ型
- 3.4.4 日付データ型
- 3.4.5 バイナリデータ型
- 3.4.6 その他のデータ型
- 3.4.7 その他の関数
- 3.4.8 配列
- 3.4.9 複合データ型
- 3.4.10 ラージオブジェクト
- 3.5 PostgreSQLの問い合わせ言語 ●その3:テーブルの定義
- 3.5.1 スキーマ
- 3.5.2 制約
- 3.5.3 デフォルト値
- 3.5.4 シーケンスとシリアル型
- 3.5.5 ドメイン
- 3.5.6 一時テーブル
- 3.5.7 CREATE TABLE AS
- 3.5.8 ALTER TABLE
- 3.5.9 テーブルスペース
- 3.6 PostgreSQLの問い合わせ言語 ●その4:ビューとルール
- 3.6.1 ビュー
- 3.6.2 ビューの有用性
- 3.6.3 PostgreSQLのビューの制限
- 3.6.4 ルール
- 3.6.5 更新可能なビュー
- 3.6.6 ルールの利用例
- 3.7 PostgreSQLの問い合わせ言語 ●その5:SELECT
- 3.7.1 相関名
- 3.7.2 DESTINCT
- 3.7.3 SELECT...INTO
- 3.7.4 GROUP BYとHAVING
- 3.7.5 ORDER BY
- 3.7.6 CASE
- 3.7.7 NULLIF
- 3.7.8 COALESCE
- 3.7.9 行値コンストラクタ
- 3.7.10 サブクエリー
- 3.7.11 ALL/ANY/SOME
- 3.7.12 UNION
- 3.7.13 INTERSECT/EXPECT
- 3.7.14 結合(JOIN)
- 3.7.15 カーソル
- 3.7.16 PREPAREとEXECUTE
- 3.8 PostgreSQLの問い合わせ言語 ●その6:ユーザ定義関数
- 3.8.1 はじめに
- 3.8.2 CREATE FUNCTION
- 3.8.3 SQL関数
- 3.8.4 PL/pgSQL関数
- 3.9 PostgreSQLの問い合わせ言語 ●その7:インデックス
- 3.9.1 インデックスとは
- 3.9.2 CREATE INDEX文/DROP INDEX文
- 3.9.3 VACUUM
- 3.9.4 関数インデックス
- 3.9.5 式インデックス
- 3.9.6 マルチカラムインデックス
- 3.9.7 部分インデックス
- 3.9.8 インデックスとCLUSTERコマンド
- 3.9.9 テーブルスペースとインデックス
- 3.10 PostgreSQLの問い合わせ言語 ●その8:トリガ
- 3.10.1 トリガの定義
- 3.10.2 トリガ用関数の定義
- 3.11 PostgreSQLの問い合わせ言語 ●その9:トランザクション
- 3.11.1 トランザクションとは
- 3.11.2 トランザクションの開始/終了
- 3.11.3 トランザクションの特性
- 3.11.4 トランザクションの利用例
- 3.11.5 トランザクションの分離レベル
- 3.11.6 MVCC
- 3.11.7 トランザクションの同時実行制御
- 3.11.8 ロックモード
- 3.11.9 デッドロック
- 3.11.10 一時テーブルとトランザクション
- 3.11.11 2相コミット
- 3.12 PostgreSQLの問い合わせ言語 ●その10:参照整合性制約
- 3.12.1 外部キー
- 3.12.2 参照整合性制約
- 3.12.3 参照操作
- 3.12.4 NULLの扱いとMATCHオプション
- 3.12.5 参照整合性チェックの遅延
- 3.12.6 参照整合性制約の追加/削除
- 3.12.7 まとめ
- 3.13 PostgreSQLの問い合わせ言語 ●その11:インフォメーションスキーマ
- 3.13.1 インフォメーションスキーマとは
- 3.13.2 PostgreSQLにおけるインフォメーションスキーマ
- 3.13.3 インフォメーションスキーマで使われるデータ型
- 3.13.4 インフォメーションスキーマの構成要素
Chapter4 アプリケーションを作成する
- 4.1 アプリケーション作成の前に
- 4.1.1 アプリケーションの概要
- 4.1.2 テーブル定義について
- 4.1.3 データのPostgreSQLへの取り組み
- 4.1.4 名刺管理アプリケーションの使い方
- 4.1.5 注意事項
- 4.2 PHPインターフェースを使って
- 4.2.1 PHPとは
- 4.2.2 PEARとは
- 4.2.3 Smartyとは
- 4.2.4 PHPなどの導入
- 4.2.5 アプリケーションの導入
- 4.2.6 アプリケーションの起動
- 4.2.7 ソースコードの解説
- 4.2.8 ドキュメントについて
- 4.3 Pealインターフェースを使って
- 4.3.1 PostgreSQLとPeal
- 4.3.2 DBD-Pgとは
- 4.3.3 DBIとDBD-Pgの導入
- 4.3.4 CGIとTemplate
- 4.3.5 アプリケーションの導入
- 4.3.6 アプリケーションの起動
- 4.3.7 ソースコードの解説
- 4.3.8 ドキュメントについて
Chapter5 PostgreSQLの運用と管理
- 5.1 PostgreSQLの管理とは
- 5.2 セキュリティ管理
- 5.2.1 PHPとは
- 5.2.2 ユーザ単位の認証
- 5.2.3 ロール
- 5.2.4 GRANTによるアクセス制限の付与
- 5.2.5 REVOKEによるアクセス制限の剥奪
- 5.2.6 アクセス制限の確認
- 5.2.7 SSLによる通信経路の暗号化
- 5.3 ログ管理
- 5.3.1 postgresql.confの設定
- 5.3.2 ケーススタディ
- 5.4 バックアップとリストア
- 5.4.1 データベースのバックアップ
- 5.4.2 バックアップの方法
- 5.4.3 バックアップの実際〜pg_dumpとpg_dumpall
- 5.4.4 ポイント・イン・タイム・リカバリの利用
- 5.5 VACUUM
- 5.5.1 VACUUMによる不要領域の再利用
- 5.5.2 トランザクションカウンタのオーバーフローへの対処
- 5.5.3 VACUUM FULL
- 5.5.4 自動VACUUM
- 5.6 パフォーマンスチューニング
- 5.6.1 メモリ資源
- 5.6.2 大規模ユーザ数への対応
- 5.6.3 WAL
- 5.6.4 EXPLAINコマンドを理解する
- 5.6.5 VACUUMによる統計情報の更新
- 5.6.6 クエリーの書き方における注意事項
- 5.6.7 SMPの効果
- 5.6.8 テーブルスペースの利用
- 5.6.9 CEの利用
- 5.7 データベース監視
- 5.7.1 統計情報収集器
- 5.7.2 ロックの監視
- 5.8 データベースのサイズ情報
- 5.8.1 データベース単位でのディスク使用量の調査
- 5.8.2 テーブル単位でのディスク使用量の調査
- 5.8.3 デーブルスペース単位でのディスク使用量の調査
- 5.8.4 そのほかのデータベースオブジェクト
- 5.9 レプリケーションの利用
- 5.9.1 pgpoolの仕組み
- 5.9.2 pgpoolの主な機能
- 5.9.3 pgpoolのライセンス
- 5.9.4 pgpoolのサポート
- 5.9.5 pgpoolの動作環境
- 5.9.6 pgpoolのインストール
- 5.9.7 pgpoolの設定
- 5.9.8 pgpoolの利用上の注意
- 5.9.9 ヘルスチェック
- 5.9.10 pgpoolを使った構成例
- 5.9.11 pgpoolの設定項目詳細
- 5.9.12 他のレプリケーションソフト
この本に関連する書籍
-
改訂版 今すぐ導入! PHP×PostgreSQLで作る最強Webシステム
2003年発行「今すぐ導入! PHP×PostgreSQLで作る最強Webシステム」の改訂版です。オープンソースを使ったWeb+データベースアプリケーションで標準的に採用されているPHP...
-
[改訂版]PHPポケットリファレンス
本書は,膨大なPHPのコマンド群を,「〜したい」などといった目的によって引いて調べることができます。もちろんコマンド名から引くことも可能。知りたいことを,その場...
-
絶対合格! PostgreSQL CE認定試験【Silver】
PostgreSQLの導入事例が増えるにつれ,技術者不足という問題がクローズアップされてきました。そこで,PostgreSQLの普及を早くから図ってきたSRAでは2004年10月より「Po...