SlideShare uma empresa Scribd logo
1 de 34
Baixar para ler offline
Beginnerならきっと役立つ
    master-slave環境
MySQL Beginners Talk 2012年5月29日
            @yut148
自己紹介
      @yut148 ←ワイユーティーでお願いします。
         他特にこだわりはありません。
             鍵ユーザーですがフォロー歓迎です。

     職業 ゲーム会社 (sap とか CPとかです。)
                or
      エンターテイメント会社に勤めています。

      現在は仕事でコードを書いてません。
      今の仕事はどちらかと言えば運用系
      多分インフラエンジニアに属します。
  前職含め、ゲーム会社にてサーバ管理の仕事が多い。
さて、
皆さんの会社のある意味Beginner
(新社会人)の方々は、、
研修期間終わりました?
研修に付きもの、OJTとか言われてませんか?


「おい、うちの会社はOJTなんだ」
       by 経営陣
OJTとは

言わずと知れた、
       On-the-Job Training
というのが本来の意味
が実際。
また企業によってはいきなり業務を行わせ、いざという時のフォローだけ行うことを
OJTと称することがある。指導する側の指導やチェックが確実に行われ指導される側
が報告義務を欠かさなければ成果を出せるが、指導する側・される側のどちらかに
問題があれば成果は期待できない。

                             wikipediaより
     指導やチェックの時間がない。
      Tryさせてそのままかよ。。orz otz
OJTのトレーニングと称して、、

   MySQLインストールのお作法
とありますが、実際会社で何度もインストールされ
てしまっては困りますよね、、

研修時間が設けられる企業ならいいのです
が、教えたい事はいろいろある。
 特にユーザ企業側に就職した場合は通販の事、
GAMEの事、等々
またはお客様の事業について等々
トレーニング環境を作るにしても

実際、
トレーニング専用の予算とか無ければ、機材も無
い。(クラウドにしても)

   webアプリーションで使用する為の
   グローバルIPアドレスなんかない。

といって拒んでしまってはビギナーな方に申し訳な
い。
PaaS環境でmysqlを使えば、

   インストールの手間がなくすぐ使える。

   1回のサインインは必要となってしまいますが、
     mysqlインストールよりかは敷居が低い。
無料枠でmysqlが使えるPaaS ※極々一部
サイト                     特徴/仕様

http://dotcloud.com/    トータル800G程度
                        無料枠だとマスタースレーブ
                        まで。もしくは1webAPPとDB
https://                Shared
www.cloudcontrol.com/   Multi-AZ RDS
                        Max. 2 connections
                        Max. 5 MB

http://xeround.com/     Throughput: up to 1MB/s
                        Connections: up to 5
                        Shared Environment 10Mまで
dotCloud




       MySQL5.1.41-3ubuntu12
mysql@16shots-default-db-0:~$ mysql
Welcome to the MySQL monitor. Commands end with ; or g.
Your MySQL connection id is 193
Server version: 5.1.41-3ubuntu12.10-log (Ubuntu)

Type 'help;' or 'h' for help. Type 'c' to clear the current input statement.

mysql>




                                          ※説明の為、16shotsというアプリケーションを作成しています。
mysql> s
--------------
mysql Ver 14.14 Distrib 5.1.61, for redhat-linux-gnu (x86_64) using readline 5.1

Connection id:         85
Current database:
Current user:       root@ip-10-79-37-178.ec2.internal ←イーモバイルから接続しただけ
SSL:             Not in use
Current pager:         stdout
Using outfile:         ''
Using delimiter:       ;
Server version:        5.1.41-3ubuntu12.10-log (Ubuntu)
Protocol version:      10
Connection:         ??????.dotcloud.com via TCP/IP
Server characterset: latin1
Db characterset: latin1
Client characterset: latin1
Conn. characterset: latin1
TCP port:        18935
Uptime:          16 days 9 hours 52 min 0 sec

Threads: 1 Questions: 274 Slow queries: 0 Opens: 139 Flush tables: 1 Open tables: 33
Queries per second avg: 0.0
mysql> SHOW VARIABLES LIKE 'version%' G
*************************** 1. row ***************************
Variable_name: version
       Value: 5.1.41-3ubuntu12.10-log
*************************** 2. row ***************************
Variable_name: version_comment
       Value: (Ubuntu)
*************************** 3. row ***************************
Variable_name: version_compile_machine
       Value: x86_64
*************************** 4. row ***************************
Variable_name: version_compile_os
       Value: debian-linux-gnu
4 rows in set (0.00 sec)
cloudcontrol




         MySQLversion 5.1.57
[root@localhost ~]# mysql -h mysqlsdb.?????.eu-west-1.rds.amazonaws.com -u username -P
3306 -p databasename
Enter password:
Welcome to the MySQL monitor. Commands end with ; or g.
Your MySQL connection id is 45987481
Server version: 5.1.57-log MySQL Community Server (GPL)

Copyright (c) 2000, 2011, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type 'help;' or 'h' for help. Type 'c' to clear the current input statement.
mysql> s
--------------
mysql Ver 14.14 Distrib 5.1.61, for redhat-linux-gnu (x86_64) using readline 5.1

Connection id:         45987481
Current database: databasename
Current user:    databasename@EM114-48-20-237.pool.e-mobile.ne.jp
SSL:             Not in use
Current pager:         stdout
Using outfile:   ''
Using delimiter: ;
Server version:        5.1.57-log MySQL Community Server (GPL)
Protocol version: 10
Connection:      mysqlsdb.???????.eu-west-1.rds.amazonaws.com via TCP/IP
Server characterset: latin1
Db characterset: latin1
Client characterset: latin1
Conn. characterset: latin1
TCP port:        3306
Uptime:          110 days 5 hours 55 min 5 sec

