运行环境:IIS+WINDOWS XP+PHP+MYSQL做了一个站,里面有个PHP网页(a.php)需要执行一个耗时任务,向数据库插入数十万条数据,这个过程大约十几分钟。在这a.php网页执行的过程中,这个网站的其他网页都不能访问Mysql数据库。现象是:
1、如果其他网页没有与数据库连接,则很快能执行出结果,凡是需要读写数据库的网页,都要等a.php执行完毕后,才能显示结果。
2、如果把phpMyAdmin放在这个网站目录下(用于管理数据库),则在a.php执行的过程中,phpMyAdmin能够成功读写数据库。
我想要的结果是,能像phpMyAdmin那样,能与a.php并发访问数据库,请问怎么操作
1、如果其他网页没有与数据库连接,则很快能执行出结果,凡是需要读写数据库的网页,都要等a.php执行完毕后,才能显示结果。
2、如果把phpMyAdmin放在这个网站目录下(用于管理数据库),则在a.php执行的过程中,phpMyAdmin能够成功读写数据库。
我想要的结果是,能像phpMyAdmin那样,能与a.php并发访问数据库,请问怎么操作
你是不是给同个表写数据?
网站的php是不是用了长链接的方式?
在不同的表中进行的操作,a.php用做的是insert操作。
没有用长连接,用的是mysql_connect(DB_HOST,DB_USER,DB_PASS);这种方式进行的链接。不过,我没有进行手动的关闭,即没有使用mysql_close(),因为我在一些资料上看过,mysql的连接会自动关闭的。
-----------------------------------------------------
你把这个功能独立出来,或者创建另外一个数据库链接(与网站的数据库链接不同),试试
说 phpMyAdmin 可用,并没有说明是否也是对这个表还有一个可能就是 session 了,为排除这个可能性,可重启一个浏览器进程来检测(注意:不是ctrl+n 新建窗口)
插入十万条数据 对MYSQL来说,小KS了,你还要十分钟……这一点我都想不明白。
十几分钟……为啥会这么慢呢。