双子パパのMySQL日記

sortは以外に重い

対象件数が多い場合は、order by の項目にインデックスがあっても遅いです。
indexよりも絞り込むことが重要になってきます。

 

楽天のMySQLランキング。『現場で使える』シリーズは外せませんね。

 

2010/07/27

プロセスのkill

バッチを途中で止めたりすると、プロセスが残ってしまい、処理中のテーブルが更新できなくなることがあります。

 

そんな時は、

 

show processlist

 

からIDを取得(DB名と処理内容から判断)、

 

kill ID

 

でプロセスを終了させられます。

 

2010/07/27

テーブル定義を取得

MySQLのテーブル定義取得は以下のコマンドです。この辺はDBMSによって結構違いますね。

 

show full columns from *テーブル名*

 

oracleは、desc テーブル名です。

 

2010/07/21

 

プロセス一覧を取得

max_connectionエラーになったので、プロセスを調べてみました。

 

mysqladmin -u root -pパスワード processlist

 

MySQLでこのエラーになると、管理者でも接続できないので困りますが、このコマンドで取得できるようになります。

 

2010/07/01