Simple, Slowly

ブログを引っ越ししました。http://48.jp

MySQL

データベースとテーブルのサイズを確認する方法

テーブルのサイズはphpMyAdminでも見れますが、コマンドから見れたほうが何かと便利なので、調べてみました。 全てのデータベースのサイズを確認する # MB単位 select table_schema, sum(data_length+index_length) /1024 /1024 as MB from information_sche…

GET_LOCKでロックをかける

MySQLではGET_LOCKでロックをかけれます。 #ロックが使用可能かを確認します。ロックが使用可能 ( まだ使用されていない ) 場合は 1 を返します。 mysql> SELECT IS_FREE_LOCK("lock1"); -> 1 #ロックをかけます。成功時は1が返ります。 mysql> SELECT GET_…

SQL高速化

SQLですが、ちょっとした心がけでパフォーマンスが変わってきます。 SQLの実行回数はなるべく減らしましょう。 以下は問題のあるcodeです。 ×ループの中で実行するとパフォーマンスが低下する foreach ($rows as $row) { // ループの中で回数分実行される my…

暴走したSQLを停止するTips

MySQLの場合mysql -u [ユーザー名] -pとコンソールに入力 パスワードを聞かれるので、入力 show processlist;でプロセス一覧表示 kill プロセス番号;で停止注意 最後に「;」を入力しないと実行されません。