Slide 1

Slide 1 text

新しいMySQLのバックアップツールと MySQL Database Serviceのご紹介 2020/11/28 Open Source Conference 2020 Online/Fukuoka Yoshiaki Yamasaki MySQL Principal Solution Engineer MySQL Global Business Unit

Slide 2

Slide 2 text

Safe harbor statement 以下の事項は、弊社の一般的な製品の方向性に関する概要を説明するものです。 また、情報提供を唯一の目的とするものであり、いかなる契約にも組み込むことはできません。 以下の事項は、マテリアルやコード、機能を提供することをコミットメントするものではない為、 購買決定を行う際の判断材料になさらないで下さい。 オラクル製品に関して記載されている機能の開発、リリースおよび時期については、 弊社の裁量により決定されます。 Copyright © 2020, Oracle and/or its affiliates 2

Slide 3

Slide 3 text

1. MySQLのバックアップ方法 2. MySQL Shellとは? 3. dumpInstance&loadDumpユーティリティ 4. MySQL Database Serviceとは? アジェンダ Copyright © 2020, Oracle and/or its affiliates 3

Slide 4

Slide 4 text

Copyright © 2020, Oracle and/or its affiliates 4 MySQLのバックアップ方法

Slide 5

Slide 5 text

◼ mysqldump • 論理バックアップを取得できるツール • MySQL Community Editionでも使用でき手軽に利用できるが、データ量が多くなると バックアップ/リストアに時間がかかる ◼ MySQL Enterprise Backup • 物理バックアップを取得できるツール • 物理バックアップであるため、mysqldumpよりも高速にバックアップ/リストア可能 • MySQL Enterprise Editionのみの限定機能 MySQLのバックアップ方法 Copyright © 2020, Oracle and/or its affiliates 5

Slide 6

Slide 6 text

◼ mysqldumpと比べて高速にバックアップ/リストア可能 • バックアップ処理時間:49倍 • リストア処理時間:80倍 ◼ 充実した各種オプション • フル/増分/差分バックアップ対応 • クラウドストレージとの連携 • バックアップの暗号化/圧縮、など MySQL Enterprise Backup Copyright © 2020, Oracle and/or its affiliates 6

Slide 7

Slide 7 text

◼ mysqldump • 論理バックアップを取得できるツール • MySQL Community Editionでも使用でき手軽に利用できるが、データ量が多くなると バックアップ/リストアに時間がかかる ◼ MySQL Enterprise Backup • 物理バックアップを取得できるツール • 物理バックアップであるため、mysqldumpよりも高速にバックアップ/リストア可能 • MySQL Enterprise Editionのみの限定機能 ◼ dumpInstance&loadDumpユーティリティ • 論理バックアップを取得できるツール • 並列処理可能であるため、mysqldumpよりも高速にバックアップ/リストア可能 • MySQL Shell 8.0.21以降で使用できる新しい機能 MySQLのバックアップ方法 (最新版) Copyright © 2020, Oracle and/or its affiliates 7

Slide 8

Slide 8 text

Copyright © 2020, Oracle and/or its affiliates 8 MySQL Shellとは?

Slide 9

Slide 9 text

◼ 新しいMySQLコマンドラインクライアント ◼ MySQL Serverとモジュールが分かれているため、別途インストールが必要 ◼ 特徴 • Xプロトコル、X DevAPIのサポート • SQLだけでなく、JavaScript や Python も実行可能 • バッチコード実行機能 • 多様な出力フォーマット (タブ区切り、JSONフォーマット) • mysqlコマンドラインクライアントよりも使いやすい補完機能 • AdminAPIのサポート (MySQL InnoDB Cluster用の機能) • レポート機能、プラグイン機能により機能拡張可能 • MySQL Shell Utilities を使用可能 MySQL Shellとは? Copyright © 2020, Oracle and/or its affiliates 9

Slide 10

Slide 10 text

