MySQL運用・管理"実践"入門―安全かつ高速にデータを扱う内部構造・動作原理を学ぶ [単行本]
    • MySQL運用・管理"実践"入門―安全かつ高速にデータを扱う内部構造・動作原理を学ぶ [単行本]

    • ¥3,08093 ゴールドポイント(3%還元)
    • 在庫あり2025年8月5日火曜日までヨドバシエクストリームサービス便(無料)がお届け
100000009003832835

MySQL運用・管理"実践"入門―安全かつ高速にデータを扱う内部構造・動作原理を学ぶ [単行本]

yoku0825(著)北川 健太郎(著)tom_bo(著)坂井 恵(著)


ゴールドポイントカード・プラスのクレジット決済で「書籍」を購入すると合計12%ゴールドポイント還元!合計12%還元書籍の購入はゴールドポイントカード・プラスのクレジット決済がお得です。
通常3%ゴールドポイント還元のところ、後日付与されるクレジット決済ポイント(1%)と特典ポイント(6%)、さらにご利用明細WEBチェックにご登録いただくと2%追加して合計12%ゴールドポイント還元!詳しくはこちら

価格:¥3,080(税込)
ゴールドポイント:93 ゴールドポイント(3%還元)(¥93相当)
フォーマット:
お届け日:在庫あり今すぐのご注文で、2025年8月5日火曜日までヨドバシエクストリームサービス便(無料)がお届けします。届け先変更]詳しくはこちら
出版社:技術評論社
販売開始日: 2024/05/22
お取り扱い: のお取り扱い商品です。
ご確認事項:返品不可

カテゴリランキング

店舗受け取りが可能です
マルチメディアAkibaマルチメディア梅田マルチメディア博多にて24時間営業時間外でもお受け取りいただけるようになりました

