MYSQLが提供している関数
mysql> select IS_FREE_LOCK(‘app lock’);
+————————–+
| IS_FREE_LOCK(‘app lock’) |
+————————–+
| 1 |
+————————–+
1 row in set (0.00 sec)
mysql>
※ 1はロック取得可能
mysql> select GET_LOCK(‘app lock’,10);
+————————-+
| GET_LOCK(‘app lock’,10) |
+————————-+
| 1 |
+————————-+
1 row in set (0.00 sec)
mysql>
※ 1は10秒以内にLockが取得される。10はtimeoutの値
mysql> select IS_FREE_LOCK(‘app lock’);
+————————–+
| IS_FREE_LOCK(‘app lock’) |
+————————–+
| 0 |
+————————–+
1 row in set (0.00 sec)
mysql> select RELEASE_LOCK(‘app lock’);
+————————–+
| RELEASE_LOCK(‘app lock’) |
+————————–+
| 1 |
+————————–+
1 row in set (0.00 sec)
※ 1はlockリリースが問題なく実行されたという事
mysql> select IS_FREE_LOCK(‘app lock’);
+————————–+
| IS_FREE_LOCK(‘app lock’) |
+————————–+
| 1 |
+————————–+
1 row in set (0.00 sec)
mysql>
もっと他の関数は、こちらのサイトにあります。
(例)
数字のネットワーク アドレス ( 4 または 8 バイト ) を与えられ、
アドレスのドット形式のクワッド表示をストリングとして戻します。
mysql> SELECT INET_NTOA(3520061480);
+———————–+
| INET_NTOA(3520061480) |
+———————–+
| 209.207.224.40 |
+———————–+
1 row in set (0.00 sec)
mysql>