25

为何授权不对

第一条授权信息,允许 yejr@192.168.0.1 对所有数据库&表(*.*)有相关权限;而第二条授权信息则允许 yejr@192.168.0.1 仅仅对数据库 * 下面的表(`*`.*)有相关权限。注意,这里的数据库名 * 可不是代表所有哦,而是具体的名字就叫做 *,也就是说数据库主目录下,会有一个名是 * 的子目录。mysql允许以反引号来把数据库名引用起来,是的可以使用一些比较古怪的字符,例如:*, ‘, $, % 等等。

继续阅读全文

23

改良版本mysqldump来备份MYSQL数据库

我的备份脚本都是在凌晨执行的,经常在慢查询日志里面看到这样的信息:select * from table1;
之前一直很纳闷,最后才了解到原来是MYSQLDUMP搞的鬼。
因为MYSQLDUMP会为整个库来加一个全局锁定。
如果单纯用MYSQLDUMP进行全库备份会造成以下三个方面的影响。
1、服务器CPU严重阻塞。
2、磁盘I/O直线增加。
3、所有的查询都成了慢查询。

继续阅读全文

17

MySQL优化 — 频繁创建临时表

引言:某客户新上线一个项目,利用存储过程处理用户登录相关事务。在存储过程中,需要对用户数据进行处理,于是他们采用临时表(temporary table)来做这个动作,先创建一个临时表,然后插入数据,处理;由于是采用连接池方式,担心临时表被复用,于是在最后删除该临时表。

继续阅读全文

17

配置MySQL远程复制

MySQL远程复制的用途很广,常见的用于数据库的负载均衡,主库写,从库读,由于读锁是允许并发的,可有效提高并发处理能力。关于MySQL的高性能(High Performance)和高可用性(High availability)配置,推荐看看O’Reilly的《High Performance MySQL》一书。此外,远程复制对于远程数据交换也是有用的,如果你需要在不同的区域交换数据,不妨考虑的MySQL远程复制。

继续阅读全文