mysql admin and mgmt essentials jp.ppt [互換モー...
TRANSCRIPT
Copyright© 2011, Oracle. All rights reserved.
<Insert Picture Here><Insert Picture Here>
日本オラクル MySQL Global Business Unit テクニカルアナリスト 奥野幹也2011年10月28
MySQL 運用と管理のエッセンス
Copyright© 2011, Oracle. All rights reserved.
以下の事項は、弊社の一般的な製品の方向性に関する概要を説明するものです。また、情報提供を唯一の目的とするものであり、いかなる契約にも組み込むことはできません。以下の事項は、マテリアルやコード、機能を提供することをコミットメント(確約)するものではないため、購買決定を行う際の判断材料になさらないで下さい。オラクル製品に関して記載されている機能の開発、リリースおよび時期については、弊社の裁量により決定されます。
Oracleは、米国オラクル・コーポレーション及びその子会社、関連会社の米国及びその他の国における登録商標または商標です。他社名又は製品名は、それぞれ各社の商標である場合があります。
2
Copyright© 2011, Oracle. All rights reserved.
運用と管理者用のツールカテゴリ
• 基本的なコマンドラインツール
• 内部スキーマ / スクリプト
• 迅速な設計、開発、管理のためのGUIツール群
• バックアップとリカバリ
• モニタリングと運用管理
• パフォーマンスとストレステスト
3
Copyright© 2011, Oracle. All rights reserved.© 2011 Oracle Corporation – Proprietary and Confidential
• 基本的なコマンドラインツール
4
Copyright© 2011, Oracle. All rights reserved.© 2011 Oracle Corporation – Proprietary and Confidential
MySQL “クライアントプログラム”
http://dev.mysql.com/doc/refman/5.5/en/programs-client.html
mysql SQL文用mysqlコマンドライン/シェル
mysqladmin 運用管理コマンド実行。サーバ構成や現在のMySQLサーバのステータス、データベースの作成削除など。
mysqlcheck テーブルメンテナンス。テーブルのチェック、修復、最適化、分析を行う。
mysqldump バックアップ用または他のサーバー上に移行するためにデータベースをエキスポートする。ダンプファイルはテーブル生成やデータ挿入のSQL文を含む論理バックアップ。mysqldumpはCSVや他の区切り文字のテキスト、あるいはXMLフォーマットでもファイル生成可能。
mysqlimport LOAD DATA INFILE SQL文のコマンドラインインターフェース。
mysqlshow データベース一覧、データベース内のテーブルやテーブルのカラム、インデックスの表示。
mysqlslap MySQLサーバのクライアント負荷をエミュレートして、各ステージのタイミングをレポートする診断プログラム。複数のクライアントがMySQLサーバにアクセスしているかのように動作する。
5
Copyright© 2011, Oracle. All rights reserved.
スタートアップ・プログラム
mysqld Mysqlデーモン
mysqld_safe スクリプト - recommended way to start on Unix環境におけるお勧めの起動方法。Mysqldデーモンのエンジェルプロセスとして起動。
mysql.server Used on systems (Linux and Solaris) that use System Vスタイルでシステムサービスのスタートとストップを直接行うシステム(LinuxとSolaris)で使用する。Mac OS X上でも使用する。
mysqld_multi それぞれ異なったポート(もしくはソケット)で複数のサーバを動作させる場合の管理に使用。
http://dev.mysql.com/doc/refman/5.5/en/programs-server.html
6
Copyright© 2011, Oracle. All rights reserved.
•内部スキーマ / スクリプト
7
Copyright© 2011, Oracle. All rights reserved.
MySQL 情報スキーマ(Information_Schema)
• ANSI SQL (SQL:2003) –データベースのメタデータにアクセスする方法
• データベースオブジェクト(表、
ビュー、ストアドルーチン、トリガ、イベント)の設定などを見ることが可能
http://dev.mysql.com/doc/refman/5.5/en/information-schema.html
8
Copyright© 2011, Oracle. All rights reserved.
MySQL パフォーマンススキーマ(Performance_Schema)
• 低レベルイベントのモニターに使用。
• サーバソースコードの“instrumentation points” を使ってデータ収集。
• 集めたデータはperformance_schemaデータベース内のテーブルに格納。
• “Activate” データ収集するにはperformance_schemaをアクティベートする。- my.cnfファイルに performance_schemaを追加。
http://dev.mysql.com/doc/refman/5.5/en/performance-schema.html
9
Copyright© 2011, Oracle. All rights reserved.
MySQL Workbench
- MySQLオフィシャルのGUIアプリケーション
- 3つの主な機能セットを1つに統合したツール
- クロスプラットフォームでネイティブなUI(Windows, Linux, Mac OS X)
10
Copyright© 2011, Oracle. All rights reserved.
MySQL Workbench – 開発
SQLエディタ - 文法のキーワードを色づけ
オブジェクト管理 - インポートとエキスポート、ブラウジングと編集
接続管理 – ウイザード、並行処理、SSHマルチパンの結果ビュー、グリッド内でのデータ編集
11
Copyright© 2011, Oracle. All rights reserved.
MySQL Workbench – モデリング
ビジュアルデザイン – モデルの作成と管理
フォワード/リバースエンジニアリング
スキーマ(データベース)の比較と同期
変更管理とドキュメンテーション
12
Copyright© 2011, Oracle. All rights reserved.
MySQL Workbench – 管理
サーバ変数とステータス変数の全一覧
コンフィギュレーション、起動/停止、レプリケーション
ユーザ、セキュリティ、そしてセッションの管理
- ロールのサポート
ダンプファイルのインポート/エキスポート
13
Copyright© 2011, Oracle. All rights reserved.
MySQL Workbench – ユティリティmysqldbcopy サーバ間でデータベースをコピー。
mysqldbexport データベースを異なるフォーマットでエクスポート: SQL, CSV, タブ区切りフォーマット等々。
mysqldbimport ファイルからデータベースオブジェクトやデータをインポート。異なるフォーマットのものをデータベースへ。
mysqlindexcheck テーブルまたはデータベースのリストから、冗長/重複したインデックスをチェック。冗長なインデックスを取り除くDROP文を作成可能。
mysqlmetagrep パターンにマッチしたデータベースオブジェクトのサーチ。
mysqlprocgrep パターンにマッチしたプロセスのサーチとそれに対する操作実行。
mysqlreplicate 二つのサーバ間にレプリケーションのセットアップ。
mysqlserverclone 実験のための新しいインスタンスを開始します。これはユティリティのテストに使います。またテスト以外にもスクラッチからセットアップする必要があるときに使います。
mysqluserclone MySQLのユーザを一人もしくはそれより多くのユーザにコピーします。
http://wb.mysql.com/utilities/index.htmlAnd more coming soon. Contribute your own.
14
Copyright© 2011, Oracle. All rights reserved.
MySQL WorkbenchStandard Edition
(next page)
15
Copyright© 2011, Oracle. All rights reserved.
MySQL WorkbenchStandard Edition
16
Copyright© 2011, Oracle. All rights reserved.
MySQL WorkbenchStandard Edition
モデルのバリデーション
一般的なスキーマのバリデーション
MySQL 独自のスキーマバリデーション-整合性-文法-重複した識別子
17
Copyright© 2011, Oracle. All rights reserved.
•バックアップとリカバリ
18
Copyright© 2011, Oracle. All rights reserved.
DBAの課題
• バックアップとリカバリに核心となる責任あり
• しかし、それは簡単ではない- データベースは急激に大きくなる
- いくらはやくしてもバックアップに必要な時間は増える
• バックアップは他の活動にインパクトを与える
エンドユーザ
DBA メンテナンス
• そしてストレージのコストは制御不能
• そして悪いことが起こる• トラブル用に働く必要がある
• 終わりのないリカバリ作業
19
Copyright© 2011, Oracle. All rights reserved.
データベースバックアップのタイプ
長所と短所
20
Copyright© 2011, Oracle. All rights reserved.
MySQLバックアップツール
• ホットバックアップ (オンライン)- MySQL Enterprise Backup - mysqlbackup
• エクスポート/インポート (ロジカルバックアップ)- mysqldump
• スタンバイコピー (ホットスワップ)- MySQL レプリケーション
• コールドバックアップ (オフライン)- MySQLサーバをシャットダウンして行う単純なファイルコピー
• ファイルシステムのボリュームマネージャ(スナップショット)
- 例えばLVM
21
Copyright© 2011, Oracle. All rights reserved.
mysqldump
• 長所- 小規模なデータベースやテーブルに良い
- データベースが壊れてない場合に確実
- 論理バックアップ – そのためフレキシブルでポータブル
• 短所- リストアのスピードが大変遅い
- データベースの処理サイクルとリソースを使用する
- オンラインではない (トランザクション、もしくはデータベース内のテーブルロックを必要とする)
- 増分バックアップはない(毎回フルバックアップが必要)- 一貫性が無い(トランザクションを使わない限り)
22
Copyright© 2011, Oracle. All rights reserved.
MySQLレプリケーション
• 長所- 動作継続しながらの “スナップショット”。- クイックリカバリ – フェイルオーバー経由で。
- ブロックしない。
- 他のバックアップオプションと連動してうまく動作する。
• 短所- 最新の “Point in Time” (位置(point)は常に前方に移動している)- 非歴史的(過去のあるポイントのバックアップではない)- アーカイブ目的ではない
- 論理障害(まちがったSQL文発行など)には無力
23
Copyright© 2011, Oracle. All rights reserved.
LVMスナップショット
• 長所- 速い
- Linuxの機能
- 他のバックアップとの連動に良い
• 短所- スナップショットである
• フルサイズまでバックアップコピーを作る必要あり
- 同時実行のスナップショットでパフォーマンスのデグレードがある
• スナップショットはリリースされる必要がある
- ファイルシステム間の移行に制限がある
24
Copyright© 2011, Oracle. All rights reserved.
MySQL Enterprise Backup(MEB)
• 長所-物理バックアップ (そのため速い、特にリストア)-フレキシブル – 多くのオプションあり
-圧縮可
-スケーラブル
-一貫性あり
-サポートされている
• 短所-バックアップのプランニングが必要
25
Copyright© 2011, Oracle. All rights reserved.
MySQL Enterprise Backup(MEB)
• MySQLデータベースをオンラインバックアップする
• ハイパフォーマンス
• フル、増分、部分バックアップ- 圧縮テーブル
- パーティションファイル
- インメモリ データベース
• 圧縮
• Point in Time Recovery• メタデータの状態、進捗、履歴
• データベースの上限無し
• シングルファイルへのストリーミングサポート。- テープデバイスへのバックアップ
MEB BackupFiles
MySQL Database Files
mysqlbackup
26
Copyright© 2011, Oracle. All rights reserved.
•モニタリングと運用管理
27
Copyright© 2011, Oracle. All rights reserved.
MySQL Enterprise Monitor(MEM)
• 統合されたビュー
• 企業向けサポート
⁃SNMP
⁃LDAP
⁃カスタマイズ可能
• 相関グラフによるクエリ分析
28
Copyright© 2011, Oracle. All rights reserved.
DBAs/Administrators
MEM Agents
MEM Agents
MEM Server
Stand alonedatabases
Replicationdatabases
ClusterServers
Enterprise Monitorの配置
Management Reporters
MEM Server
DBAs/Administrators
MEM Server
29
Copyright© 2011, Oracle. All rights reserved.
140を越えるルール, 50を越えるMySQL/OS特有のグラフ
30
MySQLエキスパートアドバイザ
Copyright© 2011, Oracle. All rights reserved. 31
MySQL Expert Advisors - Upgrade Details
Copyright© 2011, Oracle. All rights reserved.
• Master/Slaveトポロジの自動検知、グルーピングと保持。
• 統合されたリアルタイムの状態、同期のチェック
• 同期問題の通知
自動検知のレプリケーションモニタ
32
Copyright© 2011, Oracle. All rights reserved.
EM - Query Analyzer
33
Copyright© 2011, Oracle. All rights reserved.
クエリ実行をドリルダウン
Explainでプランを見る
変数を置換したExample query
クエリの実行をソースコードに戻ってトレース
34
Copyright© 2011, Oracle. All rights reserved.
•カスタムアドバイザー(又はルール)の追加例
35
Copyright© 2011, Oracle. All rights reserved. 36
Enterprise Monitor – 新ルールの作成
Copyright© 2011, Oracle. All rights reserved. 37
Enterprise Monitor – 既存ルールのコピー
Copyright© 2011, Oracle. All rights reserved. 38
Enterprise Monitor – 既存ルールのコピー
Copyright© 2011, Oracle. All rights reserved. 39
Enterprise Monitor – 既存ルールのコピー
Copyright© 2011, Oracle. All rights reserved.
• イベントを作ってみよう(MySQL Workbenchを使って)
40
Copyright© 2011, Oracle. All rights reserved. 41
Workbench – テーブルの作成
Copyright© 2011, Oracle. All rights reserved. 42
Enterprise Monitor – イベントのチェック
Copyright© 2011, Oracle. All rights reserved. 43
Enterprise Monitor – イベント詳細のチェック
Copyright© 2011, Oracle. All rights reserved.
ここにCREATE TABLE
の詳細
44
Enterprise Monitor – クエリアナライザ
Copyright© 2011, Oracle. All rights reserved. 45
Workbench – ユーザ作成
Copyright© 2011, Oracle. All rights reserved.
Select the Group from Servers browserand filter on Rules
46
Enterprise Monitor – イベントのチェック
Copyright© 2011, Oracle. All rights reserved.
Agent Proxy経由のクエリ分析
47
Copyright© 2011, Oracle. All rights reserved.
MySQL Database
(SQL statements & result sets)
1. MySQL Enterprise Monitor & Query Analyzer2. MySQL Agent3. Connector/NET (v6.2+) or Connector/J (v5.1+)4. MySQL Enterprise Plugin for Connector
List of components to download & configure:
(MySQL & OS monitoring
data)
3. Connector
Connector/NetもしくはJava経由のクエリ分析
4. Plugin for Connector
(SQL performance data: statements, examples, EXPLAINs, aggregated
stats)
3306
18080
2. MySQL Agent
1. MySQL Enterprise Monitor(Service Manager, Dashboard)
Application Server
48
Copyright© 2011, Oracle. All rights reserved.
Aggregator経由のクエリ分析
49
Copyright© 2011, Oracle. All rights reserved.
• パフォーマンスとストレステスト
50
Copyright© 2011, Oracle. All rights reserved.
パフォーマンスとストレステスト
• Sysbench- http://sysbench.sourceforge.net/
• DBT-2- OLTPベンチマークに似たベンチマーク
-多くのMySQLユーザーに人気がある
- http://samurai-mysql.blogspot.com/2009/03/settingup-dbt-2.html
51
Copyright© 2011, Oracle. All rights reserved.
追加リソース
• https://edelivery.oracle.com/- MySQL Enterprise Monitor, Enterprise Backup, その他ツールのダウンロード
- MySQL データベース本体のダウンロード
• http://www-jp.mysql.com- MySQL 製品、エディション、ライセンスオプション情報
- TCO 計算機
• https://dev.mysql.com-ドキュメント
-開発者向け記事やHow to
52
Copyright© 2011, Oracle. All rights reserved. 53
Copyright© 2011, Oracle. All rights reserved. 54