MySQL運用・管理"実践"入門―安全かつ高速にデータを扱う内部構造・動作原理を学ぶ の 商品概要

  • 要旨(「BOOK」データベースより)

    正規化プロセス、CRUDを支える仕組み、オプティマイザの考え方など、「どのように動いているのか」をふまえて解説!
  • 目次


    【凡例】
    # 節見出し
    ## 項見出し
    ### 小見出し
    #### コラム


    第1章 運用を始める第一歩
    # 1-1 MySQLの基礎知識
    ## ざっと見るMySQLの歴史
    ## MySQLのバージョン
    ## 動作環境
    ## インストール方法の種類
    ## MySQL利用時の構成
    ## ストレージエンジン・アーキテクチャ
    ## コマンドラインクライアント
    #### コラム1 マネージドとアンマネージドのMySQL

    # 1-2 MySQLサーバーの起動、停止方法
    ## パッケージを使った場合のMySQLの起動、停止
    ## バイナリ版を使用する場合のMySQLの起動、停止
    ### 1.init.dを使用する場合
    ### 2.mysqld_safeを使用する場合
    ## プロセス確認による稼働状態の確認
    ## killによるMySQLサーバーの停止
    ### kill -15
    ### kill -6
    ### kill -9

    # 1-3 設定ファイル my.cnf
    ## 設定ファイルmy.cnfの基本
    ## my.cnfの読み込み順序
    ## 設定ファイル以外での設定の変更方法

    # 1-4 MySQLサーバーの稼働状況、設定状態の確認
    ## statusコマンド
    ## SHOW命令
    ### SHOW STATUS
    ### SHOW VARIABLES
    ### SHOW ENGINE INNODB STATUS
    ### その他のSHOW命令
    ## 情報スキーマ
    ### information_schema
    ### performance_schema
    ### sys schema

    第2章 ユーザー作成、管理
    # 2-1 MySQLアカウントの原則
    ## 用語の整理
    ## 権限の評価順序
    ## 接続元ホストの評価
    ## これらの原則から導かれること
    # 2-2 認証プラグイン
    #### コラム2 認証文字列の保管方法
    #### コラム3 caching_sha2_passwordが「初回のみセキュアな経路を必要とする」理由

    # 2-3 権限操作
    ## アカウント管理ステートメントの一覧
    ### GRANTで指定するスコープ
    ### GRANTでよく使う権限と組み合わせ
    ### ALTER USERによるアカウントの「属性」
    ## ACL_cacheとACL_table

    # 2-4 アカウント、権限の応用Tips
    ## 最小権限の原則と運用
    ### 重要な情報は別のスキーマに分離する
    ### アプリケーションサイドで暗号化する
    ### カラムスコープの権限を設定する
    ### 重要なカラムをDEFINERで隔離する
    ## 接続元ホストを大きく取るか、小さく取るか
    ### 接続元ホストをネットワークセグメントで指定する
    ### 接続元をMySQLで制限せず、ネットワークを分離する
    ## パスワードの変更
    ### デュアルパスワード設定
    ### 別アカウントを作成することによる結果的なローテーション
    ## 権限システムを応用したクォータの設定

    第3章 MySQLのデータ
    # 3-1 論理的なデータ
    ## 論理的なデータとは
    ### 名前空間と修飾
    ### インデックス
    ### ストレージエンジン
    ## データ型
    ### 文字列型のデータに関する注意事項
    ## 制約
    ## 正規化
    ### 正規化の前提
    ### 第1正規形
    #### コラム4 Eメールアドレスは分割可能か不可能か
    ### 第2正規形
    ### 第3正規形

    # 3-2 物理的なデータ
    ## 物理的なデータとは
    ### 論理的なデータと紐づくデータファイル
    ### 論理的なデータに紐づかないデータファイル.
    ### ibdファイル内部のデータ構造
    ## InnoDBとCRUD操作
    ### Create(INSERT)
    ### Read(SELECT)
    ### Update(UPDATE)
    ### Delete(DELETE)
    ## CRUDを支える仕組み
    ### ページクリーナー
    ### パージスレッド
    ### クラッシュリカバリ
    ### チェックポイント/ファジーチェックポイント
    ### ダブルライトバッファ
    ### チェンジバッファ
    ### 書き込み速度を上げる危険なパラメータ
    ## テンポラリテーブルに関するデータ
    ### ユーザー定義のテンポラリテーブル
    ### 内部テンポラリテーブル

    # 3-3 ログファイル
    ## エラーログ
    ## スローログ
    ## ジェネラルログ
    ## トレースログ

    # 3-4 それ以外の論理オブジェクト
    ## 論理オブジェクトに特有の概念
    ## 運用上の論理オブジェクトの欠点
    ## マテリアライズドビューを考える

    第4章 ロックとクエリ実行計画
    # 4-1 MySQLのロック
    ## InnoDBレイヤでのロック
    ### トランザクション分離レベル
    ### トランザクション分離レベルとロッ
    ## メタデータロック
    ## その他のロック
    ## デッドロック
    ### デッドロック検出の表示
    #### コラム5 本物のデッドロック
    ## ロックの観測

    # 4-2 クエリ実行計画
    ## インデックスアクセスとテーブルアクセス
    ## オプティマイザの気持ちになる
    #### コラム6 filteredの表示
    ## EXPLAINを読み解く
    ### 単一テーブルのWHERE句のないGROUP BY
    ### 単一テーブルのWHERE句およびGROUP BY
    ### 単一テーブルのORDER BY LIMIT最適化
    ### 単一テーブルのGROUP BYと集計結果カラムのHAVING、ORDER BY
    ### シンプルな2テーブルJOIN
    ### 2テーブルJOIN + WHERE + ORDER BY LIMIT最適化(同テーブル)
    ### 2テーブルJOIN + ORDER BY LIMIT最適化(別テーブル)
    ### ベーステーブル + FROM句のサブクエリ(1)
    ### ベーステーブル + FROM句のサブクエリ(2)
    ### ベーステーブル + WHERE句のサブクエリ
    #### コラム7 インデックスマージ最適化
    ### EXPLAIN SELECT ..以外のEXPLAIN
    ## 実行計画とロックの関連

    第5章 レプリケーション
    # 5-1 レプリケーションの目的
    ## 読み取り専用
    ## バッチ処理/分析
    ## バックアップ
    ## 複数のMySQLを集約
    ## アップグレード
    ## シャーディング構成の準備
    ## フェイルオーバー

    # 5-2 レプリケーションのアーキテクチャー
    ## シングルスレッド方式
    ### バイナリログ
    ### バイナリログダンプスレッド
    ### レプリケーションレシーバーI/Oスレッド(I/Oスレッド)
    ### リレーログ
    ### レプリケーションSQLアプライヤースレッド(SQLスレッド)
    ## MTA方式
    ## バイナリログの形式
    ### STATEMENT
    ### MIXED
    ### ROW
    ## ポジションとGTID
    ### ポジションレプリケーション
    ### GTIDレプリケーション
    ## 応用アーキテクチャー
    ### MTA方式
    ### カスケードレプリケーション
    ### マルチソースレプリケーション
    ### 循環レプリケーション
    ## レプリケーション遅延
    ### 同時実行性の高いトラフィック
    ### 一度に大量の行を更新するトランザクション
    ### 行ベースレプリケーションの特性による遅延
    ### レプリケーション遅延の確認方法

    # 5-3 レプリケーションの構築
    ## 設定の確認(ソース)
    ## ユーザーアカウントの作成(ソース)
    ## フルバックアップの取得(ソース)
    ## リストア(レプリカ)
    ## レプリケーションの設定(レプリカ)
    ### ポジションレプリケーションの場合
    ### GTIDレプリケーションの場合
    ## レプリケーションの開始(レプリカ)
    ## レプリケーションの状態確認(レプリカ)
    ## 読み取り専用に設定(レプリカ)
    ## レプリケーションの一時停止(レプリカ)
    ## レプリケーションのリセット(レプリカ)

    # 5-4 レプリケーションとクラッシュ耐性
    ## ソースダウン
    ### sync_binlog=0
    ### sync_binlog=1
    ### sync_binlog=0または1以外
    ### ソースダウンとフェイルオーバー
    ## レプリカダウン
    ### ポジションレプリケーションの場合
    ### GTIDレプリケーションの場合
    ## 準同期レプリケーション
    ### 設定
    ### オプション
    ### 運用における注意点

    # 5-5 レプリケーションとマイグレーション
    ## 構成の確認
    ## MySQL 8.0のMySQLサーバーを用意
    ## オプション値の確認
    ## ユーザーアカウントの作成
    ## データのコピー
    ## レプリケーションの構築
    ## 切り替え前の確認
    ### 移行元と移行先のデータベースオブジェクトの比較
    ### 移行元と移行先のデータの比較
    ### 移行元と移行先のクエリの性能確認
    ## 切り替え
    ### 移行元を読み取り専用にする
    ### 移行元と移行先のデータの状態を確認する
    ### 移行先のレプリケーションを停止する
    ### Webアプリケーションの接続先を変更する
    ### 移行先の書き込みを許可する
    #### コラム8 バックワードレプリケーション

    第6章 バックアップとリストア
    # 6-1 バックアップの種類と方法
    ## 論理バックアップと物理バックアップ
    ## オンラインバックアップとオフラインバックアップ
    ## フルバックアップ、差分バックアップと増分バックアップ
    ## MySQLサーバーのバックアップ方法

    # 6-2 論理バックアップのフルバックアップとリストア
    ## mysqldump
    ### フルバックアップ
    ### リストア
    ## mysqlpump
    ## MyDumper
    ### インストール
    ### フルバックアップ
    ### リストア
    ## MySQLShellダンプロードユーティリティ
    ### フルバックアップ
    ### リストア.

    # 6-3 物理バックアップのフルバックアップとリストア
    ## MySQLサーバーの物理ファイルをコピー
    ### フルバックアップ
    ### リストア
    ## Percona XtraBackup
    ### インストール
    ### フルバックアップ
    ### リストア
    ## Percona XtraBackupの仕組み
    ### バックアップ
    ### リストア
    ### フルバックアップの応用
    ### 現場での利用例

    # 6-4 ポイントインタイムリカバリ
    ## 該当のイベントを探す
    ## フルバックアップからリストア
    ## mysqlbinlogコマンドを利用したPITR
    ### ポジション手法
    ### GTID手法
    ## レプリケーション機能を利用したPITR
    ### ポジション手法
    ### GTID手法

    # 6-5 バイナリログのバックアップ
    ## 自動削除
    ## バックアップ
    ### 物理ファイルバックアップ
    ### ライブバックアップ
    ## バイナリログと増分バックアップ

    第7章 監視
    # 7-1 監視とは
    # 7-2 MySQLが稼働するOS、ハードウェアの状態
    ## プロセス
    ## ハードウェアリソースの利用状況
    ### CPU利用率
    ### メモリ利用率
    ### ディスクに対するI/O量
    ### NICごとのデータ転送量
    ## パフォーマンストレーサー
    ### perf top
    ### Flame Graph

    # 7-3 ログファイル
    ## エラーログ
    ### エラーログの定義の確認
    ## スロークエリログ.

    # 7-4 MySQL内部の情報
    ## SHOWコマンド
    ### SHOW [FULL] PROCESSLIST
    ### SHOW ENGINE INNODB STATUS
    ### SHOW STATUS
    ### SHOW MASTER STATUS
    ### SHOW REPLICA STATUS
    ## performance_schema
    ### events_statements_summary_by_digest
    ### file_summary_by_instance
    ### table_io_waits_summary_by_table
    ## information_schema
    ### INNODB_METRICS
    ### INNODB_TRX
    ### INNODB_TABLESPACES

    # 7-5 mysqld_exporter、Prometheusを設定する
    ## mysqld_exporterを起動する
    ## Prometheusを起動する

    # 7-6 死活監視と異常検知
    ## 死活監視
    ## ハードウェアリソースの監視
    ### CPU利用率
    ### ディスク利用率
    ### メモリ利用率
    ### ネットワーク帯域
    ## 異常検知
    ### auto_increment値
    ### 長時間実行されるトランザクション
    ### スロークエリログの出力量
    ### レプリケーションの状態と遅延状況

    Appendix Linuxへのインストール
    # A-1 インストール方法の種類
    # A-2 Red Hat Enterprise Linux、CentOS、Oracle Linux編
    ## yumリポジトリを使用する方法
    ## rpmパッケージファイルを使用する方法
    # A-3 Debian、Ubuntu編
    ## aptリポジトリを使用する方法
    ## dpkパッケージファイルを使用する方法
    # A-4 Linux共通:コンパイル済み実行ファイルを使用する方法
  • 内容紹介

    「サーバー故障やヒューマンエラーに備えるには?」
    「アクセス数の増加時にパフォーマンスを保つには?」
    「異常検知をして復旧するには?」

    運用・管理における長く役立つ視点を、実践経験豊富なエンジニアがどのように動いているのかをふまえて解説。

    本書では、MySQLサーバーの稼働状況の確認方法といった基礎知識を始め、アカウントの権限の評価順序や認証プラグインなど、運用管理者として知っておくべき知識をまず身につけます。そして、正規化プロセスの基本、CRUDを支える仕組み、ロックの仕組みといった、内部構造について理解を深めます。

    そのあと、多くのクエリ実行計画を読み解くので、どのようにクエリを書き換え、どの順番でインデックスを使って処理をしてコストを最小にするのかといった、オプティマイザの考え方がわかるようになるでしょう。レプリケーション、バックアップとリストア、監視など、障害発生に対応するためのノウハウも詰め込みました。

    現場で通用する知識の地固めをしたい方、より良い運用・管理のためのポイントを知りたい方におすすめの1冊です。
  • 著者紹介(「BOOK著者紹介情報」より)(本データはこの書籍が刊行された当時に掲載されていたものです)

    yoku0825(ヨクゼロハチニーゴー)
    MySQLの魅力にとりつかれ、以来10年以上MySQLの運用に携わっている。ソースコードはsql/sql_yacc.yyから読む派。日本MySQLユーザ会副代表。とある企業のDBA

    北川 健太郎(キタガワ ケンタロウ)
    LINEヤフー株式会社所属のデータベースエンジニア。担当はMySQLとOracle DatabaseとちょっとTiDB。好きなMySQLの機能はレプリケーションで、好きなOracleDatabaseの機能はログオントリガー

    tom_bo(トンボ)
    MySQL好きなソフトウェアエンジニア。MySQLの運用に5年以上携わり、サーバ/クライアントの通信プロトコル、バイナリログやRedoログをデコードして眺めるのが趣味。ソースコードはmysql_execute_command()を始点に調べることが多い

    坂井 恵(サカイ ケイ)
    2002年頃にMySQLと出会う。MySQLの好きな機能はSpatial機能(GIS機能)。MySQLのしくみもさる事ながら、特にデータ構造やデータの流れに強い関心を持つ。ソースコードは、item_create.ccから。日本MySQLユーザ会副代表。有限会社アートライ代表取締役
  • 著者について

    yoku0825 (ヨクゼロハチニーゴー)
    MySQLの魅力にとりつかれ、以来10年以上MySQLの運用に携わっている。ソースコードはsql/sql_yacc.yyから読む派。座右の銘は「オラクれない、ポスグれない、マイエスキューエる」。日本MySQLユーザ会副代表。とある企業のDBA。

    北川健太郎 (キタガワ ケンタロウ)
    LINEヤフー株式会社所属のデータベースエンジニア。担当はMySQLとOracle DatabaseとちょっとTiDB。好きなMySQLの機能はレプリケーションで、好きなOracle Databaseの機能はログオントリガー。

    tom__bo (トンボ)
    MySQL好きなソフトウェアエンジニア。 MySQLの運用に5年以上携わり、サーバー/クライアントの通信プロトコル、バイナリログやRedoログをデコードして眺めるのが趣味。ソースコードはmysql_execute_ command()を始点に調べることが多い。

    坂井恵 (サカイ ケイ)
    2002年頃にMySQLと出会う。MySQLの好きな機能はSpatial機能(GIS機能)。MySQLのしくみもさる事ながら、特にデータ構造やデータの流れに強い関心を持つ。ソースコードは、item_create.ccから。日本MySQLユーザ会副代表。有限会社アートライ代表取締役。

MySQL運用・管理"実践"入門―安全かつ高速にデータを扱う内部構造・動作原理を学ぶ の商品スペック

商品仕様
出版社名:技術評論社
著者名:yoku0825(著)/北川 健太郎(著)/tom_bo(著)/坂井 恵(著)
発行年月日:2024/06/04
ISBN-10:4297141841
ISBN-13:9784297141844
判型:B5
対象:専門
発行形態:単行本
内容:電子通信
言語:日本語
ページ数:232ページ
縦:23cm
他の技術評論社の書籍を探す

    技術評論社 MySQL運用・管理"実践"入門―安全かつ高速にデータを扱う内部構造・動作原理を学ぶ [単行本] に関するレビューとQ&A

    商品に関するご意見やご感想、購入者への質問をお待ちしています!