mysql 101_101 个 MySQL 的调节和优化的提示

查询优化:

63. 使用慢查询日志去发现慢查询。

64. 使用执行计划去判断查询是否正常运行。

65. 总是去测试你的查询看看是否他们运行在最佳状态下 –久而久之性能总会变化。

66. 避免在整个表上使用count(*),它可能锁住整张表。

67. 使查询保持一致以便后续相似的查询可以使用查询缓存。

68. 在适当的情形下使用GROUP BY而不是DISTINCT。

69. 在WHERE, GROUP BY和ORDER BY子句中使用有索引的列。

70. 保持索引简单,不在多个索引中包含同一个列。

71. 有时候MySQL会使用错误的索引,对于这种情况使用USE INDEX。

72. 检查使用SQL_MODE=STRICT的问题。

73. 对于记录数小于5的索引字段,在UNION的时候使用LIMIT不是是用OR.

74. 为了 避免在更新前SELECT,使用INSERT ON DUPLICATE KEY或者INSERT IGNORE ,不要用UPDATE去实现。

75. 不要使用 MAX,使用索引字段和ORDER BY子句。

76. 避免使用ORDER BY RAND().

77。LIMIT M,N实际上可以减缓查询在某些情况下,有节制地使用。

78。在WHERE子句中使用UNION代替子查询。

79。对于UPDATES(更新),使用 SHARE MODE(共享模式),以防止独占锁。

80。在重新启动的MySQL,记得来温暖你的数据库,以确保您的数据在内存和查询速度快。

81。使用DROP TABLE,CREATE TABLE DELETE FROM从表中删除所有数据。

82。最小化的数据在查询你需要的数据,使用*消耗大量的时间。

83。考虑持久连接,而不是多个连接,以减少开销。

84。基准查询,包括使用服务器上的负载,有时一个简单的查询可以影响其他查询。

85。当负载增加您的服务器上,使用SHOW PROCESSLIST查看慢的和有问题的查询。

86。在开发环境中产生的镜像数据中 测试的所有可疑的查询。

MySQL 备份过程:

87. 从二级复制服务器上进行备份。

88. 在进行备份期间停止复制,以避免在数据依赖和外键约束上出现不一致。

89. 彻底停止MySQL,从数据库文件进行备份。

90. 如果使用 MySQL dump进行备份,请同时备份二进制日志文件 – 确保复制没有中断。

91. 不要信任LVM 快照 – 这很可能产生数据不一致,将来会给你带来麻烦。

92. 为了更容易进行单表恢复,以表为单位导出数据 – 如果数据是与其他表隔离的。

93. 当使用mysqldump时请使用 –opt。

94. 在备份之前检查和优化表。

95. 为了更快的进行导入,在导入时临时禁用外键约束。

96. 为了更快的进行导入,在导入时临时禁用唯一性检测。

97. 在每一次备份后计算数据库,表以及索引的尺寸,以便更够监控数据尺寸的增长。

98. 通过自动调度脚本监控复制实例的错误和延迟。

99. 定期执行备份。

100. 定期测试你的备份。 最后 101: 执行MySQL 监控: Monitis Unveils The World’s First Free On-demand MySQL Monitoring.

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值