Submit Search
Upload
カジュアルに本番データを開発環境に入れる #mysqlcasual
•
4 likes
•
4,941 views
Kazuhiro Oinuma
Follow
MySQL Casual Talks vol.9の発表資料
Read less
Read more
Engineering
Report
Share
Report
Share
1 of 22
Download now
Download to read offline
Recommended
Client Side Balzorでツールを作ってみた
Client Side Balzorでツールを作ってみた
裕之 木下
Ossフル活用でinfrastructure as codeやってみた
Ossフル活用でinfrastructure as codeやってみた
Akifumi Niida
アカツキはどのようにAWSを活用しているか #jawsug
アカツキはどのようにAWSを活用しているか #jawsug
aktsk
OSS運用管理勉強会LT
OSS運用管理勉強会LT
atk1234
仮想マシンを使った開発環境の簡単共有方法
仮想マシンを使った開発環境の簡単共有方法
Hideo Takahashi
Azure DevOpsで技術同人誌作成
Azure DevOpsで技術同人誌作成
裕之 木下
新登場!Surface Laptop 4
新登場!Surface Laptop 4
Tomokazu Kizawa
Rancher meetuptokyo #4 Vagrant でつくる Rancher HA構成
Rancher meetuptokyo #4 Vagrant でつくる Rancher HA構成
Tetsurou Yano
Recommended
Client Side Balzorでツールを作ってみた
Client Side Balzorでツールを作ってみた
裕之 木下
Ossフル活用でinfrastructure as codeやってみた
Ossフル活用でinfrastructure as codeやってみた
Akifumi Niida
アカツキはどのようにAWSを活用しているか #jawsug
アカツキはどのようにAWSを活用しているか #jawsug
aktsk
OSS運用管理勉強会LT
OSS運用管理勉強会LT
atk1234
仮想マシンを使った開発環境の簡単共有方法
仮想マシンを使った開発環境の簡単共有方法
Hideo Takahashi
Azure DevOpsで技術同人誌作成
Azure DevOpsで技術同人誌作成
裕之 木下
新登場!Surface Laptop 4
新登場!Surface Laptop 4
Tomokazu Kizawa
Rancher meetuptokyo #4 Vagrant でつくる Rancher HA構成
Rancher meetuptokyo #4 Vagrant でつくる Rancher HA構成
Tetsurou Yano
Updates of Azure NoSQL announced at Microsoft Ignite Spring 2021
Updates of Azure NoSQL announced at Microsoft Ignite Spring 2021
Oshitari_kochi
Swarm mode運用してみた
Swarm mode運用してみた
Akifumi Niida
LINE LIFF with Azure ハンズオン資料 - Azure サービス解説
LINE LIFF with Azure ハンズオン資料 - Azure サービス解説
Kazumi IWANAGA
AzureDevOpsで始めるAndroidのCI/CD
AzureDevOpsで始めるAndroidのCI/CD
Shinya Nakajima
Shiva 〜Nextremerをscale upする機械学習環境〜
Shiva 〜Nextremerをscale upする機械学習環境〜
Kazuki Morozumi
20150905 stream analytics
20150905 stream analytics
一希 大田
How Wantedly (in)directly uses AWS
How Wantedly (in)directly uses AWS
Yoshinori Kawasaki
BITRISEを使っています
BITRISEを使っています
Kazuaki KURIU
Memtest86をかけてみた話
Memtest86をかけてみた話
Yasuaki Sera
iOS6時代のTwitter / Facebook連携
iOS6時代のTwitter / Facebook連携
Masahiro Murakami
BIOSからUEFI
BIOSからUEFI
Yasuaki Sera
Rancher Meetup Tokyo#3 Storageについて
Rancher Meetup Tokyo#3 Storageについて
Tetsurou Yano
Docker on azure!進化していくcontainerを覗いてみよう!
Docker on azure!進化していくcontainerを覗いてみよう!
Tsukasa Kato
NVMFS 使ってみたとか 言っちゃって マジカジュアルな奴
NVMFS 使ってみたとか 言っちゃって マジカジュアルな奴
Akihiro Kuwano
Azure Searchで作る検索サービス
Azure Searchで作る検索サービス
Yuta Matsumura
君も今日からWebMatrixMan(仮)
君も今日からWebMatrixMan(仮)
Yuki Igarashi
Aurora MySQL HandMade Major VersionUp
Aurora MySQL HandMade Major VersionUp
Takafumi Nakahara
.NETラボ2021年10月 .NETの過去と現在
.NETラボ2021年10月 .NETの過去と現在
TomomitsuKusaba
サーバー知識不要!のゲームサーバー "Azure PlayFab" で長期運営タイトルを作ろう
サーバー知識不要!のゲームサーバー "Azure PlayFab" で長期運営タイトルを作ろう
Daisuke Masubuchi
Rancherでwindows server上のコンテナを管理できるか
Rancherでwindows server上のコンテナを管理できるか
Takashi Kanai
コードはナマモノ 腐らせないために今までやってきたこと
コードはナマモノ 腐らせないために今までやってきたこと
Kazuhiro Oinuma
MySQL 初めてのチューニング
MySQL 初めてのチューニング
Craft works
More Related Content
What's hot
Updates of Azure NoSQL announced at Microsoft Ignite Spring 2021
Updates of Azure NoSQL announced at Microsoft Ignite Spring 2021
Oshitari_kochi
Swarm mode運用してみた
Swarm mode運用してみた
Akifumi Niida
LINE LIFF with Azure ハンズオン資料 - Azure サービス解説
LINE LIFF with Azure ハンズオン資料 - Azure サービス解説
Kazumi IWANAGA
AzureDevOpsで始めるAndroidのCI/CD
AzureDevOpsで始めるAndroidのCI/CD
Shinya Nakajima
Shiva 〜Nextremerをscale upする機械学習環境〜
Shiva 〜Nextremerをscale upする機械学習環境〜
Kazuki Morozumi
20150905 stream analytics
20150905 stream analytics
一希 大田
How Wantedly (in)directly uses AWS
How Wantedly (in)directly uses AWS
Yoshinori Kawasaki
BITRISEを使っています
BITRISEを使っています
Kazuaki KURIU
Memtest86をかけてみた話
Memtest86をかけてみた話
Yasuaki Sera
iOS6時代のTwitter / Facebook連携
iOS6時代のTwitter / Facebook連携
Masahiro Murakami
BIOSからUEFI
BIOSからUEFI
Yasuaki Sera
Rancher Meetup Tokyo#3 Storageについて
Rancher Meetup Tokyo#3 Storageについて
Tetsurou Yano
Docker on azure!進化していくcontainerを覗いてみよう!
Docker on azure!進化していくcontainerを覗いてみよう!
Tsukasa Kato
NVMFS 使ってみたとか 言っちゃって マジカジュアルな奴
NVMFS 使ってみたとか 言っちゃって マジカジュアルな奴
Akihiro Kuwano
Azure Searchで作る検索サービス
Azure Searchで作る検索サービス
Yuta Matsumura
君も今日からWebMatrixMan(仮)
君も今日からWebMatrixMan(仮)
Yuki Igarashi
Aurora MySQL HandMade Major VersionUp
Aurora MySQL HandMade Major VersionUp
Takafumi Nakahara
.NETラボ2021年10月 .NETの過去と現在
.NETラボ2021年10月 .NETの過去と現在
TomomitsuKusaba
サーバー知識不要!のゲームサーバー "Azure PlayFab" で長期運営タイトルを作ろう
サーバー知識不要!のゲームサーバー "Azure PlayFab" で長期運営タイトルを作ろう
Daisuke Masubuchi
Rancherでwindows server上のコンテナを管理できるか
Rancherでwindows server上のコンテナを管理できるか
Takashi Kanai
What's hot
(20)
Updates of Azure NoSQL announced at Microsoft Ignite Spring 2021
Updates of Azure NoSQL announced at Microsoft Ignite Spring 2021
Swarm mode運用してみた
Swarm mode運用してみた
LINE LIFF with Azure ハンズオン資料 - Azure サービス解説
LINE LIFF with Azure ハンズオン資料 - Azure サービス解説
AzureDevOpsで始めるAndroidのCI/CD
AzureDevOpsで始めるAndroidのCI/CD
Shiva 〜Nextremerをscale upする機械学習環境〜
Shiva 〜Nextremerをscale upする機械学習環境〜
20150905 stream analytics
20150905 stream analytics
How Wantedly (in)directly uses AWS
How Wantedly (in)directly uses AWS
BITRISEを使っています
BITRISEを使っています
Memtest86をかけてみた話
Memtest86をかけてみた話
iOS6時代のTwitter / Facebook連携
iOS6時代のTwitter / Facebook連携
BIOSからUEFI
BIOSからUEFI
Rancher Meetup Tokyo#3 Storageについて
Rancher Meetup Tokyo#3 Storageについて
Docker on azure!進化していくcontainerを覗いてみよう!
Docker on azure!進化していくcontainerを覗いてみよう!
NVMFS 使ってみたとか 言っちゃって マジカジュアルな奴
NVMFS 使ってみたとか 言っちゃって マジカジュアルな奴
Azure Searchで作る検索サービス
Azure Searchで作る検索サービス
君も今日からWebMatrixMan(仮)
君も今日からWebMatrixMan(仮)
Aurora MySQL HandMade Major VersionUp
Aurora MySQL HandMade Major VersionUp
.NETラボ2021年10月 .NETの過去と現在
.NETラボ2021年10月 .NETの過去と現在
サーバー知識不要!のゲームサーバー "Azure PlayFab" で長期運営タイトルを作ろう
サーバー知識不要!のゲームサーバー "Azure PlayFab" で長期運営タイトルを作ろう
Rancherでwindows server上のコンテナを管理できるか
Rancherでwindows server上のコンテナを管理できるか
Viewers also liked
コードはナマモノ 腐らせないために今までやってきたこと
コードはナマモノ 腐らせないために今までやってきたこと
Kazuhiro Oinuma
MySQL 初めてのチューニング
MySQL 初めてのチューニング
Craft works
メンテナブルでありつづけるためのCSS設計
メンテナブルでありつづけるためのCSS設計
拓樹 谷
本当のオブジェクト指向は可読性を上げる
本当のオブジェクト指向は可読性を上げる
Wataru Terada
Advanced nginx in mercari - How to handle over 1,200,000 HTTPS Reqs/Min
Advanced nginx in mercari - How to handle over 1,200,000 HTTPS Reqs/Min
Masahiro Nagano
短期間で新技術を学ぶ技術
短期間で新技術を学ぶ技術
Takafumi ONAKA
逆説のスタートアップ思考
逆説のスタートアップ思考
Takaaki Umada
「速」を落とさないコードレビュー
「速」を落とさないコードレビュー
Takafumi ONAKA
Viewers also liked
(8)
コードはナマモノ 腐らせないために今までやってきたこと
コードはナマモノ 腐らせないために今までやってきたこと
MySQL 初めてのチューニング
MySQL 初めてのチューニング
メンテナブルでありつづけるためのCSS設計
メンテナブルでありつづけるためのCSS設計
本当のオブジェクト指向は可読性を上げる
本当のオブジェクト指向は可読性を上げる
Advanced nginx in mercari - How to handle over 1,200,000 HTTPS Reqs/Min
Advanced nginx in mercari - How to handle over 1,200,000 HTTPS Reqs/Min
短期間で新技術を学ぶ技術
短期間で新技術を学ぶ技術
逆説のスタートアップ思考
逆説のスタートアップ思考
「速」を落とさないコードレビュー
「速」を落とさないコードレビュー
Similar to カジュアルに本番データを開発環境に入れる #mysqlcasual
はじめての Azure 開発
はじめての Azure 開発
Yoshitaka Seo
地方企業がソーシャルゲーム開発を成功させるための10のポイント
地方企業がソーシャルゲーム開発を成功させるための10のポイント
Kentaro Matsui
PPT Full version: 世界中のゲーム分析をしてきたPlayFabが大進化!一緒に裏側の最新データ探索の仕組みを覗いてみよう
PPT Full version: 世界中のゲーム分析をしてきたPlayFabが大進化!一緒に裏側の最新データ探索の仕組みを覗いてみよう
Daisuke Masubuchi
PDF版 世界中のゲーム分析をしてきたPlayFabが大進化!一緒に裏側の最新データ探索の仕組みを覗いてみよう Db tech showcase2020
PDF版 世界中のゲーム分析をしてきたPlayFabが大進化!一緒に裏側の最新データ探索の仕組みを覗いてみよう Db tech showcase2020
Daisuke Masubuchi
さくらのクラウドを使ったシラサギ開発環境の準備
さくらのクラウドを使ったシラサギ開発環境の準備
法林浩之
[db tech showcase Tokyo 2014] C34:[楽天] 詳説 楽天のデータベースアーキテクチャ史 -シングルノードから仮想化フラッシ...
[db tech showcase Tokyo 2014] C34:[楽天] 詳説 楽天のデータベースアーキテクチャ史 -シングルノードから仮想化フラッシ...
Insight Technology, Inc.
2011/12/3 わんくま同盟
2011/12/3 わんくま同盟
貴仁 大和屋
Infrastructure as Codeの取り組みと改善
Infrastructure as Codeの取り組みと改善
Takashi Honda
【20-E-5】実践!Infrastructure as a Codeの取り組みと改善
【20-E-5】実践!Infrastructure as a Codeの取り組みと改善
Developers Summit
スマホ版ログレスでグローバル展開を想定したサーバ構築をAnsibleで試してみた話
スマホ版ログレスでグローバル展開を想定したサーバ構築をAnsibleで試してみた話
Akihiro Sugeno
わんくま同盟名古屋勉強会18回目 ASP.NET MVC3を利用したHTML5な画面開発~クラウドも有るよ!~
わんくま同盟名古屋勉強会18回目 ASP.NET MVC3を利用したHTML5な画面開発~クラウドも有るよ!~
normalian
2011/11/26 Dot netlab
2011/11/26 Dot netlab
貴仁 大和屋
マイクロソフトの提供するMA6向けAPIのご紹介
マイクロソフトの提供するMA6向けAPIのご紹介
Sunao Tomita
Developers Summit 2023 9-D-1「もう悩まされない開発環境、プロジェクトで統一した環境をいつでもどこでも」
Developers Summit 2023 9-D-1「もう悩まされない開発環境、プロジェクトで統一した環境をいつでもどこでも」
Kazumi IWANAGA
使ってみた!ioMemoryで実現する噂のAtomic write!
使ってみた!ioMemoryで実現する噂のAtomic write!
IIJ
ログの書き方がチームの生産性を爆上げする話
ログの書き方がチームの生産性を爆上げする話
Tsuyoshi Ushio
Sql world を支える技術
Sql world を支える技術
Oda Shinsuke
B 2-1 はじめての Windows Azure
B 2-1 はじめての Windows Azure
GoAzure
わんくま東京勉強会#46 Azureセッション資料
わんくま東京勉強会#46 Azureセッション資料
Shinichiro Isago
わんくま東京勉強会#46 Azureセッション資料
わんくま東京勉強会#46 Azureセッション資料
guest628c07
Similar to カジュアルに本番データを開発環境に入れる #mysqlcasual
(20)
はじめての Azure 開発
はじめての Azure 開発
地方企業がソーシャルゲーム開発を成功させるための10のポイント
地方企業がソーシャルゲーム開発を成功させるための10のポイント
PPT Full version: 世界中のゲーム分析をしてきたPlayFabが大進化!一緒に裏側の最新データ探索の仕組みを覗いてみよう
PPT Full version: 世界中のゲーム分析をしてきたPlayFabが大進化!一緒に裏側の最新データ探索の仕組みを覗いてみよう
PDF版 世界中のゲーム分析をしてきたPlayFabが大進化!一緒に裏側の最新データ探索の仕組みを覗いてみよう Db tech showcase2020
PDF版 世界中のゲーム分析をしてきたPlayFabが大進化!一緒に裏側の最新データ探索の仕組みを覗いてみよう Db tech showcase2020
さくらのクラウドを使ったシラサギ開発環境の準備
さくらのクラウドを使ったシラサギ開発環境の準備
[db tech showcase Tokyo 2014] C34:[楽天] 詳説 楽天のデータベースアーキテクチャ史 -シングルノードから仮想化フラッシ...
[db tech showcase Tokyo 2014] C34:[楽天] 詳説 楽天のデータベースアーキテクチャ史 -シングルノードから仮想化フラッシ...
2011/12/3 わんくま同盟
2011/12/3 わんくま同盟
Infrastructure as Codeの取り組みと改善
Infrastructure as Codeの取り組みと改善
【20-E-5】実践!Infrastructure as a Codeの取り組みと改善
【20-E-5】実践!Infrastructure as a Codeの取り組みと改善
スマホ版ログレスでグローバル展開を想定したサーバ構築をAnsibleで試してみた話
スマホ版ログレスでグローバル展開を想定したサーバ構築をAnsibleで試してみた話
わんくま同盟名古屋勉強会18回目 ASP.NET MVC3を利用したHTML5な画面開発~クラウドも有るよ!~
わんくま同盟名古屋勉強会18回目 ASP.NET MVC3を利用したHTML5な画面開発~クラウドも有るよ!~
2011/11/26 Dot netlab
2011/11/26 Dot netlab
マイクロソフトの提供するMA6向けAPIのご紹介
マイクロソフトの提供するMA6向けAPIのご紹介
Developers Summit 2023 9-D-1「もう悩まされない開発環境、プロジェクトで統一した環境をいつでもどこでも」
Developers Summit 2023 9-D-1「もう悩まされない開発環境、プロジェクトで統一した環境をいつでもどこでも」
使ってみた!ioMemoryで実現する噂のAtomic write!
使ってみた!ioMemoryで実現する噂のAtomic write!
ログの書き方がチームの生産性を爆上げする話
ログの書き方がチームの生産性を爆上げする話
Sql world を支える技術
Sql world を支える技術
B 2-1 はじめての Windows Azure
B 2-1 はじめての Windows Azure
わんくま東京勉強会#46 Azureセッション資料
わんくま東京勉強会#46 Azureセッション資料
わんくま東京勉強会#46 Azureセッション資料
わんくま東京勉強会#46 Azureセッション資料
カジュアルに本番データを開発環境に入れる #mysqlcasual
1.
カジュアルに 本番データを 開発環境に入れる MySQL Casual Talks
vol.9 @oinume
2.
自己紹介 ๏ Kazuhiro Oinuma
(@oinume) ๏ MySQL user since v3.23 ๏ CyberAgent,Inc ๏ Ameba Ownd
3.
4.
๏ 簡単にオシャレなWebサイトが作れる ๏ ブログっぽいデザイン、キュレーションメディアのよ うなデザインなどカスタマイズも可能 ๏
Starbucks, VOGUE, NIGO, etc…
5.
カジュアルに 本番データを 開発環境に入れる
6.
動機 ๏ 開発環境でちゃんとしたテストデータを作るの つらい ๏ UGCかつデザインのバリエーションが多い ๏
本番環境ディプロイ後に発見される不具合たち
7.
http://techlife.cookpad.com/entry/2014/10/03/110806
8.
本番データを開発環境 に入れちゃおう
9.
DBサーバー構成 App Replication ELB Slave Master 調査用 RDS
10.
流れ ๏ 1. 調査用のDBからmysqldump ๏
2. 開発環境のDBにインポート ๏ 3. データを開発環境向けにUPDATE ๏ 上記をJenkinsのJobで毎日動かす ๏ あえてレプリケーション方式にはしなかった ๏ リアルタイム性は不要 ๏ レプリが止まった時の対応が面倒そう
11.
補足 ๏ mysqldumpしたファイルのサイズは3GB弱ぐらい ๏ 小規模!! ๏
mysqldump するのに3分ぐらい ๏ dumpファイルをインポートするのに20分ぐらい ๏ MySQLのバージョンは5.6.19 ๏ 5.7じゃなくてすいません(́・ω・`)
12.
第一段階 mysqldumpしてインポートするだけなら簡単
13.
問題 ๏ mysqldumpしてからインポートするため、デー タが一度消えてしまう ๏ →開発環境独自に作ったデータが消えてしまう ๏
対策:開発環境独自のレコードのidを+10億に ๏ AUTO_INCREMENTをずらす
14.
流れ v2 1. 調査用のDBからmysqldump 2.
開発環境DBでid >= 10億 のレコードをバックアップ 3. 1.の本番データを開発環境DBにインポート 4. データを開発環境向けにUPDATE 5. 2.でバックアップしたデータをリストア 6. 各テーブルのAUTO_INCREMENT値をずらす
15.
id >= 10億
のレコード のみmysqldump $ mysqldump -h {db_host} -P {db_port} -u{db_user} -p{db_password} ̶no-create-info ̶order-by-primary ̶default-character-set=utf8mb4 ̶insert-ignore ̶where id >= 10億 {db_name} {table}
16.
AUTO_INCREMENT のずらし方 ๏ INFORATION_SCHEMAから各テーブルの現在 のAUTO_INCREMENT値を取得 ๏ ALTER
TABLE {table} AUTO_INCREMENT=… でずらす
17.
INFORMATION_SCHEMA からAUの値を取得 SELECT t.table_name, t.auto_increment FROM information_schema.tables AS
t INNER JOIN information_schema.columns AS c ON t.table_name = c.table_name WHERE t.table_schema = '{db_name}' AND c.table_schema = {db_name}' AND t.auto_increment IS NOT NULL AND c.column_key = 'PRI' /* 主キーのみ対象 */ ORDER BY t.table_name;
18.
INFORMATION_SCHEMA からAUの値を取得 +--------------------------------+----------------+ ¦ table_name ¦
auto_increment ¦ +--------------------------------+-----------------+ ¦ blog_posts ¦ 900000 ¦ ¦ blog_post_categories ¦ 250000 ¦ ¦ pages ¦ 590000 ¦ … ※数字はフィクションです
19.
AUTO_INCREMENTずらす ALTER TABLE {table}
AUTO_INCREMENT=…
20.
よかったこと ๏ 不具合が本番ディプロイ前に発見しやすくなった ๏ 機能追加・修正のイメージがしやすくなった ๏
ユーザーと同等の体験をして開発できる ๏ 開発時に重いクエリに気付きやすくなった ๏ ALTER TABLEする場合にどのぐらい時間がかか るか簡単に試せる
21.
カジュアルに本番データを 開発環境に入れちゃおう
22.
ありがとう ございました
Download now