MySQL使用规范手册,程序员必知必会( 四 )


六、MySQL数据库行为规范
1、超过100万行数据的批量操作(update delete insert) , 分多次进行
大批量操作可能会造成严重的主从延迟;
binlog日志为row格式时会产生大量的日志;
避免产生大事物操作 。
2、对于大表使用pt-online-schema-change 修改表结构
1)避免大表修改产生的主从延迟、避免在对表字段进行修改时进行锁表;
2)pt-online-schema-change 它首先会建立一个与原表结构相同的新表 , 并且在新表上进行表结构的修改 , 然后再把原表中的数据复制到新表中 , 并在原表中增加一些触发器;然后 , 把原表中新增的数据也复制到新表中 , 在行所有数据复制完成之后 , 把新表命名成原表 , 并把原来的表删除掉 , 其是把原来一个DDL操作 , 分解成多个小的批次执行 。
3、禁止给程序使用的账号授予super 权限
当达到最大连接数限制时 , 还运行1个有super权限的用户连接super权限只能留给DBA处理问题的账号使用 。
4、对于程序连接数据库账号 , 遵循权限最小原则
程序使用数据库账号只能在一个数据库下使用 , 且程序使用的账号原则上不授予drop 权限 。




推荐阅读