如果您使用两个不同的API(即MysqL_*
PDO和PDO),PHP将生成两个不同的连接。
并且,作为“证明”,请考虑以下部分代码:
$db = MysqL_connect('localhost', 'USER', 'PASSWORD');
$pdo = new PDO('MysqL://@localhost/astralblog', 'USER', 'PASSWORD');
sleep(5);
运行此命令将在MysqL服务器上导致两个不同的连接-它将hibernate5秒钟:
MysqL> show processlist;
+----+------------+-----------------+------------+---------+------+-------+------------------+
| Id | User | Host | db | Command | Time | State | Info |
+----+------------+-----------------+------------+---------+------+-------+------------------+
| 41 | astralblog | localhost:46551 | astralblog | Sleep | 188 | | NULL |
| 42 | astralblog | localhost:46552 | astralblog | Sleep | 188 | | NULL |
| 43 | astralblog | localhost | astralblog | Query | 0 | NULL | show processlist |
| 64 | astralblog | localhost | NULL | Sleep | 4 | | NULL |
| 65 | astralblog | localhost | NULL | Sleep | 4 | | NULL |
+----+------------+-----------------+------------+---------+------+-------+------------------+
5 rows in set (0,00 sec)
(有问题的连接是最后两个连接,当我启动PHP脚本时出现,并在5秒后消失)