Threads: 22 Questions: 879893254 Slow queries: 1672 Opens: 21887591 Flush tables: 1
Open tables: 64 Queries per second avg: 92.374
--------------
mysql> SHOW VARIABLES LIKE 'version%' G
*************************** 1. row ***************************
Variable_name: version
       Value: 5.1.57-log
*************************** 2. row ***************************
Variable_name: version_comment
       Value: MySQL Community Server (GPL)
*************************** 3. row ***************************
Variable_name: version_compile_machine
       Value: x86_64
*************************** 4. row ***************************
Variable_name: version_compile_os
       Value: unknown-linux-gnu
4 rows in set (0.43 sec)
xeround




          MySQLversion 5.1.42
[root@localhost ~]# mysql -u username -P 9782 -h instancename.db.xeround.com -p
Enter password:
Welcome to the MySQL monitor. Commands end with ; or g.
Your MySQL connection id is 176
Server version: 5.1.42 Source distribution

Copyright (c) 2000, 2011, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type 'help;' or 'h' for help. Type 'c' to clear the current input statement.

mysql>
mysql> s
Connection id: 23
Current database: mysql

--------------
mysql Ver 14.14 Distrib 5.1.61, for redhat-linux-gnu (x86_64) using readline 5.1

Connection id:         23
Current database: mysql
Current user:    username@EM111-188-50-181.pool.e-mobile.ne.jp
SSL:             Not in use
Current pager:         stdout
Using outfile:   ''
Using delimiter: ;
Server version:        5.1.42 Source distribution
Protocol version: 10
Connection:     ?????.db.xeround.com via TCP/IP
Server characterset: utf8
Db characterset: utf8
Client characterset: latin1
Conn. characterset: latin1
TCP port:        9782
Uptime:          55 min 19 sec

Threads: 3 Questions: 778 Slow queries: 0 Opens: 33 Flush tables: 1 Open tables: 26
Queries per second avg: 0.234
mysql> SHOW VARIABLES LIKE 'version%' G
*************************** 1. row ***************************
Variable_name: version
       Value: 5.1.42
*************************** 2. row ***************************
Variable_name: version_comment
       Value: Source distribution
*************************** 3. row ***************************
Variable_name: version_compile_machine
       Value: x86_64
*************************** 4. row ***************************
Variable_name: version_compile_os
       Value: unknown-linux-gnu
4 rows in set (0.20 sec)
例えばdotcloudで使うなら、

mysqlを使う為の設定    
※mysqlシングルマスター構成

dotcloud.yml
data:
 type: mysql

[root@localhost ~]# tree database/
database/
└── dotcloud.yml


dotcloud create database
dotcloud push database ./database
dotcloudならmaster-slave構成が組めま
す。
mysqlを使う為の設定
[root@localhost ~]# cat dotcloud.yml
www:
  approot: mediawiki
  type: php
db:
  type: mysql-masterslave

 instances: 2             ← ※重要
[root@localhost ~]# dotcloud info 16shots.db
config:
      mysql_masterslave: true
      mysql_password: mysqlpassword
created_at: 1337501349.485523
datacenter: Amazon-us-east-1b
image_version: 1120eda9aa82 (latest)
instances:
      16shots.db.0:
      role: master
      state: up
      16shots.db.1:
      replication_lag: 0s
      role: slave
      state: up
memory: 40M/512M (7%)
ports:
- name: ssh
      url: ssh://mysql@16shots.hostname.dotcloud.com:28612
- name: mysql
      url: mysql://root:mysqlpassword@16shots-hostname.dotcloud.com:27224
state: running
type: mysql-masterslave
mysql> SHOW PROCESSLIST G
*************************** 1. row ***************************
       Id: 47
  User: root
  Host: ip-10-79-37-178.ec2.internal:33156
       db: NULL
Command: Binlog Dump
  Time: 621
 State: Has sent all binlog to slave; waiting for binlog to be updated
  Info: NULL
*************************** 2. row ***************************
       Id: 48
  User: root
  Host: localhost
       db: NULL
Command: Query
  Time: 0
 State: NULL
  Info: SHOW PROCESSLIST
2 rows in set (0.01 sec)
で肝心のslave側にログインしたいのだか。。
mysql@16shots-default-db-0:~$ mysql
Welcome to the MySQL monitor. Commands end with ; or g.
Your MySQL connection id is 221
Server version: 5.1.41-3ubuntu12.10-log (Ubuntu)

Type 'help;' or 'h' for help. Type 'c' to clear the current input statement.

mysql> SHOW SLAVE HOSTS;
Empty set (0.00 sec)

mysql>

         スレーブのマスター昇格は自動で行われる
          (未確認 ※壊れた経験がありません。)

                     説明オワタ\(^o^)/
念のため説明しますと、
[root@localhost ~]# dotcloud ssh 16shots.db
# $SHELL
mysql@16shots-default-db-0:~$ ifconfig
Warning: cannot open /proc/net/dev (No such file or directory). Limited output.

mysql@16shots-default-db-0:~$ ss
State    Recv-Q Send-Q                     Local Address:Port                        Peer
Address:Port

mysql@16shots-default-db-0:~$ netstat -anp
Active Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address          Foreign Address    State         PID/Program name
Active UNIX domain sockets (servers and established)
Proto RefCnt Flags Type         State      I-Node PID/Program name          Path

        これらのコマンドではIPアドレスに関する情報は得られません。( ´・ω・)
