在使用CRON作业时,如何避免数据库锁死

你在设计一个系统时犯的错误,使你在将来花费了很多钱

在设计一个大规模的应用程序时,你所犯的一些小错误让你损失惨重,而这些错误本可以通过避免一些错误来解决,这些错误包括:

1.设计一个没有外键的数据库
2.选择了错误的数据类型和它们的大小
3.使用过多的TEXT字段
4.在多个表中使用重复的数据的数据库
5.不使用索引
6.过多的连接
7.为了跟踪系统的更新,反复更新单一的列
8.对文件系统有太多的查询
9.没有建立一个机制来处理未使用的旧数据
 

避免错误/数据库锁死

当我们有预定的任务,并计划设计一个定期更新统计资料的系统时,在MySQL中使用PHP的Apache服务器工作,不要对你想定期更新的行或列使用更新查询,而要尝试使用插入查询。

1. 设计一个没有外键的数据库
我可以给你的最好建议是不要急于设计数据库。要么你的最后期限很短,要么你对这一步太粗心了,这将使你在未来花费大量的美元和时间。

花点时间,把事情想清楚,使用依赖关系,使你的数据保持一致。

处处使用外键! 如果你考虑到把它们放进去会给你带来的痛苦,或者你只是因为在删除数据时面临的删除错误而避免它们,那么再想想。

如果你正确地使用外键,删除就会变得很容易,而且在删除顶级数据库记录时几乎不会出现不相关的数据。

它还可以保护你在父表中删除一条有子记录的记录。

2. 选择错误的数据类型和它们的大小
这里的规则是不要过度。

允许的最大值是你在应用层面上决定的,而不是用户 "可以 "输入的值。记住,你总是可以在应用程序方面进行验证。

不是所有的记录都有最大值,所以不要过度。

另一个很好的例子是,在自动增量列中使用无符号的值,而这些值可能永远不会是负值。

3. 使用太多的TEXT字段
TEXT字段比较慢,varchar比较好。只有在文本非常长的时候才使用TEXT。

TEXT字段可以成为一个索引的一部分,直到一个特定的长度,varchars在这里也是更好的选择。

一条记录中太多的TEXT列会使你的数据获取速度变慢。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值