MySQL

Amazon RDSって便利そうだよね。ちょっと高いけど。

Amazon RDSって便利そうだよね。ちょっと高いけど。 AWSを使う機会があったのですが、Amazon RDSって便利っぽいですよね。 既存のサービスのデータベースだけAmazon RDSにする(他所のデータセンターから使う)いい方法ってあるのかなぁ。できればAmazon RDS…

REPLACE INTO と ON DUPLICATE KEY UPDATE

REPLACE INTO と ON DUPLICATE KEY UPDATE REPLACE INTO sessions SET sid = ?, sdata = ?; INSERT INTO sessions SET sid = ?, sdata = ? ON DUPLICATE KEY UPDATE sdata = VALUES(sdata); ――どっちがいいんだろ。(どちらもPRIMARY KEY がsid) REPLACE IN…

mysqlcheckで--repairするとSLAVEに伝播してしまう

mysqlcheckで--repairするとSLAVEに伝播してしまう ――という話を聞いたのだけれど、本当だとすれば問題があるような気がした。 LOCALオプション付きで実行するように修正した方がよさそうな気がするのだけれど。どこかのバージョンで変わってたりするのかな。…

mysql-master-haでのREPLICATION SLAVE priv.チェックの修正

mysql-master-haでのREPLICATION SLAVE priv.チェックの修正 mysql-master-haをちょっと触っていたところ、MHAの管理ユーザーがmysql.userテーブルをSELECTしていたのがちょっと気持ち悪かったので修正してみました: --- lib/MHA/Server.pm.old 2012-01-09 0…

MySQLのレプリケーションでマスターを差し替える場合

MySQLのレプリケーションでマスターを差し替える場合 MySQLのレプリケーションでマスターを変えるには以下の感じでいいんでしょうかね? master_old: FLUSH TABLES WITH READ LOCK; -- 書き込み停止 SHOW MASTER STATUS; -- SELECT master_pos_wait() で使う…

MySQLでマルチマスタなレプリケーションをしていて、メインマスタが障害を起こしてダウンした時、

MySQLでマルチマスタなレプリケーションをしていて、メインマスタが障害を起こしてダウンした時、 master1とmaster2があって、相互にレプリケーションしている(マルチマスタレプリケーション)。master1をメインとして使っている時、master1に障害が発生し…

MySQL-MMMで複数セットを監視する

MySQL-MMMで複数セットを監視する MySQL-MMMのmonitorで複数セットのマスターを監視する正しい方法がイマイチ分からない。 とりあえずインストールガイドをベースに mmm_common.conf を修正してみた: active_master_role writer1 cluster_interface eth0 pi…

MySQL MMM利用時に自動的に再実行するClass::DBI用のプラグイン

MySQL MMM利用時に自動的に再実行するClass::DBI用のプラグイン MySQL MMMはなかなかよさげなのですが、writerの切り替え時に実行中のSQLがあるとエラーになってしまい困るわけですよ。 AutoCommitで使っているので失敗したら再実行すればいいので、SQLを発…

Multi-Master Replication Manager for MySQL をFreeBSDで使ってみた

Multi-Master Replication Manager for MySQL をFreeBSDで使ってみた 公式サイト:http://mysql-mmm.org/ 基本的にはインストールガイドやドキュメントに書いてあるようにすればよさそうなのですが、FreeBSDで動かすのがちょっと面倒だったのでメモ。 使った…

2010-02-19

MySQL Clusterを動かしてみたよ。 MySQL Clusterに関する情報が少ないので、役に立たないかもしれないけど動かした時のレポートを残しておくよ。 ちなみにWindows版の7.0.9(プレビュー版)を使ったけど、いつのまにか http://dev.mysql.com/downloads/clust…

MySQLで調べる予定のもの

MySQLで調べる予定のもの 前提条件 レプリケーションでMaster(1)-Slave(複数)Slaveのうち、1つは停止しても構わないMasterを停止する場合はできるだけ短時間MasterにSQLを発行してSlave側でロックが発生するのは避けたい 調べたいこと バージョンを5.0…

mysqlftppcのUNICODE正規化のこと。

mysqlftppcのUNICODE正規化のこと。 既存のMySQLを5.0から5.1にするにあたって困ってたのが、全文検索で使っているSenna+Tritonnが5.1に対応する気配がないこと。(まあ、Sennaからgroonaに変わるとか、いろいろあるんだろうけど) そういやMySQL5.1以降はプ…

固定長と可変長のテーブルに分けてJOINするVIEWを使うようにすると効率よくなったりするのかな?(MyISAM限定で)

固定長と可変長のテーブルに分けてJOINするVIEWを使うようにすると効率よくなったりするのかな?(MyISAM限定で) そういやMySQLでVIEWが使えるようになってちゃんとINSERTやUPDATEもできるようになったんだから、固定長と可変長のテーブルに分けてJOINしたV…

投票とかで使うトリガ

投票とかで使うトリガ http://asakura.g.hatena.ne.jp/asakura-t/20080227/1204101591 毎回カウントするトリガ CREATE TRIGGER _vote_after_insert AFTER INSERT ON vote FOR EACH ROW REPLACE INTO vote_count SET target_id = NEW.target_id, total_count …

久々にトリガとかストアドプロシージャとか書いたよ。

久々にトリガとかストアドプロシージャとか書いたよ。 そういやMySQLは5.0からトリガとかストアドとか使えるようになったんだよね、ということで久々にそういうのを書いてみた。 DELIMITER // CREATE TABLE `vote` ( `id` int(10) unsigned NOT NULL auto_in…

5.0からbinary型のpaddingが0x00に変わってたのね。

5.0からbinary型のpaddingが0x00に変わってたのね。 知らなくてちょっとハマる。http://dev.mysql.com/doc/refman/5.0/en/upgrading-from-4-1.html まあうっかりdefault character setがbinaryになってたせいだったりするので、普通に使っていれば引っかかる…

とりあえず接続したら「set names binary」を実行しておけばいいんじゃないのとか思うけど……

とりあえず接続したら「set names binary」を実行しておけばいいんじゃないのとか思うけど…… 「utf8に設定したテーブルが文字化けするようになったんで原因分かる?」とか言われて「どーせset names binaryすりゃ解決するだろ」と思ったけど、調べてみたら確…

2006-06-28

Jcode::CP932 - 0.04 あ、canとData::Dumperとevalを使えばできるじゃん!*1 Jcode-2.0ってsjisとかの部分がハードコーディングされてるので、convertとかsetとかappendをコピペしないといけないんですよね……。 %jname2eと%ename2jがmyじゃなくてourなら良か…

2006-04-27

目次 [Perl][DBI] MS SQL Server用のDBDってどれなん?[Web+DB] Web+DB Press Vol.32を買った[Web+DB][MySQL] mytopの改変方法[Web+DB][Perl] WindowsでCatalyst 追記 MS SQL Server用のDBDってどれなん? MSの開発ツールを入れてみるとおまけでMS SQL Serve…

2005-12-14

Amazonはメタデータが不足してる、の続き メタデータの項目はどうしようか、そういや前に作りかけた時はやたらと項目が増えてカラムを増やすと大変なことになった気がするなぁ、そもそも書籍とDVDでは必要な項目その他が違うし、じゃあメタデータの項目は自…