でもdotcloudを使うといいところ
mysqlをインストールし直すのも

 dotcloud destroy hogehoge
 dotcloud create hogehoge
 dotcloud push hogehoge ./

         #ワイルド
         に出来ます。
まとめ


  mysqlを使うだけなら
  自前でサーバを用意する
     必要は無い。
まとめ
mysqlを使うだけなら
 自前でサーバを用意する必要は無い。


 学習目的のインストールは
       非常に大切
まとめ
mysqlを使うだけなら
 自前でサーバを用意する必要は無い。


 学習目的のインストールは
       非常に大切
利用が簡単なPaaSもいいけど
 資格を取るなら自前で用意
でもちょっと思い出して欲しい事

デブサミ 2011

【17-A-4】大規模Webサービスのためのデータベー
ス技術の現在・未来 松信嘉範 氏

http://togetter.com/li/102067
運用メンバーはサーバほどスケールしない!もっと大きな声で言ってほしい!ww #devsumi
oranie 2011/02/17 15:00:16
「運用メンバーはサーバほどスケールしない」まさに、サーバは買ってこれるけど人は買って来られないよなぁ #devsumi 17-A-4
ymkx_ 2011/02/17 15:00:18
運用メンバー数はサーバ台数ほどスケールしないw。サーバ100台買うのと採用するの考えれば当然。サーバならボリューム
ディスカウントだってあるし。
#devsumi napooko 2011/02/17 15:01:42
Beginnerに学んで欲しい事
     まずはバージョンを確認。
      現在の動作を確認。

         次に
   どの様な変更が加えられるか?
   デフォルトの設定は忘れずに。
    ↑設定変更後と変更前では
    どの様な違いが出るのか?
Beginner以外の方に忘れないでいた
だきたい事
いちいちサーバを用意する時間も予算も無い場合
は

        PaaS
    という選択肢もある事を忘れずに

※ただしセキュリティや職務上重要なデータが流
失してしまわぬ様に注意
配布用Beginnerならきっと役立つmaster slave環境

Mais conteúdo relacionado

Mais procurados

MySQLインストールのお作法
MySQLインストールのお作法MySQLインストールのお作法
MySQLインストールのお作法Meiji Kimura
 
MySQL clients
MySQL clientsMySQL clients
MySQL clientsyoku0825
 
今から備えるMySQL最新バージョン5.7
今から備えるMySQL最新バージョン5.7今から備えるMySQL最新バージョン5.7
今から備えるMySQL最新バージョン5.7yoku0825
 
Add PLEASE clause to Oracle Database
Add PLEASE clause to Oracle DatabaseAdd PLEASE clause to Oracle Database
Add PLEASE clause to Oracle DatabaseNoriyoshi Shinoda
 
Handlersocket 20110517
Handlersocket 20110517Handlersocket 20110517
Handlersocket 20110517akirahiguchi
 
MySQLerの7つ道具
MySQLerの7つ道具MySQLerの7つ道具
MySQLerの7つ道具yoku0825
 
Solr meeting in Japan 2011
Solr meeting in Japan 2011Solr meeting in Japan 2011
Solr meeting in Japan 2011Takahiko Ito
 
PostgreSQL Unconference #26 No Error on PostgreSQL
PostgreSQL Unconference #26 No Error on PostgreSQLPostgreSQL Unconference #26 No Error on PostgreSQL
PostgreSQL Unconference #26 No Error on PostgreSQLNoriyoshi Shinoda
 
Handlersocket 20140218
Handlersocket 20140218Handlersocket 20140218
Handlersocket 20140218akirahiguchi
 
Mysql casual fukuoa_vlo_2
Mysql casual fukuoa_vlo_2Mysql casual fukuoa_vlo_2
Mysql casual fukuoa_vlo_2Makoto Haruyama
 
What's New in MySQL 5.7 Optimizer @MySQL User Conference Tokyo 2015
What's New in MySQL 5.7 Optimizer @MySQL User Conference Tokyo 2015What's New in MySQL 5.7 Optimizer @MySQL User Conference Tokyo 2015
What's New in MySQL 5.7 Optimizer @MySQL User Conference Tokyo 2015Mikiya Okuno
 
MySQL 5.7が魅せる新しい運用の形
MySQL 5.7が魅せる新しい運用の形MySQL 5.7が魅せる新しい運用の形
MySQL 5.7が魅せる新しい運用の形yoku0825
 
MySQLを割と一人で300台管理する技術
MySQLを割と一人で300台管理する技術MySQLを割と一人で300台管理する技術
MySQLを割と一人で300台管理する技術yoku0825
 
MySQL 5.6新機能解説@dbtechshowcase2012
MySQL 5.6新機能解説@dbtechshowcase2012MySQL 5.6新機能解説@dbtechshowcase2012
MySQL 5.6新機能解説@dbtechshowcase2012Mikiya Okuno
 
MySQLerの7つ道具 plus
MySQLerの7つ道具 plusMySQLerの7つ道具 plus
MySQLerの7つ道具 plusyoku0825
 
[D14] MySQL 5.6時代のパフォーマンスチューニング *db tech showcase 2013 Tokyo
[D14] MySQL 5.6時代のパフォーマンスチューニング *db tech showcase 2013 Tokyo[D14] MySQL 5.6時代のパフォーマンスチューニング *db tech showcase 2013 Tokyo
[D14] MySQL 5.6時代のパフォーマンスチューニング *db tech showcase 2013 Tokyoyoyamasaki
 

