同僚がMySQLのconnection timeoutのテスト方法に迷っていたので、アイデアを出してみたらうまくいったのでメモ。はじめはMySQLをどうにかするアプローチを考えたが、必要なのは「何もしないサーバ」だった。 何もしないサーバをたてる(testを書くときにはTest::TCP::empty_portを使うとよいと思われる) $ perl -MIO::Socket -le \ '$sock = new IO::Socket::INET(LocalPort=>22111, Listen=>SOMAXCONN, Porot=>"tcp", Reuse=>1);while(1){}'接続しようとするとblockされる $ mysql -h127.0.0.1 -P22111$ perl -MDBI -le 'DBI->connect("DBI:mysql:database=test;ho