2017-09-25 20 views
0

私はZend Framework 3アプリケーションのDBALをDoctrineに移行しています。データ検索部の移動が完了する。データの保存はまだ駆動されたままである(Zend\Db)。Windows Server 2008のZF3の「各ソケットアドレスの1つの使用法」エラー

今、私は、サーバーへの新しいバージョンを展開し、このエラーを取得したい:

[PDOException: SQLSTATE[HY000] [2002] Only one usage of each socket address (protocol/network address/port) is normally permitted. in D:\Path\to\my-project\vendor\zendframework\zend-db\src\Adapter\Driver\Pdo\Connection.php:266

エラーが私の地元のDebianの仮想マシン上で発生していますが、Windows Server上でのPHPUnitを実行しているときにのみしません。

ちょうどZend\Db\Adapter\Driver\Pdo\Connection.php:266を調べました。それはZend\Dbが新しい接続を作成しようとする場所です。

これはDoctrineへの(部分的な)移行に関連していることが前にはわかりませんでした。アプリケーションがZend\Dbのために開かれたデータベース接続を閉じず、Doctrineの設定とまったく同じ設定で新しいデータベースを開こうとしているかもしれません。またはその逆:DoctrineのPDO接続が開かれ、同時にフレームワークがZend\Dbの新しい接続を開こうとします。

この問題を解決する方法とDoctrineとZend\Dbの両方を使用するにはどうすればよいですか?

答えて

0

私はこれもPDOで実行しています。私の研究では、これはMySQLやPHPとは関係ないが、Windowsと関係があることを示唆している。あまりにも多くのリクエストをあまりにも早くしています。ウィンドウがポートを閉じると、それはtime_wait状態に240秒まで(デフォルト)置かれ、そのポートはtime_wait状態から出るまで使用できません。

related to this stack overflow question from 2012:

関連する問題