◼ アップブレードチェッカーユーティリティ • MySQL 8.0へのバージョンアップ前に互換性に関する問題を確認できる ◼ JSONインポートユーティリティ • JSONデータをインポートできる ◼ テーブルエクスポートユーティリティ • テーブルデータをエクスポートできる ◼ パラレルテーブルインポートユーティリティ • テーブルにデータをインポートできる ◼ インスタンス/スキーマ/テーブルダンプユーティリティ • 新しいデータダンプユーティリティ ◼ ダンプローディングユーティリティ • 新しいデータローディングユーティリティ MySQL Shell Utilities の種類 Copyright © 2020, Oracle and/or its affiliates 10

Slide 11

Slide 11 text

◼ アップブレードチェッカーユーティリティ • MySQL 8.0へのバージョンアップ前に互換性に関する問題を確認できる ◼ JSONインポートユーティリティ • JSONデータをインポートできる ◼ テーブルエクスポートユーティリティ • テーブルデータをエクスポートできる ◼ パラレルテーブルインポートユーティリティ • テーブルにデータをインポートできる ◼ インスタンス/スキーマ/テーブルダンプユーティリティ • 新しいデータダンプユーティリティ ◼ ダンプローディングユーティリティ • 新しいデータローディングユーティリティ MySQL Shell Utilities の種類 Copyright © 2020, Oracle and/or its affiliates 11

Slide 12

Slide 12 text

Copyright © 2020, Oracle and/or its affiliates 12 dumpInstance&loadDumpユーティリティ

Slide 13

Slide 13 text

◼ MySQL Shell 8.0.21以降で使用できるデータダンプ&データロードユーティリティ ◼ MySQL 5.7以降に対して使用可能 ◼ MySQL Shell 8.0.22からdumpTablesユーティリティも追加された • 他にも細かな機能改善が複数あるため、最新バージョンのMySQL Shellを使用することを推奨 dumpInstance&loadDumpユーティリティ Copyright © 2020, Oracle and/or its affiliates 13 出典:https://dev.mysql.com/doc/mysql-shell/8.0/en/mysql-shell-utilities-dump-instance-schema.html

Slide 14

Slide 14 text

◼ 特徴 • 複数スレッドによる並列処理 • ダンプ中に進捗状況を表示 • ダンプ中のデータを並行してロード可能 • ダンプファイルの圧縮 • Oracle Cloud Infrastructure Object Storageへのストリーミング • MySQL Database Serviceとの互換性チェック&修正 dumpInstance&loadDumpユーティリティ Copyright © 2020, Oracle and/or its affiliates 14

Slide 15

Slide 15 text

パフォーマンス比較:データダンプ Copyright © 2020, Oracle and/or its affiliates 15 出典:https://mysqlserverteam.com/mysql-shell-dump-load-part-2-benchmarks/

Slide 16

Slide 16 text

パフォーマンス比較:データロード Copyright © 2020, Oracle and/or its affiliates 16 出典:https://mysqlserverteam.com/mysql-shell-dump-load-part-2-benchmarks/

Slide 17

Slide 17 text

◼ util.dumpInstance() • インスタンス全体のダンプを取得 (ユーザー情報も含む) • 特定のスキーマ、テーブルをダンプ対象外にすることも可能 • MySQL Shell 8.0.22時点では一貫性が失われるバグがあるため、{routines:false} を指定してバグを 回避することを推奨(※) ◼ util.dumpSchemas() • スキーマ単位のダンプを取得 • 複数スキーマを一度の処理でダンプ可能 • 特定のテーブルをダンプ対象外にすることも可能 ◼ util.dumpTables() • テーブル単位のダンプを取得 • 複数テーブルを一度の処理でダンプ可能 使用できるユーティリティ:データダンプ用 Copyright © 2020, Oracle and/or its affiliates 17 ※参考情報:MySQL Shell dumpInstance が一貫性の壊れたバックアップを生成するバグの件 https://mita2db.hateblo.jp/entry/2020/11/04/233627

Slide 18

Slide 18 text

◼ util.loadDump() • ダンプしたデータをロード • インポート途中で中断した場合、中断したところから再開も可能 • waitDumpTimeoutオプションを使用すると、ダンプ中のファイルも並行してロード可能 使用できるユーティリティ:データロード用 Copyright © 2020, Oracle and/or its affiliates 18

