mysql

MySQL でシーケンスをエミュレートしてみた

Oracle とか PostgreSQL 等にあるシーケンスのエミュレートを、MySQLの公式ドキュメント で紹介されているので試してみた。 シーケンス用のテーブルの作成と初期値 数値型のカラムが一つあるテーブルが必要。 下記例では 1 から採番される。途中から採番した…

MySQLにおけるBOOLEAN型の扱いについて調べてみた

PostgreSQLで定義されているテーブルからMySQLに移植する必要があって、作業をしてるとBOOLEAN型で定義されてるカラムが見つかった。単純にTINYINTとかで置き換えてもよかったんだけど、MySQLにもあるんだろうかと興味本位で調べてみた。 MySQLのBOOLEAN型は…

MySQL Cluster の ndb_size.pl を使うための準備

MySQL のストレージエンジン、NDB Cluster のテーブルサイズの見積をするのに便利なコマンド、ndb_size.pl*1は、依存モジュール等がありそのままでは使えないんで、その準備の仕方をメモしておく。 依存しているモジュール HTML::Template Class::MethodMake…

MySQL のバイナリログの削除方法

MySQL をマスタ/スレーブ構成で運用していると、バイナリログがハードディスク容量を圧迫してくるのでその削除手順をメモ。 1.レプリケーションの進行状態を確認 スレーブ側がどこまでバイナリログを読み込んでいるか確認する。Master_Log_File に表示されて…

MySQL(5.0)のテーブル名変更

数億レコードあるテーブルに、無謀にもカラム追加しようとして痛い目を見たのだが、ある程度は過去データを捨ててもいいというようになったので、テーブル名の変更をしてバックアップを取って、あらたにテーブル定義をしなおした。テーブル名の変更の仕方は…

MySQL5.0 で数億レコードあるテーブルの定義変更をしたい

あるプロジェクトで、がっちがちに正規化されているテーブルの設計を一部崩して、テーブルにカラム&インデックスを追加する必要があり、というか一度追加してみたのだが、まったく終了する気配がなくていったん kill して今困ってるところである。 とりあえ…

MySQLのストアドプログラムって

MySQLのストアドプログラムって実行速度は速いのかしら?OracleのPL/SQLと違って、コンパイル済みのプログラムがストアされるわけじゃないから、そんなに速度は期待できへんのやろか。喫緊でパフォーマンスが悪くて困ってる仕事があるので、実験してみようか…

MySQL5.0のインストール備忘録

すぐに、インストール手順とかを忘れてしまうので、備忘録として書いておく。今回のインストール環境はこんな感じです。 coLinux 0.64 Debian GNU Linux 4.0 まずはMySQL5.0関係のインストール。サーバとクライアント、そしてドキュメントを入れる。 % sudo …