MySQLの最近のブログ記事

こんにちは。初めて会社のブログを書きます。吉川です。

先日、月に一度行われている社内勉強会(hbstyle)にて、下記の発表をしました。

MySQL 5.6.10 以下に存在する レプリケーションのバグと原因特定について (Heartbeats 社内勉強会 2014/12/11)

この件に関して、社内・外から反響がありましたので、詳細についてご紹介します。

斎藤です。こんにちは。

今日は、MySQLにてレプリケーション構成において、マスタサーバのフェイルオーバーを司るmysql-master-ha(以下、MHA)を用いる際、マスタサーバ接続先の切り替えにHAProxyを使ってみようというお話です。

※MHAは0.53.0(公式パッケージ)、MySQLは5.5.25a(Oracle公式パッケージ)、HAProxyは1.4.22(CentOS6標準パッケージ)、OSはCentOS 6.3 x86_64を用いました。

※MHAによる冗長化およびHAProxyによるMySQLの負荷分散の設定を経験された事がある前提で記述します。

斎藤です。こんにちは。

Chef の話題がアツくなっている今日この頃、みなさまいかがお過ごしでしょうか?Chefの解説本も出つつある今日この頃ではありますが、プログラミングそのものに慣れないうちはそれさえ読むのもちょっと大変かもしれません。そこで今回は、 Chef のレシピ+ライブラリを用いて、MySQLの設定の自動化を試します。いわゆる「写経」から始めてみて、少しずつ「手動」からプログラムを通じた「自動化」にチャレンジしてみましょう。

※Chef 11.04.0, knife-solo 0.2.0, Ruby 1.9.3p327, CentOS 6.3 で検証しています。

こんにちは。CTOの馬場です。

ちょっと、いや、かなり間が空いてしまいましたが、今回もインフラエンジニア向けにちょっとした情報を紹介します。

先日hbstudy#13が開催されました。

奥野さんからお話しいただいた「Art Of MySQL Replication」の中で紹介されていた、Blackholeストレージエンジンの活用のところで目からウロコだったので、補足してみます。

Blackholeストレージエンジンの活用方法としては、以下のものが有名でしょうか。

  1. クエリをキューイングする
  2. 暖気運転する
  3. UDF(ユーザ定義関数)を利用して、Slave側でのみ処理を実行する

1.については、書籍「4Gbpsを超えるWebサービス構築術」に解説されてますし、 2.についてはhbstudy直後に割と話題になっているので、 3.について紹介してみます。

といっても、やっていることは簡単で、 紹介されている通りmemcachedのデータ更新を セミリアルタイムで実施するためのしくみとして活用しているようです。

うまく利用すれば、ランキングデータの更新/参照など リアルタイム性の高いデータの更新/参照をうまく制御できるようになりそうです。

※実は常識だったらスミマセン

こんにちは。CTOの馬場です。 今回もインフラエンジニア向けにちょっとした情報を紹介します。

今回はバッチ処理でMySQLに接続するときに、パスワードをうまく受け渡す方法を紹介します。

まずは-pオプションでコマンドラインに書く方法があります。が、プロセスツリーに表示されてしまうため安全とは言えません。そこで2つの方法を紹介します。

  1. .my.cnfに設定する
  2. .my.cnfなしでなんとかする

.my.cnfに設定する

ユーザのホームディレクトリに.my.cnfというファイルを置いて下記の内容を設定することで、パスワードを指定することができます。このパスワードは標準のMySQLクライアント全てで使用されます。
※ファイルの権限は600に設定しておきましょう。

[client]
password="my_password"

この方法だと、ユーザごとにパスワードが分かれている場合にはうまく対応できません。その場合の対処法は続きをどうぞ