Mais procurados (18)

Babelfish Compatibility
Babelfish CompatibilityBabelfish Compatibility
Babelfish Compatibility
 
MySQLインストールのお作法
MySQLインストールのお作法MySQLインストールのお作法
MySQLインストールのお作法
 
MySQL clients
MySQL clientsMySQL clients
MySQL clients
 
今から備えるMySQL最新バージョン5.7
今から備えるMySQL最新バージョン5.7今から備えるMySQL最新バージョン5.7
今から備えるMySQL最新バージョン5.7
 
Add PLEASE clause to Oracle Database
Add PLEASE clause to Oracle DatabaseAdd PLEASE clause to Oracle Database
Add PLEASE clause to Oracle Database
 
Handlersocket 20110517
Handlersocket 20110517Handlersocket 20110517
Handlersocket 20110517
 
MySQLerの7つ道具
MySQLerの7つ道具MySQLerの7つ道具
MySQLerの7つ道具
 
ヤフー社内でやってるMySQLチューニングセミナー大公開
ヤフー社内でやってるMySQLチューニングセミナー大公開ヤフー社内でやってるMySQLチューニングセミナー大公開
ヤフー社内でやってるMySQLチューニングセミナー大公開
 
Solr meeting in Japan 2011
Solr meeting in Japan 2011Solr meeting in Japan 2011
Solr meeting in Japan 2011
 
PostgreSQL Unconference #26 No Error on PostgreSQL
PostgreSQL Unconference #26 No Error on PostgreSQLPostgreSQL Unconference #26 No Error on PostgreSQL
PostgreSQL Unconference #26 No Error on PostgreSQL
 
Handlersocket 20140218
Handlersocket 20140218Handlersocket 20140218
Handlersocket 20140218
 
Mysql casual fukuoa_vlo_2
Mysql casual fukuoa_vlo_2Mysql casual fukuoa_vlo_2
Mysql casual fukuoa_vlo_2
 
What's New in MySQL 5.7 Optimizer @MySQL User Conference Tokyo 2015
What's New in MySQL 5.7 Optimizer @MySQL User Conference Tokyo 2015What's New in MySQL 5.7 Optimizer @MySQL User Conference Tokyo 2015
What's New in MySQL 5.7 Optimizer @MySQL User Conference Tokyo 2015
 
MySQL 5.7が魅せる新しい運用の形
MySQL 5.7が魅せる新しい運用の形MySQL 5.7が魅せる新しい運用の形
MySQL 5.7が魅せる新しい運用の形
 
MySQLを割と一人で300台管理する技術
MySQLを割と一人で300台管理する技術MySQLを割と一人で300台管理する技術
MySQLを割と一人で300台管理する技術
 
MySQL 5.6新機能解説@dbtechshowcase2012
MySQL 5.6新機能解説@dbtechshowcase2012MySQL 5.6新機能解説@dbtechshowcase2012
MySQL 5.6新機能解説@dbtechshowcase2012
 
MySQLerの7つ道具 plus
MySQLerの7つ道具 plusMySQLerの7つ道具 plus
MySQLerの7つ道具 plus
 
[D14] MySQL 5.6時代のパフォーマンスチューニング *db tech showcase 2013 Tokyo
[D14] MySQL 5.6時代のパフォーマンスチューニング *db tech showcase 2013 Tokyo[D14] MySQL 5.6時代のパフォーマンスチューニング *db tech showcase 2013 Tokyo
[D14] MySQL 5.6時代のパフォーマンスチューニング *db tech showcase 2013 Tokyo
 

Semelhante a 配布用Beginnerならきっと役立つmaster slave環境

Apache cloudstack4.0インストール
Apache cloudstack4.0インストールApache cloudstack4.0インストール
Apache cloudstack4.0インストールYasuhiro Arai
 
Trema での Open vSwitch
Trema での Open vSwitchTrema での Open vSwitch
Trema での Open vSwitchkazuyas
 
Apache CloudStack 4.0 インストール(ver0.5)
Apache CloudStack 4.0 インストール(ver0.5)Apache CloudStack 4.0 インストール(ver0.5)
Apache CloudStack 4.0 インストール(ver0.5)Yasuhiro Arai
 
Cloud stack徹底入門7章 20130514
Cloud stack徹底入門7章 20130514Cloud stack徹底入門7章 20130514
Cloud stack徹底入門7章 20130514samemoon
 
[db tech showcase Tokyo 2017] D21: ついに Red Hat Enterprise Linuxで SQL Serverが使...
[db tech showcase Tokyo 2017] D21: ついに Red Hat Enterprise Linuxで SQL Serverが使...[db tech showcase Tokyo 2017] D21: ついに Red Hat Enterprise Linuxで SQL Serverが使...
[db tech showcase Tokyo 2017] D21: ついに Red Hat Enterprise Linuxで SQL Serverが使...Insight Technology, Inc.
 
tcpdump & xtrabackup @ MySQL Casual Talks #1
tcpdump & xtrabackup @ MySQL Casual Talks #1tcpdump & xtrabackup @ MySQL Casual Talks #1
tcpdump & xtrabackup @ MySQL Casual Talks #1Ryosuke IWANAGA
 
Web Operations and Perl kansai.pm#14
Web Operations and Perl kansai.pm#14Web Operations and Perl kansai.pm#14
Web Operations and Perl kansai.pm#14Masahiro Nagano
 