Slide 19

Slide 19 text

dumpInstance(), dumpSchemas(), dumpTables(), loadDump() Copyright © 2020, Oracle and/or its affiliates 19 パラメタ 説明 dryRun 指定されているパラメータで取得できるダンプの情報を実行前に表示 dataOnly DDLはダンプに含めず、データファイルのみをダンプ ocimds MySQL Database Service との互換性をチェック(dryRunとの併用を推奨) showProgress 進行状況を表示 compression ダンプファイルの圧縮タイプを"none" "gzip" "zstd”から指定 excludeSchemas 指定されたスキーマを除外 excludeTables 指定されたテーブルを除外 スキーマ名.テーブル名 または `スキーマ名`.`テーブル名`の形式で指定 loadUsers ダンプに含まれているユーザー、ロール、権限のインポート可否 ※ロード実行ユーザーについては除外される resetProgress 進行中のロードをリセットし、最初からロードを再実行 中断したロードで生成されたオブジェクトは重複する可能性あり threads 並列スレッドの数 主要なパラメータ

Slide 20

Slide 20 text

◼ デモ動画 • MySQL Shell Dump & Load part 1: Demo! https://mysqlserverteam.com/mysql-shell-dump-load-part-1-demo/ ◼ マニュアル • MySQL Shell 8.0 / Instance Dump Utility, Schema Dump Utility, and Table Dump Utility https://dev.mysql.com/doc/mysql-shell/8.0/en/mysql-shell-utilities-dump-instance-schema.html • MySQL Shell 8.0 / Dump Loading Utility https://dev.mysql.com/doc/mysql-shell/8.0/en/mysql-shell-utilities-load-dump.html ◼ MySQL Database Serviceとの互換性に関する情報 • Oracle Cloud Infrastructure Documentation:MySQL Database:Importing and Exporting Databases https://docs.cloud.oracle.com/en-us/iaas/mysql-database/doc/importing-and-exporting- databases.html#GUID-4A26CE5C-05ED-483C-A579-9D93524DA465 dumpInstance&loadDumpユーティリティのデモ、マニュアル Copyright © 2020, Oracle and/or its affiliates 20

Slide 21

Slide 21 text

Copyright © 2020, Oracle and/or its affiliates 21 MySQL Database Serviceとは?

Slide 22

Slide 22 text

◼ Oracle Cloud Infrastructure(OCI)上で提供しているMySQLのマネージドサービス • OCIとネイティブに統合されているため、セキュリティやパフォーマンスなど、 OCIの強みも活かせるマネージドサービス ◼ MySQL開発ベンダーであるオラクルにより提供されており、オンプレミスのMySQLと100%互換性がある • MySQL部分のサポートも含まれているため、安心して利用可能 ◼ MySQL Enterprise Edition 8.0をベースに構築されているため、MySQL Enterprise Edition限定機能も 使用できるようになる予定 (現時点では使用できないが、ロードマップに有り) • 監査ログ取得 • データマスキング • 怪しいSQLのブロック/検知、など MySQL Database Service とは? Copyright © 2020, Oracle and/or its affiliates 22

Slide 23

Slide 23 text

フルマネージド データベースサービス Oracle MySQL Database Service Copyright © 2020, Oracle and/or its affiliates 23 MySQL On Premise MySQL Database Service Database Scaling (※) Backup Security Patch & Upgrade Provision & Configure OS OS Security Patch & Upgrade OS Installation Server Hardware Purchase & Maintenance Storage Storage Purchase & Maintenance Data Center Rack & Space Power, HVAC, Networking Automated Manual ※Auto Scaling機能はまだ提供されていませんが、今後提供される予定です

Slide 24

Slide 24 text

Oracle MySQL Database Service Copyright © 2020, Oracle and/or its affiliates 24

Slide 25

Slide 25 text

