读书频道 > 网站 > 网页设计 > Effective MySQL之深入解析复制技术
2.2.1 二进制日志
14-03-25    奋斗的小年轻
收藏    我要投稿   
《effective mysql之深入解析复制技术》由oracle ace director、资深mysql专家ronald bradford和chris schneider共同撰写,介绍了在使用mysql数据复制技术构建具有可扩展性解决方案的过程中需要了解和实现的立即去当当网订购

2.2  解释数据复制信息

知道如何去寻找数据复制信息是DBA的一项重要技能。然而,解释数据复制信息有时是一项很大的挑战。理解移动的部分是如何一起作用的,以及如何查看数据复制的状态,都是管理MySQL数据库的必要步骤。在下面的章节中我们会概述数据复制的组成,以及如何使用不同的命令和工具,从而在数据复制环境中做出明智的选择。

2.2.1  二进制日志

MySQL默认数据复制中的数据复制要求启用二进制日志。也就是在开始mysqld时指定–log-bin=[base_name]或MySQL配置文件(例如my.cnf)。在二进制日志中,base_name的默认值就是正在运行的MySQL服务器的主机名称。改变二进制日志中base_name的默认名称可以避免以后改变主机名称时带来的混淆。实际的二进制日志包含基本名和后面跟随的扩展名。

MySQL也会创建一个二进制日志索引文件。这个索引文件以存储路径和二进制日志的base_name作为默认名称,并且以.index作为扩展名。可以使用log-bin-index这个配置选项来改变索引文件的名称。下面的这段代码基于某个配置文件中的预定值列出了这些文件。这个配置文件包含完整的目录。

$ MYCNF="/etc/my.cnf"

$ BINLOG='grep log-bin ${MYCNF} | cut -d'=' -f2'

$ echo ${BINLOG}

$ DIR='dirname ${BINLOG}'

$ cd ${DIR}

$ ls -lh *

$ cat *.index

/opt/mysql/binlog/mysql-bin

-rw-rw---- 1 mysql mysql 49M   Apr 30    2011 mysql-bin.000001

-rw-rw---- 1 mysql mysql 1.1G May 16 06:28 mysql-bin.000002

-rw-rw---- 1 mysql mysql 772M May 29 21:50 mysql-bin.000003

-rw-rw---- 1 mysql mysql 400M Jun 5 17:29 mysql-bin.000004

-rw-rw---- 1 mysql mysql   140 May 29 21:52 log-bin.index

/opt/mysql/binlog/mysql-bin.000001

/opt/mysql/binlog/mysql-bin.000002

/opt/mysql/binlog/mysql-bin.000003

/opt/mysql/binlog/mysql-bin.000004

提示

我们推荐总是为log-bin指定base_name。这个普通的建议是为了提供与特定主机细节无关的常规名称。

二进制日志包含所有应用在MySQL服务器中的所有写入活动,比如INSERT、UPDATE、DELETE、REPALCE、CREATE、ALTER和DROP命令,而读取活动不会被记录在二进制日志中。如果想要记录所有读取与写入活动,可以使用general_log和general_log_file选项来启用常规日志(general log)。

注意

较老版本的MySQL中,常规日志可以使用--log变量来启用。这个变量在MySQL 5.1中已被废弃。

警告

当常规日志提供所有运行的SQL语句细节时,由于记录大量语句造成的性能影响,我们不推荐在生产环境中启用二进制日志。

点击复制链接 与好友分享!回本站首页
分享到: 更多
您对本文章有什么意见或着疑问吗?请到论坛讨论您的关注和建议是我们前行的参考和动力  
上一篇:1.3 功能
下一篇:1.5 小结
相关文章
图文推荐
JavaScript网页动画设
1.9 响应式
1.8 登陆页式
1.7 主题式
排行
热门
文章
下载
读书

关于我们 | 联系我们 | 广告服务 | 投资合作 | 版权申明 | 在线帮助 | 网站地图 | 作品发布 | Vip技术培训
版权所有: 红黑联盟--致力于做最好的IT技术学习网站