泥臭い運用から、プログラマブルインフラ構築(に行きたい)
泥臭い運用から、プログラマブルインフラ構築(に行きたい) 泥臭い運用から、プログラマブルインフラ構築(に行きたい)
泥臭い運用から、プログラマブルインフラ構築(に行きたい) Akihiro Kuwano
 
MySQL Clusterを運用して10ヶ月間
MySQL Clusterを運用して10ヶ月間MySQL Clusterを運用して10ヶ月間
MySQL Clusterを運用して10ヶ月間hiroi10
 
20140612_Docker上でCloudStackを動かしてみる!!
20140612_Docker上でCloudStackを動かしてみる!!20140612_Docker上でCloudStackを動かしてみる!!
20140612_Docker上でCloudStackを動かしてみる!!Midori Oge
 
OpenStackでも重要な役割を果たすPacemakerを知ろう!
OpenStackでも重要な役割を果たすPacemakerを知ろう!OpenStackでも重要な役割を果たすPacemakerを知ろう!
OpenStackでも重要な役割を果たすPacemakerを知ろう!ksk_ha
 
Ruby Postgres 2009
Ruby Postgres 2009Ruby Postgres 2009
Ruby Postgres 2009Akio Ishida
 
LINEのMySQL運用について
LINEのMySQL運用についてLINEのMySQL運用について
LINEのMySQL運用についてLINE Corporation
 
TCP connectionの保存と復元
TCP connectionの保存と復元TCP connectionの保存と復元
TCP connectionの保存と復元mittyorz
 
CentOS 8で標準搭載! 「389-ds」で構築する 認証サーバーについて
CentOS 8で標準搭載! 「389-ds」で構築する 認証サーバーについてCentOS 8で標準搭載! 「389-ds」で構築する 認証サーバーについて
CentOS 8で標準搭載! 「389-ds」で構築する 認証サーバーについてNobuyuki Sasaki
 
SCUGJ第18回勉強会:よろしい、ならばVMMだ
SCUGJ第18回勉強会:よろしい、ならばVMMだSCUGJ第18回勉強会:よろしい、ならばVMMだ
SCUGJ第18回勉強会:よろしい、ならばVMMだwind06106
 

Semelhante a 配布用Beginnerならきっと役立つmaster slave環境 (20)

Apache cloudstack4.0インストール
Apache cloudstack4.0インストールApache cloudstack4.0インストール
Apache cloudstack4.0インストール
 
Trema での Open vSwitch
Trema での Open vSwitchTrema での Open vSwitch
Trema での Open vSwitch
 
Apache CloudStack 4.0 インストール(ver0.5)
Apache CloudStack 4.0 インストール(ver0.5)Apache CloudStack 4.0 インストール(ver0.5)
Apache CloudStack 4.0 インストール(ver0.5)
 
Cloud stack徹底入門7章 20130514
Cloud stack徹底入門7章 20130514Cloud stack徹底入門7章 20130514
Cloud stack徹底入門7章 20130514
 
[db tech showcase Tokyo 2017] D21: ついに Red Hat Enterprise Linuxで SQL Serverが使...
[db tech showcase Tokyo 2017] D21: ついに Red Hat Enterprise Linuxで SQL Serverが使...[db tech showcase Tokyo 2017] D21: ついに Red Hat Enterprise Linuxで SQL Serverが使...
[db tech showcase Tokyo 2017] D21: ついに Red Hat Enterprise Linuxで SQL Serverが使...
 
tcpdump & xtrabackup @ MySQL Casual Talks #1
tcpdump & xtrabackup @ MySQL Casual Talks #1tcpdump & xtrabackup @ MySQL Casual Talks #1
tcpdump & xtrabackup @ MySQL Casual Talks #1
 
Lxc on cloud
Lxc on cloudLxc on cloud
Lxc on cloud
 
Web Operations and Perl kansai.pm#14
Web Operations and Perl kansai.pm#14Web Operations and Perl kansai.pm#14
Web Operations and Perl kansai.pm#14
 
osoljp 2011.08
osoljp 2011.08osoljp 2011.08
osoljp 2011.08
 
泥臭い運用から、プログラマブルインフラ構築(に行きたい)
泥臭い運用から、プログラマブルインフラ構築(に行きたい) 泥臭い運用から、プログラマブルインフラ構築(に行きたい)
泥臭い運用から、プログラマブルインフラ構築(に行きたい)
 
20150630_MySQL勉強会
20150630_MySQL勉強会20150630_MySQL勉強会
20150630_MySQL勉強会
 
MySQL Clusterを運用して10ヶ月間
MySQL Clusterを運用して10ヶ月間MySQL Clusterを運用して10ヶ月間
MySQL Clusterを運用して10ヶ月間
 
20140612_Docker上でCloudStackを動かしてみる!!
20140612_Docker上でCloudStackを動かしてみる!!20140612_Docker上でCloudStackを動かしてみる!!
20140612_Docker上でCloudStackを動かしてみる!!
 
OpenStackでも重要な役割を果たすPacemakerを知ろう!
OpenStackでも重要な役割を果たすPacemakerを知ろう!OpenStackでも重要な役割を果たすPacemakerを知ろう!
OpenStackでも重要な役割を果たすPacemakerを知ろう!
 
Ruby Postgres 2009
Ruby Postgres 2009Ruby Postgres 2009
Ruby Postgres 2009
 
LINEのMySQL運用について
LINEのMySQL運用についてLINEのMySQL運用について
LINEのMySQL運用について
 
TCP connectionの保存と復元
TCP connectionの保存と復元TCP connectionの保存と復元
TCP connectionの保存と復元
 