MySQL Database Service のアーキテクチャー Copyright © 2020, Oracle and/or its affiliates 25 Virtual Machine Subnet B 10.0.1.0/24 ORACLE CLOUD INFRASTRUCTURE (REGION) Availability Domain 1 AD3 Subnet A 10.0.0.0/24 MySQL DB System VPN Dynamic Routing Gateway VCN USER TENANCY AD2 INTERNAL TENANCY Virtual Machine Block Storage VCN VCN Monitoring Events Tagging Auditing Workflow Healthcheck Back Up/ Restore API Service Internet Gateway Subnet Subnet

Slide 26

Slide 26 text

MySQL Database Serviceは、OCIの第2世代クラウド・インフラストラクチャ上に構築されており、 エンタープライズ・セキュリティを第一に考え、第1世代クラウド・プラットフォームと同等以上の IaaSおよびPaaSサービスを提供します。 • MySQL Database Service APIをOracle Cloud Infrastructure Identity Serviceとネイティブに統合 • MDS操作に対するAPIアクセス制御のための細かなポリシーを定義 • 異なるコンパートメント間で、どのグループのユーザーがMDSのリソースにアクセスできるかを定義します • パブリックIPアドレス無し • OCIはパブリックとプライベートの両方のネットワーキングを提供できますが、MDSはパブリックIP上で エンドポイントを公開しません • 他のクラウド・プラットフォームがこれを提供している一方で、この点が原因でデータベースが侵害された 多くの事例があります • デフォルトで暗号化 • 全てのデータベースボリュームが常に暗号化されています • MySQLパスワード検証プラグインにより、強力なパスワードを強制 • パスワードの複雑さの要件は、すべてのコンプライアンス基準の要件をカバーしています • コンプライアンスのあらゆるニーズに対応 Oracle MySQL Database Service:セキュリティ&コンプライアンス Copyright © 2020, Oracle and/or its affiliates 26

Slide 27

Slide 27 text

◼ 他社製のMySQLマネージドサービスと比べ、非常に低価格 • 3.1倍~3.7倍低価格 • 構成 • 100 OCPUs, 1 TB Storage • 備考 • MySQL Database Service: • Standard E2 AMD 8GB/Core • 全リージョンで同一料金 • Amazon RDS: • Intel M5 8GB/Core • AWS US East. • Azure: • General Purpose Intel 10GB/Core • MS Azure US-East. • Google: • N1 Standard Intel 7.5GB/Core • GCP Northern Virginia. MySQL Database Service によるコスト削減 Copyright © 2020, Oracle and/or its affiliates 27 ※出典:https://blogs.oracle.com/mysql/introducing-the-mysql-database-service

Slide 28

Slide 28 text

◼ コストパフォーマンスの高いパブリッククラウド環境 ◼ Zoomがユーザー数の急増に対応するために採用したことでも注目を集めている https://www.oracle.com/jp/corporate/pressrelease/jp20200428.html Oracle Cloud Infrastructure(OCI)とは? Copyright © 2020, Oracle and/or its affiliates 28

Slide 29

Slide 29 text

◼ Oracle Cloud Infrastructureを常時無償で使用できるサービス ◼ Always Free用のアカウントを作成すると、30日間有効な300USドルのクレジットも付与され Always Free対象外のサービスも利用できる ⇒ MySQL Database Service はAlways Freeの対象外であるが、このクレジットで試すことが可能 Always Freeとは? Copyright © 2020, Oracle and/or its affiliates 29

Slide 30

Slide 30 text

◼ 以下のイベントに参加すると、特別オファーあり • MySQL関連のWebセミナー https://www.mysql.com/jp/news-and-events/web-seminars/ • Oracle Code Nightのオンラインイベント https://oracle-code-tokyo-dev.connpass.com/ ◼ 特別オファー • アカウント作成時にクレジットカード情報の登録不要!! (通常であれば、クレジットカード情報の登録が必要です) • 一か月間有効な500USドルのクレジット付き!! (Always Free以外の有償のサービスも1か月間試せます) OCIのトライアルアカウントをお得に作成する方法 Copyright © 2020, Oracle and/or its affiliates 30

Slide 31

Slide 31 text

