小编Ste*_*iec的帖子

删除MySQL中的数百万行

我最近发现并修复了我正在处理的网站中的一个错误,导致表中数百万个重复的数据行即使没有它们也会非常大(仍然是数百万).我可以很容易地找到这些重复的行,并可以运行单个删除查询来终止它们.问题是尝试一次性删除这么多行会长时间锁定表,如果可能的话我想避免这种情况.我可以看到摆脱这些行的唯一方法,而不是取下网站(通过锁定表):

  1. 编写一个脚本,在循环中执行数千个较小的删除查询.这理论上会解决锁定表问题,因为其他查询将能够进入队列并在删除之间运行.但它仍然会在数据库上加载相当多的负载,并且需要很长时间才能运行.
  2. 重命名表并重新创建现有表(它现在将为空).然后在重命名的表上进行清理.重命名新表,将旧表命名并将新行合并到重命名的表中.这需要采取相当多的步骤,但应该以最小的中断完成工作.这里唯一棘手的部分是所讨论的表格是一个报表,所以一旦它重新命名,而空的一个放在它的位置,所有历史报告都会消失,直到我把它放回原位.此外,由于存储的数据类型,合并过程可能会有点痛苦.总的来说,这是我现在可能的选择.

我只是想知道是否有其他人之前有这个问题,如果是这样,你如何处理它而不取下网站,并希望,如果有任何中断用户?如果我使用2号或类似的方法,我可以安排这些东西在深夜运行并在第二天早上进行合并,并且让用户提前知道,这不是什么大问题.我只是想看看是否有人有更好或更简单的方法来进行清理.

mysql maintenance query-performance sql-delete

68
推荐指数
6
解决办法
6万
查看次数

解决PHP5的PDO rowCount MySQL问题

我最近开始使用PHP5开发一个新项目,并希望使用他们的PDO类.问题是MySQL PDO驱动程序不支持rowCount()所以没有办法运行查询然后获取受影响的行数或返回的行数,这是一个相当大的问题,就我而言.我想知道是否还有其他人已经处理过此问题,以及你为解决这个问题所做的工作.必须执行fetch()或fetchAll()来检查是否有任何行受到影响或返回对我来说似乎是一个黑客,我宁愿只做$ stmt-> numRows()或类似的东西.

php pdo

16
推荐指数
1
解决办法
1万
查看次数

PHP构建系统

我正在使用PHPUnderControl,它运行在Cruise Control之上,用于我的持续集成和单元测试.我还设置了运行PHPDocumentor来为我生成phpdoc,它运行PHP Code Sniffer来为我强制执行编码标准.但现在我想在同一台服务器(Ubuntu)上设置一些东西,以便更容易地部署到远程服务器.我已经设置好了,所以每次成功构建后,SVN Export都会从trunk进入服务器上projects项目文件夹中的目录.

我一直在考虑编写一个小的自定义PHP脚本,它将SSH连接到已配置的远程服务器,压缩最新的导出,复制它,解压缩并运行任何迁移.这样的PHP脚本最初不应该太难,除非我最终需要开始扩展到多个服务器.我知道有像Phing,Fabric等系统.

我的问题是,如果有人有这方面的经验,可以提供一些专业和骗局?我已经开始在我的服务器上设置Phing,并将尝试使用Fabric来玩它们,但是想知道是否有人更广泛地使用它们,或者不得不扩展它们,可以提供一些反馈.

php build-automation build-process build-tools

10
推荐指数
1
解决办法
5590
查看次数

Java的内存SFTP服务器有哪些好处?

我有一些代码,我需要编写一个测试,连接到供应商的SFTP服务器并将文件放在那里.现在测试是连接到他们的实际服务器,但我宁愿不这样做.理想情况下,我想在MockFtpServer中使用假的,内存中的服务器.我尝试使用那个,它在那里得到一部分,但在发出实际命令时死亡,因为它不识别它们.

有问题的代码是Mule ESB中的流程设置.

java sftp mule

10
推荐指数
1
解决办法
5900
查看次数

何时停止关注浏览器

问题很简单,什么时候最终拔掉浏览器版本的插件而不关心再支持它?正如可能预料到的那样,目前就IE6而言.我现在正在开发的网站有一个大部分完成的设计需要集成,但大多数后端功能预计不会再用6或7个月完成.真的值得与IE6战斗,因为只是跳过它并支持IE7 +吗?此外,该网站专门针对摄影师,其中许多我知道的事实是mac-head.

css browser usability internet-explorer-6

9
推荐指数
2
解决办法
524
查看次数

加载测试UI

我一直在开发一个网站,它在前端大量使用AJAX和动态JavaScript,现在是时候开始压力测试了.但是,如何正确地测试需要点击前端几个链接的东西呢?我能够轻松快速地反复访问网站每个页面的一种方法是将Google Mini指向它.但是,这不会点击链接,然后导航模态窗口和类似的东西.

编辑 - 我应该指出该网站是在PHP5中完成的,而使用的JavaScript库是jQuery.不确定这是否会产生任何影响,但觉得知道可能有用.

php stress-testing

5
推荐指数
1
解决办法
1650
查看次数

"专家"程序员和设计师确实存在

似乎我发现的每一份工作都没有,而且我与之交谈的大多数招聘人员都坚持认为,如果我是"专家"程序员和设计师,我唯一有资格获得该职位的方式.当他们说"程序员和设计师"他们似乎意味着,设计师,前端开发人员和后端程序员(而且大多数人似乎认为这也意味着系统管理员).所以你的想法是什么?这些神秘的大师级编程设计师是否真的存在,或者我只是在混乱中感到不合逻辑,认为这些家伙实际上希望找到一个"专家"程序员和设计师,他们愿意在"高级"职位上工作,几乎不能适应工资.

graphics

5
推荐指数
3
解决办法
710
查看次数