CentOS 8で標準搭載! 「389-ds」で構築する 認証サーバーについて
CentOS 8で標準搭載! 「389-ds」で構築する 認証サーバーについてCentOS 8で標準搭載! 「389-ds」で構築する 認証サーバーについて
CentOS 8で標準搭載! 「389-ds」で構築する 認証サーバーについて
 
Ansible npstudy-shtsuchi
Ansible npstudy-shtsuchiAnsible npstudy-shtsuchi
Ansible npstudy-shtsuchi
 
SCUGJ第18回勉強会:よろしい、ならばVMMだ
SCUGJ第18回勉強会:よろしい、ならばVMMだSCUGJ第18回勉強会:よろしい、ならばVMMだ
SCUGJ第18回勉強会:よろしい、ならばVMMだ
 

Mais de yut148atgmaildotcom

Confluence4.3でgoogleカレンダーを表示する
Confluence4.3でgoogleカレンダーを表示するConfluence4.3でgoogleカレンダーを表示する
Confluence4.3でgoogleカレンダーを表示するyut148atgmaildotcom
 
配布用Supervisordによるnode.jsの運用
配布用Supervisordによるnode.jsの運用配布用Supervisordによるnode.jsの運用
配布用Supervisordによるnode.jsの運用yut148atgmaildotcom
 
配布用稼動中の4 uサーバを36uまで一人で上げた技術
配布用稼動中の4 uサーバを36uまで一人で上げた技術配布用稼動中の4 uサーバを36uまで一人で上げた技術
配布用稼動中の4 uサーバを36uまで一人で上げた技術yut148atgmaildotcom
 
配布用Cacti running with cherokee
配布用Cacti running with cherokee配布用Cacti running with cherokee
配布用Cacti running with cherokeeyut148atgmaildotcom
 
配布用Dotcloudによるすぐ始めるtwitterwebアプリ開発#twtr hack
配布用Dotcloudによるすぐ始めるtwitterwebアプリ開発#twtr hack配布用Dotcloudによるすぐ始めるtwitterwebアプリ開発#twtr hack
配布用Dotcloudによるすぐ始めるtwitterwebアプリ開発#twtr hackyut148atgmaildotcom
 
Webサーバ勉強会#5mod sedについて
Webサーバ勉強会#5mod sedについてWebサーバ勉強会#5mod sedについて
Webサーバ勉強会#5mod sedについてyut148atgmaildotcom
 

Mais de yut148atgmaildotcom (6)

Confluence4.3でgoogleカレンダーを表示する
Confluence4.3でgoogleカレンダーを表示するConfluence4.3でgoogleカレンダーを表示する
Confluence4.3でgoogleカレンダーを表示する
 
配布用Supervisordによるnode.jsの運用
配布用Supervisordによるnode.jsの運用配布用Supervisordによるnode.jsの運用
配布用Supervisordによるnode.jsの運用
 
配布用稼動中の4 uサーバを36uまで一人で上げた技術
配布用稼動中の4 uサーバを36uまで一人で上げた技術配布用稼動中の4 uサーバを36uまで一人で上げた技術
配布用稼動中の4 uサーバを36uまで一人で上げた技術
 
配布用Cacti running with cherokee
配布用Cacti running with cherokee配布用Cacti running with cherokee
配布用Cacti running with cherokee
 
配布用Dotcloudによるすぐ始めるtwitterwebアプリ開発#twtr hack
配布用Dotcloudによるすぐ始めるtwitterwebアプリ開発#twtr hack配布用Dotcloudによるすぐ始めるtwitterwebアプリ開発#twtr hack
配布用Dotcloudによるすぐ始めるtwitterwebアプリ開発#twtr hack
 
Webサーバ勉強会#5mod sedについて
Webサーバ勉強会#5mod sedについてWebサーバ勉強会#5mod sedについて
Webサーバ勉強会#5mod sedについて
 

