新米と秋刀魚のわた焼き お刺身用の秋刀魚を買いました。1尾250円です 3枚におろして、秋刀魚のわたに酒、味醂、醤油で調味して1時間ほど漬け込み、グリルで焼きました 秋刀魚のわた焼き わたの、苦味が程よくマイルドに調味され、クセになる味わいです 艶やかな新米と一緒に 自家製お漬物 土…
斎藤です。こんにちは。 Chef の話題がアツくなっている今日この頃、みなさまいかがお過ごしでしょうか?Chefの解説本も出つつある今日この頃ではありますが、プログラミングそのものに慣れないうちはそれさえ読むのもちょっと大変かもしれません。そこで今回は、 Chef のレシピ+ライブラリを用いて、MySQLの設定の自動化を試します。いわゆる「写経」から始めてみて、少しずつ「手動」からプログラムを通じた「自動化」にチャレンジしてみましょう。 ※Chef 11.04.0, knife-solo 0.2.0, Ruby 1.9.3p327, CentOS 6.3 で検証しています。 今回のお題 MySQLサーバをインストールしてみます。ITインフラを構築・運用している方ならご存知かと思いますが、MySQLはインストールだけでなくmy.cnfの設定までが作業です。その際にinnodb_buffer_
この記事は、How I Fired Myself.という記事の試訳です。 2010年の7月、私は22歳で、カリフォルニアのあるソーシャルゲームのスタートアップで働いていた。卒業したてで、私にとって初めての本物の職だった。給料をもらってアパートに住んだ。そのころ私は初めて大人になったような気分でいた。 その会社の主力製品であるRPGのコードを書く二人のエンジニアのうちの一人が私だった。大学では哲学を専攻していた。これはどういうことかと言えば、問題に対してどうやって考えればいいかを知っていた一方で、ベストプラクティスや実用的なデザインパターンに関する知識は最低限しか持っていなかった。私は信じられないほどの熱意でもって自分が持っているごく普通のLAMPの知識を駆使した。 私の悩みの種であるゲームデザイナーはしばしばWorld of Warcraftからインスピレーションを得ていた。WoWは、Bl
米国で行われているMySQL Connectというイベントで、ついにMySQL 5.6 RC(リリース候補版)が発表された。リリース候補版ということは、これが次の正式版になるということだ。MySQL 5.5は5.1から凄まじい進化を遂げたバージョンであった。だが、MySQL 5.6はさらにそれを上回る進化を遂げている!正直ここまでの進化を誰が予想しただろうか、いや誰も出来なかったであろう。これまで、α版が出たときから何度か新機能について紹介してきたが、今回改めてMySQL 5.6の新機能を振り返ってみようと思う。すべてまとめるともの凄い内容だ。興奮して夜も眠れなくなること請け合いだ。MySQLの進化が止まるのでは?などという心配は吹き飛び、もはやもうちょっと小出しにしなくて良かったのか?と心配してしまうレベルである。 それではMySQL 5.6の新機能について紹介していこう。 InnoDB
忘れないようにメモ。数学勉強し直す必要がありまくる。 緯度 緯度は簡単。北極と南極で考えれば良いので単純に地球の半径が使える。 地球 - Wikipediaから引用して地球の半径は6378150m。これをとする。 円周の長さはで求められるので、 ということで1度は 1秒は また1秒を度に直すと (度) 計算しやすいように切り上げると、0.00027778度ずらすと31m進むということ。 経度 赤道上だと緯度と同じ計算でOKだけど、緯度が高くなるにつれ半径は小さくなっていく。北極点だと0。 求めたい地点の球体の切断面の半径を考える。地球の半径をR、切断面の半径をrとすると あとは緯度と同様に円周出して1秒の距離を計算するだけ。東京(北緯35度)で考えると、 参考リンク 緯度によって違う経度1秒あたりの距離(km)の計算式が知りたいです - BIGLOBEなんでも相談室 TOURISTIC :
Given the performance issues we've hit with 0.9.x and sqlite3 as a backend (see here), I've managed to get a good conversion of an sqlite3 dump in to a format that mysql can load to migrate from one to the other. It's attached. Unfortunately its in C# because I had VS2008 to hand, but the source is there and its not long, so I'm sure someone could convert it to a scripting language of your choice
2011年05月28日20:40 カテゴリrailsmysql SQLite3→MySQLへデータ移行 Rails3のデフォDBはSQLite3なわけで、確かに早くて手軽で便利なんだけど、1点だけ問題がある。 それは、排他制御がファイルのロックであること! なんだよねぇ。 Railsだけで使っていれば問題ないんだけど、どうしても運用中にDBを弄ることが発生してしまう。 ってことでRails3既存環境をMySQLへ 変更してみる。 環境 ubuntu 11.04 Rails(3.0.7) SQLite3 MySQL5 参考 http://d.hatena.ne.jp/arcright/20100725/1279992599 参考サイト様によると、 yamlでエクスポインポすると簡単に移行できるらしい。 とありえず、MySQLをインストール $ sudo apt-get install mys
MySQL slow-query-log VisualizerはMySQLの時間のかかるクエリをWeb上で閲覧するソフトウェアです。 MySQLには実行時間の遅いクエリをログファイルに書き出す機能があります。単純にテキストに吐かれるだけなので分析に時間がかかってしまうのではないでしょうか。そこで使ってみたいのがWebブラウザベースの解析ソフトウェアMySQL slow-query-log Visualizerです。 サンプルです。データ量が多くないとあまり面白くないですね。 公式サイトより。曜日ごとに発生回数をグラフ化しています。 クエリログファイルをWebブラウザの画面にドロップするだけで解析処理が行われます。その結果はグラフに描かれる仕組みです。また、クエリは一覧で表示され、任意の文字でフィルタリングすることもできます。曜日と時間によって分析されるので対応すべきポイントが分かりやすくな
http://web-su.net/2008/02/mysql-auto-increment.html から参考に AUTO INCREMENTのリセットや変更は次のSQLで行う。 ALTER TABLE テーブル名 AUTO_INCREMENT = 30; ちなみに、infomation_schemaにAUTO INCREMENTが在るらしい。 連番を初期化する場合は ALTER TABLE テーブル名 AUTO_INCREMENT = 1; 1にすると、もう一度1から採番できる。TRUNCATEしたときとかに有効? SQL から alter table で連番を初期化できるのが楽しいですね
MySQLのdump(ダンプ)でデータをバックアップ/復元する方法(コマンド)についてまとめた。 目次 dump(ダンプ)とは MySQL dumpでデータのバックアップを取る dumpファイルからデータを復元する MySQLのオススメ書籍 dump(ダンプ)とは dump(ダンプ)とは、デバッグやデータ修復のために、ファイルやメモリの内容をディスクに出力(記録、あるいは表示)すること。 データベースにおいては、データベースの情報をファイルに書き出して保存することをdump(ダンプ)と呼ぶ。これはデータベース移行の際に利用される。 dumpは、プログラムを開発する際に動作を追跡するために利用することが多い。 dumpされたファイルには、dump作成時のメモリ上のデータが丸ごと書き出される。 従って、プログラムの開発などを行う場面では、データをdumpしてデバッガに読み込ませ、プログラムの問
米オラクルは、オープンソースのデータベースとして普及しているMySQLをクラスタ化して利用するためのソフトウェア「MySQL Cluster 7.2」の正式版を公開しました。 GPLに準拠したオープンソース版と同時に、管理ツールを同梱し、24時間365日のサポートも行う商用版の「MySQL Cluster Carrier Grade Edition」も同時に公開しています。 ジョインが70倍高速に MySQL Cluster 7.2の最大のポイントは、ジョインが高速になったことです。これまでクラスタでのジョインは、ジョインするテーブルのデータがクラスタ内のノード間をいちいち飛び交っていたため、複雑なジョインになるほど遅いものになっていました。 MySQL Cluster 7.2で採用されたAdaptive Query Localization(あるいはPush Down Joins)と呼ば
(いまだに時々ブクマされていたりしますが、これはバグで MySQL 5.5.21 以降では修正されています。) mysqldump は MySQL のデータのバックアップを取得するコマンドです。 mysqldump に --single-transaction を指定すると一貫性を保持したバックアップを取得することができます*1。 この時に mysqldump が発行しているクエリは次のような感じです。 [mysqldump --single-transaction DB名] SET SESSION TRANSACTION ISOLATION LEVEL REPEATABLE READ START TRANSACTION WITH CONSISTENT SNAPSHOT UNLOCK TABLES DB選択 テーブルからデータの読み込み「START TRANSACTION WITH CON
今作っているアプリで、どうしても時間がかかる処理がありどうにかしたいなと思っていたところ、非同期処理を実現できるライブラリがあったので使ってみたという話。困っている処理は、基本的な情報を登録した後に、過去データを含めた分析を行い他システムに情報を渡すというもの 基本データ登録処理(一瞬で終わる)→分析・他システム連携(5秒くらいかかる) 処理の利用者にとっては、基本データが登録された情報がほしいだけで、関連情報はそれほど必要ではない。関連データ登録をバッチ処理にして、cronなどで定期処理してもいいのだが、バッチ運用管理が面倒なのと、できるだけリアルタイムに関連データも蓄積していきたいので考えていたところ、AP4Rがあることを思い出した。AP4RはRubyで非同期処理を実現するサーバで、Railsのプラグインも提供されている。非同期で行わせたい処理をAP4Rサーバに投げつけておけば、そのあ
常時起動している Rubyスクリプトで「MySQL server has gone away」というエラーが出てビビリました。ActiveRecord使ってるからいけないのかとか、自分の書き方が悪くて(Rubyが)メモリリークしてるんじゃないかとか、簡単に解決しそうにない方向に想像がいってしまったのですが、ググればすぐ解決方法が見つかりました。「案ずるより産むが易し」、「心配するくらいならググれ」ですね。 どういうエラーか MySQLのリファレンスマニュアルによると、「MySQLサーバはデフォルト設定では、何も起きない状態が 8 時間続くと接続をクローズします」だそうです。接続がクローズされた状態で MySQLサーバにアクセスにいくと「MySQL server has gone away」となるわけです。 どうするか 8時間、誰もアクセスしないということ自体、サイトの運営としてどうなの?
実行環境を書いてしまうと特定されてしまうので端折るから「?」な部分もあるけど,いろいろ調べたのでメモメモ. まず,上記のエラーメッセージを吐いて起動しなくなる原因は,主に4つあるとのこと. 権限の設定が不適切 MySQL の pid ファイルが残っている MySQL のプロセスが生き残っている 設定ファイルの記述に誤りがある 1は見直せばよいとして,2に関してはちょっと強引だけど # find / -name *.pid で探せるし,3も # ps ax | grep mysql で探せる. エラーメッセージが表示されたあとに,find も ps もしてみたけど,引っかかるファイルもプロセスもなかった.なので,4ということになる.加えて,"mysql_install_db" を実行したときに「"skip-federated" なんてオプション知らないよ」と MySQL に怒られるのでますま
つまらないことだけどちょっとはまったので覚え書き。 MySQLで外部ホストからの接続を許可する場合、「localhost」用の権限と「外部用」の権限の二種類をGRANTで制限する必要がある。 # mysql -u root -p mysql> GRANT ALL PRIVILEGES ON *.* TO testuser@'%' IDENTIFIED BY 'password'; Query OK, 0 rows affected (0.00 sec) mysql> GRANT ALL PRIVILEGES ON *.* TO testuser@localhost IDENTIFIED BY 'password'; Query OK, 0 rows affected (0.00 sec) mysql> use mysql; Database changed mysql> select ho
モバゲーで知られるDeNAは、バックエンドデータベースにNoSQLを使っていません。なぜか? それはMySQL/InnoDB 5.1の環境で秒間75万クエリという、多くのNoSQLでも実現できないような高性能を実現しているから。DeNAの松信嘉範(まつのぶよしのり)氏は、自身のブログにこんな内容のエントリ「Using MySQL as a NoSQL - A story for exceeding 750,000 qps on a commodity server」(英語)をボストしています。 Yoshinori Matsunobu's blog: Using MySQL as a NoSQL - A story for exceeding 750,000 qps on a commodity server 松信氏が指摘するように、大規模なネットサービスを提供している企業の多くは分散環境で
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く