◼ 以下のURLからアカウント作成可能 https://myservices.us.oraclecloud.com/mycloud/signup ◼ 参考情報 • Oracle Cloud 無料トライアル サインアップガイド https://faq.oracle.co.jp/app/answers/detail/a_id/6492 • Oracle Cloud 無料トライアルに関するよくある質問(FAQ) https://www.oracle.com/jp/cloud/free/faq.html Always Freeのアカウントを作成する方法 Copyright © 2020, Oracle and/or its affiliates 31

Slide 32

Slide 32 text

◼ 手順を画面キャプチャー付きで詳細に解説したチュートリアルを用意していますので、ご活用ください! https://oracle-japan.github.io/ocitutorials/ ◼ MySQL Database Serviceのチュートリアルも今後掲載される予定!! Oracle Cloud Infrastructure のチュートリアル Copyright © 2020, Oracle and/or its affiliates 32

Slide 33

Slide 33 text

◼ Always Freeを使って無料でMySQLのレプリケーション検証環境を構築しよう! https://speakerdeck.com/yoshiakiyamasaki/always-freewoshi-tutewu-liao- demysqlfalserepurikesiyonjian-zheng-huan-jing-wogou-zhu-siyou ◼ Always Freeを利用して、無料でMySQLのレプリケーション検証環境を構築する方法について 説明しています (レプリケーションを組まずに利用することも可能です) 無料でMySQL環境を手に入れたい方向けの参考情報 Copyright © 2020, Oracle and/or its affiliates 33

Slide 34

Slide 34 text

Copyright © 2020, Oracle and/or its affiliates 34 お知らせ

Slide 35

Slide 35 text

◼ MySQL Database Service Analytics Engine • 大量データの分析処理を高速に実行できるMySQLベースのサービス ◼ 12/2(水)にこんなイベントが!! 新しいサービスのリリース予定もあり Copyright © 2020, Oracle and/or its affiliates 35 申込ページ:https://go.oracle.com/LP=102761?elqCampaignId=273462

Slide 36

Slide 36 text

• 10/27 (火) 16:20 – 17:00 Oracle (MySQL) お待たせしました。OracleからMySQLデータベースサービスが登場 • 11/24 (火) 16:20 – 17:00 Oracle (MySQL) mysqldumpをまだお使いですか? 新しいdumpInstance&loadDumpユーティリティ • 12/3 (水) 13:00 – 13:40 yoku0825氏 MySQL on IaaSの運用あれやこれや • 12/10 (水) 14:40 – 15:20 株式会社ヤマレコ・有限会社アップルップル 青い森ウェブ工房 MySQL のGIS機能でこんなサービスを提供しています • 12/10 (水) 15:30 - 16:10 株式会社マイネット 堀越氏 新興クラウドのMySQL互換DBaaS徹底比較! db tech showcase MySQL 関連セミナー Copyright © 2020, Oracle and/or its affiliates 36 https://www.db-tech-showcase.com/dbts/2020/online/

Slide 37

Slide 37 text

Copyright © 2019, Oracle and/or its affiliates. All rights reserved. | Developer Days 未来を創造する最新テクノロジーを今、あなたの手に。 IT に携わる全てのエンジニアの皆様を対象に、最新技術情報をお届け! • 開催日: 2020年12月17日(木) ・ 2020年12月18日(金) • 時間 : 13:00 – 16:30 *12:45より接続開始 • 参加費: 無料 (事前登録制) • https://www.oracle.com/jp/cloudday #OraDevDays 廣瀬 一海 氏 日本マイクロソフト株式会社 萩野 たいじ 氏 日本アイ・ビー・エム株式会社 野中 恭太郎 日本オラクル株式会社 12月17日(木) 13:10~ 大塚 知亮 氏 LINE株式会社 12月18日(金) 13:10~ 12月18日(金) 13:10~ 12月18日(金) 13:10~ Copyright © 2020, Oracle and/or its affiliates 【基調講演】LINEにおける MySQL運用の現状とバージョン アップを支える仕組み

Slide 38

Slide 38 text

Copyright © 2020, Oracle and/or its affiliates 38 Q&A

Slide 39

Slide 39 text

No content