mysqlslapコマンドの使いかた事例
1年ほど前にRSSリーダーの開発をしていたとき、環境ごとのMySQLのパフォーマンスを調べるのにmysqlslapというコマンドを使っていたが、割と適当に使っていたので今こそそれを振り返ってみようと思う。
1年ほど前にRSSリーダーの開発をしていたとき、環境ごとのMySQLのパフォーマンスを調べるのにmysqlslapというコマンドを使っていたが、割と適当に使っていたので今こそそれを振り返ってみようと思う。
URLを入れておきたいカラムなのにRailsのマイグレーションでt.string :urlって書いてvarchar(255)にしちゃって、実際の運用で日本語URLがエンコードされて渡ってきて余裕でオーバーするっていうのはあるあるじゃないですか?それとも初心者あるある?
本番環境で動いているRailsアプリケーションのDBにおいて、問題に緊急対応するために直接ALTER_TABLEしてしまったようなとき、Railsアプリケーション側ではどんな対応をすればいいか、というお話。
AWSのt1.microとかWindowsAzureの仮想マシンとかでWordPressを動かしているとき、割と頻繁に「データベース接続確立エラー」というエラーを見かけることがあった。 ログを見るとなんらかの理由で再起動がかかったあとで起動に失敗しているようだ。
データベースの負荷分散の方法の1つレプリケーションという方法があります。マスターDBへの変更をスレーブDBに同期するようにしておいて、書き込みのクエリはマスターDBへ、読み取りのクエリはスレーブDBへと振り分けることで負荷を分散しようというやり方です。
空のデータベースでレプリケーション構成を作るまでのプロセス案が外簡単にできたのでメモっておきます。 設定ファイルに追記する log-bin = mysql-bin server-id = 101 # 1と2を避け、1023までならOKらしい server-id = 102 masterの情報をメモっておく slave側で設定するために必要な情報をmasterからもらっておきます。
RSSフィードを例にとって、僕がRailsを触っているときにはまったことを書いておきます。初歩かもしれんけどハマったもんは仕方ないし、Stackoverflow見てたら他にも同じような人がいるっぽかったんでちょっとまとめておきます。