扫二维码与项目经理沟通
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流
?php
我们提供的服务有:网站建设、成都网站制作、微信公众号开发、网站优化、网站认证、云龙ssl等。为上1000+企事业单位解决了网站和推广的问题。提供周到的售前咨询和贴心的售后服务,是有科学管理、有技术的云龙网站制作公司
mysql_connect('127.0.0.1','root','123456');
$sql="update sjk._sjk set b='1',c='1' where a='123'";
if (mysql_query($sql)) echo '修改成功。';
else echo "修改失败,SQL:$sqlbr错误:".mysql_error();
mysql_close();
?
你说的写文件是个思路。如果你只是要求某一个字段是唯一,可以把这个存在内存中,每次进行验证。然后把验证通过的数据写入文件,最后在统一从文件中读出来存入数据库。
但是又会出现个问题。如果你是10万条数据在文件里,你要是想用一个INSERT插入,那必须得先把这数据读到内存里,肯定也很慢,而且不稳定。如果你逐条读出插入,对数据库也是个消耗。不过你可以把数据拆散,比如每1000条插一次。
检查下 php.ini 文件中的限制
upload_max_filesize
post_max_size
如果超出你提交的文件大小,就改大一些
改了之后重启 apache!
给你个思路
先最大化 PHP 效率充分利用 系统资源。
把 sql 拆开比如2万一个用一个 php 去跑 总共用5个 php 一起跑。
然后最大化 mysql 效率
查一下mysql 的瓶颈在哪。针对性的去优化。
查询慢 就看看索引什么的
写慢就查查 buffer 什么的。
这里强烈建议读写分离。
用不通的数据库实例去分别处理读写。
再看看磁盘 IO 性能。看看队列数据。不行就上阵列。或者单表部署单个磁盘。或者读写在不同的磁盘进行。
当然用缓存也可以。
比如把10万条都独出来存到 memcache 等内存缓存中。循环处理数据的时候读内存的数据不用查数据库。
还有终极大招。
你直接把数据库都搬内存里面。。。
应该是你的数据库配置限制了内存使用量导致的.建议查找下相关mysql配置资料.
直接倒序取一部分,如果可以就应该是配置的问题.
如果慢的话要考虑字段优化
问题需要具体.不铭感的话可以把数据发来我调试一下看看.
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流