配布用Beginnerならきっと役立つmaster slave環境

  • 1. Beginnerならきっと役立つ master-slave環境 MySQL Beginners Talk 2012年5月29日 @yut148
  • 2. 自己紹介 @yut148 ←ワイユーティーでお願いします。          他特にこだわりはありません。  鍵ユーザーですがフォロー歓迎です。 職業 ゲーム会社 (sap とか CPとかです。) or エンターテイメント会社に勤めています。 現在は仕事でコードを書いてません。 今の仕事はどちらかと言えば運用系 多分インフラエンジニアに属します。 前職含め、ゲーム会社にてサーバ管理の仕事が多い。
  • 4. OJTとは 言わずと知れた、 On-the-Job Training というのが本来の意味 が実際。 また企業によってはいきなり業務を行わせ、いざという時のフォローだけ行うことを OJTと称することがある。指導する側の指導やチェックが確実に行われ指導される側 が報告義務を欠かさなければ成果を出せるが、指導する側・される側のどちらかに 問題があれば成果は期待できない。 wikipediaより 指導やチェックの時間がない。 Tryさせてそのままかよ。。orz otz
  • 5. OJTのトレーニングと称して、、 MySQLインストールのお作法 とありますが、実際会社で何度もインストールされ てしまっては困りますよね、、 研修時間が設けられる企業ならいいのです が、教えたい事はいろいろある。  特にユーザ企業側に就職した場合は通販の事、 GAMEの事、等々 またはお客様の事業について等々
  • 6. トレーニング環境を作るにしても 実際、 トレーニング専用の予算とか無ければ、機材も無 い。(クラウドにしても) webアプリーションで使用する為の グローバルIPアドレスなんかない。 といって拒んでしまってはビギナーな方に申し訳な い。
  • 7. PaaS環境でmysqlを使えば、 インストールの手間がなくすぐ使える。 1回のサインインは必要となってしまいますが、 mysqlインストールよりかは敷居が低い。
  • 8. 無料枠でmysqlが使えるPaaS ※極々一部 サイト 特徴/仕様 http://dotcloud.com/ トータル800G程度 無料枠だとマスタースレーブ まで。もしくは1webAPPとDB https:// Shared www.cloudcontrol.com/ Multi-AZ RDS Max. 2 connections Max. 5 MB http://xeround.com/ Throughput: up to 1MB/s Connections: up to 5 Shared Environment 10Mまで
  • 9. dotCloud MySQL5.1.41-3ubuntu12
  • 10. mysql@16shots-default-db-0:~$ mysql Welcome to the MySQL monitor. Commands end with ; or g. Your MySQL connection id is 193 Server version: 5.1.41-3ubuntu12.10-log (Ubuntu) Type 'help;' or 'h' for help. Type 'c' to clear the current input statement. mysql> ※説明の為、16shotsというアプリケーションを作成しています。
  • 11. mysql> s -------------- mysql Ver 14.14 Distrib 5.1.61, for redhat-linux-gnu (x86_64) using readline 5.1 Connection id: 85 Current database: Current user: root@ip-10-79-37-178.ec2.internal ←イーモバイルから接続しただけ SSL: Not in use Current pager: stdout Using outfile: '' Using delimiter: ; Server version: 5.1.41-3ubuntu12.10-log (Ubuntu) Protocol version: 10 Connection: ??????.dotcloud.com via TCP/IP Server characterset: latin1 Db characterset: latin1 Client characterset: latin1 Conn. characterset: latin1 TCP port: 18935 Uptime: 16 days 9 hours 52 min 0 sec Threads: 1 Questions: 274 Slow queries: 0 Opens: 139 Flush tables: 1 Open tables: 33 Queries per second avg: 0.0
  • 12. mysql> SHOW VARIABLES LIKE 'version%' G *************************** 1. row *************************** Variable_name: version Value: 5.1.41-3ubuntu12.10-log *************************** 2. row *************************** Variable_name: version_comment Value: (Ubuntu) *************************** 3. row *************************** Variable_name: version_compile_machine Value: x86_64 *************************** 4. row *************************** Variable_name: version_compile_os Value: debian-linux-gnu 4 rows in set (0.00 sec)
  • 13. cloudcontrol MySQLversion 5.1.57
  • 14. [root@localhost ~]# mysql -h mysqlsdb.?????.eu-west-1.rds.amazonaws.com -u username -P 3306 -p databasename Enter password: Welcome to the MySQL monitor. Commands end with ; or g. Your MySQL connection id is 45987481 Server version: 5.1.57-log MySQL Community Server (GPL) Copyright (c) 2000, 2011, Oracle and/or its affiliates. All rights reserved. Oracle is a registered trademark of Oracle Corporation and/or its affiliates. Other names may be trademarks of their respective owners. Type 'help;' or 'h' for help. Type 'c' to clear the current input statement.
  • 15. mysql> s -------------- mysql Ver 14.14 Distrib 5.1.61, for redhat-linux-gnu (x86_64) using readline 5.1 Connection id: 45987481 Current database: databasename Current user: databasename@EM114-48-20-237.pool.e-mobile.ne.jp SSL: Not in use Current pager: stdout Using outfile: '' Using delimiter: ; Server version: 5.1.57-log MySQL Community Server (GPL) Protocol version: 10 Connection: mysqlsdb.???????.eu-west-1.rds.amazonaws.com via TCP/IP Server characterset: latin1 Db characterset: latin1 Client characterset: latin1 Conn. characterset: latin1 TCP port: 3306 Uptime: 110 days 5 hours 55 min 5 sec Threads: 22 Questions: 879893254 Slow queries: 1672 Opens: 21887591 Flush tables: 1 Open tables: 64 Queries per second avg: 92.374 --------------
  • 16. mysql> SHOW VARIABLES LIKE 'version%' G *************************** 1. row *************************** Variable_name: version Value: 5.1.57-log *************************** 2. row *************************** Variable_name: version_comment Value: MySQL Community Server (GPL) *************************** 3. row *************************** Variable_name: version_compile_machine Value: x86_64 *************************** 4. row *************************** Variable_name: version_compile_os Value: unknown-linux-gnu 4 rows in set (0.43 sec)
  • 17. xeround MySQLversion 5.1.42
  • 18. [root@localhost ~]# mysql -u username -P 9782 -h instancename.db.xeround.com -p Enter password: Welcome to the MySQL monitor. Commands end with ; or g. Your MySQL connection id is 176 Server version: 5.1.42 Source distribution Copyright (c) 2000, 2011, Oracle and/or its affiliates. All rights reserved. Oracle is a registered trademark of Oracle Corporation and/or its affiliates. Other names may be trademarks of their respective owners. Type 'help;' or 'h' for help. Type 'c' to clear the current input statement. mysql>
  • 19. mysql> s Connection id: 23 Current database: mysql -------------- mysql Ver 14.14 Distrib 5.1.61, for redhat-linux-gnu (x86_64) using readline 5.1 Connection id: 23 Current database: mysql Current user: username@EM111-188-50-181.pool.e-mobile.ne.jp SSL: Not in use Current pager: stdout Using outfile: '' Using delimiter: ; Server version: 5.1.42 Source distribution Protocol version: 10 Connection: ?????.db.xeround.com via TCP/IP Server characterset: utf8 Db characterset: utf8 Client characterset: latin1 Conn. characterset: latin1 TCP port: 9782 Uptime: 55 min 19 sec Threads: 3 Questions: 778 Slow queries: 0 Opens: 33 Flush tables: 1 Open tables: 26 Queries per second avg: 0.234
  • 20. mysql> SHOW VARIABLES LIKE 'version%' G *************************** 1. row *************************** Variable_name: version Value: 5.1.42 *************************** 2. row *************************** Variable_name: version_comment Value: Source distribution *************************** 3. row *************************** Variable_name: version_compile_machine Value: x86_64 *************************** 4. row *************************** Variable_name: version_compile_os Value: unknown-linux-gnu 4 rows in set (0.20 sec)
  • 21. 例えばdotcloudで使うなら、 mysqlを使う為の設定     ※mysqlシングルマスター構成 dotcloud.yml data: type: mysql [root@localhost ~]# tree database/ database/ └── dotcloud.yml dotcloud create database dotcloud push database ./database
  • 22. dotcloudならmaster-slave構成が組めま す。 mysqlを使う為の設定 [root@localhost ~]# cat dotcloud.yml www: approot: mediawiki type: php db: type: mysql-masterslave instances: 2         ← ※重要
  • 23. [root@localhost ~]# dotcloud info 16shots.db config: mysql_masterslave: true mysql_password: mysqlpassword created_at: 1337501349.485523 datacenter: Amazon-us-east-1b image_version: 1120eda9aa82 (latest) instances: 16shots.db.0: role: master state: up 16shots.db.1: replication_lag: 0s role: slave state: up memory: 40M/512M (7%) ports: - name: ssh url: ssh://mysql@16shots.hostname.dotcloud.com:28612 - name: mysql url: mysql://root:mysqlpassword@16shots-hostname.dotcloud.com:27224 state: running type: mysql-masterslave
  • 24. mysql> SHOW PROCESSLIST G *************************** 1. row *************************** Id: 47 User: root Host: ip-10-79-37-178.ec2.internal:33156 db: NULL Command: Binlog Dump Time: 621 State: Has sent all binlog to slave; waiting for binlog to be updated Info: NULL *************************** 2. row *************************** Id: 48 User: root Host: localhost db: NULL Command: Query Time: 0 State: NULL Info: SHOW PROCESSLIST 2 rows in set (0.01 sec)
  • 25. で肝心のslave側にログインしたいのだか。。 mysql@16shots-default-db-0:~$ mysql Welcome to the MySQL monitor. Commands end with ; or g. Your MySQL connection id is 221 Server version: 5.1.41-3ubuntu12.10-log (Ubuntu) Type 'help;' or 'h' for help. Type 'c' to clear the current input statement. mysql> SHOW SLAVE HOSTS; Empty set (0.00 sec) mysql> スレーブのマスター昇格は自動で行われる (未確認 ※壊れた経験がありません。) 説明オワタ\(^o^)/
  • 26. 念のため説明しますと、 [root@localhost ~]# dotcloud ssh 16shots.db # $SHELL mysql@16shots-default-db-0:~$ ifconfig Warning: cannot open /proc/net/dev (No such file or directory). Limited output. mysql@16shots-default-db-0:~$ ss State Recv-Q Send-Q Local Address:Port Peer Address:Port mysql@16shots-default-db-0:~$ netstat -anp Active Internet connections (servers and established) Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name Active UNIX domain sockets (servers and established) Proto RefCnt Flags Type State I-Node PID/Program name Path これらのコマンドではIPアドレスに関する情報は得られません。( ´・ω・)
  • 27. でもdotcloudを使うといいところ mysqlをインストールし直すのも dotcloud destroy hogehoge dotcloud create hogehoge dotcloud push hogehoge ./ #ワイルド に出来ます。
  • 28. まとめ mysqlを使うだけなら 自前でサーバを用意する 必要は無い。
  • 30. まとめ mysqlを使うだけなら  自前でサーバを用意する必要は無い。 学習目的のインストールは 非常に大切 利用が簡単なPaaSもいいけど 資格を取るなら自前で用意
  • 31. でもちょっと思い出して欲しい事 デブサミ 2011 【17-A-4】大規模Webサービスのためのデータベー ス技術の現在・未来 松信嘉範 氏 http://togetter.com/li/102067 運用メンバーはサーバほどスケールしない!もっと大きな声で言ってほしい!ww #devsumi oranie 2011/02/17 15:00:16 「運用メンバーはサーバほどスケールしない」まさに、サーバは買ってこれるけど人は買って来られないよなぁ #devsumi 17-A-4 ymkx_ 2011/02/17 15:00:18 運用メンバー数はサーバ台数ほどスケールしないw。サーバ100台買うのと採用するの考えれば当然。サーバならボリューム ディスカウントだってあるし。 #devsumi napooko 2011/02/17 15:01:42
  • 32. Beginnerに学んで欲しい事 まずはバージョンを確認。 現在の動作を確認。 次に どの様な変更が加えられるか? デフォルトの設定は忘れずに。 ↑設定変更後と変更前では どの様な違いが出るのか?
  • 33. Beginner以外の方に忘れないでいた だきたい事 いちいちサーバを用意する時間も予算も無い場合 は PaaS という選択肢もある事を忘れずに ※ただしセキュリティや職務上重要なデータが流 失してしまわぬ様に注意