-
MySQL 5.5的半同步复制
所属栏目:[MySql教程] 日期:2016-10-14 热度:196
在保证数据库性能的前提下,怎么保证数据的一致性呢? 在MySQL 5.5版本中即支持异步复制又支持半同步复制。 1、当slave 连接master的时候,它会指出它是否支持半同步复制。 2、当master启用 semisynchronous replication.并且至少有一台slave也启用了该功[详细]
-
MySQL中的主从复制一致性检测
所属栏目:[MySql教程] 日期:2016-10-14 热度:162
在MySQL主从复制过程中,常常需要对某些重要的表进行一致性检查。 由于主从数据在同步时存在一定的延迟,因此直接读取服务器数据的方式无法严格保证信息的一致性。在数据在同步完全结束之前,一直处于不断变化且并不完整的状态下。锁表的可能实现这个问题[详细]
-
MySQL中的异常信息诊断
所属栏目:[MySql教程] 日期:2016-10-14 热度:166
今天要介绍的是Percona中的pt-stalk工具。 有些问题间歇性的发生,监控信息也许根本来不及采集信息,MySQL的锁定或活动的高峰通常没有留下任何数据来分析。这个是pt-stalk存在的意义, Pt-stalk 会监测一个触发条件,然后收集相关信息,该工具会将信息写入[详细]
-
MySQL主从复制的延迟监测
所属栏目:[MySql教程] 日期:2016-10-14 热度:168
主从复制延迟的监测,我以前的做法是通过比较show slave statusG中的两个变量的差值(Read_Master_Log_Pos,Exec_Master_Log_Pos),将差值设置为一个自己认为合理的范围,Seconds_Behind_Master 没有适用过,今天做一次解析: Seconds_Behind_Master 是通[详细]
-
MySQL的日常整理
所属栏目:[MySql教程] 日期:2016-10-14 热度:149
记录工作的点点滴滴: 今天遇到case 1: 在测试机上,start slave 出现假死现象,数据库能够连接, show processlist;显示:队列等待master 从错误日志里面看到: 120831 16:20:59 [ERROR] /usr/local/mysql3307/libexec/mysqld: Disk is full writing './m[详细]
-
MySQL多IDC部署的注意事项
所属栏目:[MySql教程] 日期:2016-10-14 热度:107
目前暂时还没有哪款数据库产品是专门针对跨IDC进行的优化,在理论上被业界认为最优的方案是采用基于Paxos协议(暂时只有google做出了实现,google f1),今天只讨论MySQL在这方面的注意事项: 对于跨IDC的情况基本都会设计到以下问题: 1、MySQL多IDC的数[详细]
-
MySQL中如何避免使用SWAP
所属栏目:[MySql教程] 日期:2016-10-14 热度:162
当物理内存的数量不能容纳数据的时候,os会把虚拟内存中的数据写到磁盘上,此时的交换对于运行在操作系统中的进程是透明的。 交换对与MySQL性能有很大的影响,对于Innodb存储引擎它对内存中的数据锁住全局互斥量,如果此时导致了磁盘的IO,那么所有的动作[详细]
-
MySQL准备语句:Prepared Statements
所属栏目:[MySql教程] 日期:2016-10-14 热度:200
MySQL准备语句(Prepared Statements), 使用增强的二进制客户端/服务器协议在客户端和服务器之间高效的发送数据,可以通过支持这种行协议的编程库来访问准备语句。 创建准备语句时,客户端库会像服务器发送一个实际查询的原型,然后服务器对该原型进行解析[详细]
-
关于MongoDB schema-free vs MySQL DDL
所属栏目:[MySql教程] 日期:2016-10-14 热度:200
文档数据库(Document-orient Database)支持Schema-Free,他的一行记录格式为:{name: 外观设计, value: 直板}},实际上是使用KEY/VALUE存储的mongo采用的是BSON二进制编码,因此空间上来说应该会比JSON省一些的,解析的时候按照JSON解析。每一个Document都[详细]
-
关于MySQL Innodb_flush_method
所属栏目:[MySql教程] 日期:2016-10-14 热度:119
innodb_flush_log_at_trx_commit 决定了事务日志何时write,flush innodb_flush_method确定了日志及数据文件如何write、flush。show variables显示该变量为空,那说明被设置了默认值(fdatasync) 下面我们先从Linux IO上理解一下文件是如何打开、写入、刷[详细]
-
对MySQL中误操作的思考
所属栏目:[MySql教程] 日期:2016-10-14 热度:131
作为一名DBA需要有着严谨的工作态度。 两台测试DB Server A, Server B, 默认存储引擎InnoDB.有这样一个需求:需要将A中所有的表结构同步到B中。当时是这样做的: mysqldump -no-data...... 导出mysql表的文件后结果又将这些文件应用到了Server A 中,可想[详细]
-
高并发下的MySQL解析
所属栏目:[MySql教程] 日期:2016-10-14 热度:193
工作中进行SQL优化的情况下,常常有这样的问题,SQL已经全部利用索引,请求的数据量较小, 总的数据量不大的情况下,仍有很多慢查询的出现(我们规定是20ms)。这个时候就要关注我们的并发量,事务锁,的情况。 对于游戏来说,DB存在大量的insert 、update[详细]
-
如何把MySQL服务添加到服务器的系统服务中
所属栏目:[MySql教程] 日期:2016-10-14 热度:149
1、了解MySQL程序路径 MySQL数据目录: /home/mysql/data MySQL程序目录:/usr/local/mysql5 2、修改MySQL服务启动程序 [root@lyq314 ~]# vim /usr/local/mysql5/share/mysql/mysql.server 46 basedir=/usr/local/mysql5 47 datadir=/home/mysql/data 3、拷[详细]
-
MySQL 5.5.30的源码编译安装过程
所属栏目:[MySql教程] 日期:2016-10-14 热度:63
0、安装cmake [root@lyq314 ~]# tar -zxvf cmake-2.8.11.2.tar.gz [root@lyq314 cmake-2.8.11.2]# ./configure [root@lyq314 cmake-2.8.11.2]# make [root@lyq314 cmake-2.8.11.2]# make install 1、添加mysql用户和组 [root@lyq314 ~]#groupadd mysql [ro[详细]
-
mysql如何授权远程IP连接
所属栏目:[MySql教程] 日期:2016-10-14 热度:50
新安装的MySQL是默认不开户远程访问权限的,也就不能外部连接MySQL。这样对想远程调用MySQL的数据很不方便。下面我们来看下如何设置允许远程连接MySQL数据库。 登录MySQL mysql -uroot -p 如果无法登录可以使用find / -name mysql搜索mysql程序的路径,比[详细]
-
如何找回消失的InnoDB引擎
所属栏目:[MySql教程] 日期:2016-10-14 热度:57
夜里重做主从复制,顺便调整了下从库的my.cnf。早上想起从库忘了重启,打完命令接着开启slave,居然报错 Last_SQL_Errno: 1286 Last_SQL_Error: Error executing row event: 'Unknown storage engine 'InnoDB'' 奇怪,怎么会报错不知道存储引擎InnoDB。查[详细]
-
使用SHELL开发的CPU空闲率插件
所属栏目:[MySql教程] 日期:2016-10-13 热度:178
#!/bin/bash #=============================================== # Author : JC # Email : jiechao2013@gmail.com # ChangeLog : 2013.5.4 # # Description : Check the CPU-Utilization rate #=============================================== STATE_OK=[详细]
-
如何使用SHELL编写redis的启动脚本
所属栏目:[MySql教程] 日期:2016-10-13 热度:111
#!/bin/bash # # Init file for redis # From: JC# Email:jiechao2013@gmail.com# chkconfig: - 80 12 # description: redis daemon # # processname: redis # config: /opt/redis-2.6.4/redis.conf # pidfile: /var/run/redis.pid source /etc/init.d/fun[详细]
-
高性能的MySQL(8)优化服务器配置:内存
所属栏目:[MySql教程] 日期:2016-10-13 热度:154
配置MySQL服务器离不开配置文件,接下来就开始这一部分的内容。 首先一定要清楚配置文件的位置,如果不知道可以尝试下面的操作: /usr/local/mysql/bin/mysqld --verbose --help | grep -A 1 'Default options' #结果如下 Default options are read from t[详细]
-
高性能的MySQL(8)优化服务器配置:并发和负载
所属栏目:[MySql教程] 日期:2016-10-13 热度:62
当MySQL遇到高并发时,可能会遇到不曾遇到的瓶颈。 一、InnoDB并发配置 InnoDB是为高性能设计的,在最近几年他的提升非常明显,但依然不完美。 InnoDB有自己的 线程调度器控制线程怎么进入内核访问数据,以及他们在内核中一次可以做哪些事情。最基本的限制[详细]
-
windows下如何彻底删除MySQL
所属栏目:[MySql教程] 日期:2016-10-13 热度:133
卸载mysql其实也是一门艺术 1)控制面板里卸载 2)如果你的操作系统用户名是Administrator则删除 C:Documents and SettingsAdministratorApplication DataMySQL 3)删除 C:Documents and SettingsAll UsersApplication DataMySQL 4)删除注册表 regedi[详细]
-
MySQL的性能优化和使用技巧
所属栏目:[MySql教程] 日期:2016-10-13 热度:59
本文是笔者从工作中总结而出.由于时间问题和考虑的不可能足够全面,所以本文会很长时间才会完成,下面会陆续给出内容,与大家分享^_^ 在windows下,配置文件为%mysql_home%/my.ini 在linux下,配制文件为/etc/my.cnf 一 性能优化 1--------INNODB_BUFFER_PO[详细]
-
MySQL中统计数据时空的也显示
所属栏目:[MySql教程] 日期:2016-10-13 热度:186
在工作中,有这样一个需求,就是需要统计24个小时的相关数据.有的朋友认为简单的一句group by就可以解决。其实不然,真正的统计,24个小时都得有数据的,不允许出现缺失的现象.其实这个有点像废话,处理结果集ResultSet也可以,但为了减少JAVA的负担和增强jav[详细]
-
MySQL中数据重复的判断方法
所属栏目:[MySql教程] 日期:2016-10-13 热度:91
本人工作中的实际应用.在采集数据的时候,要求数据采集以后,不能重复.同时也要 求有多个实例同时运转,保证数据采集的连续性.因此总结了一下,做成了如下的小试验. 核心代码如下: 表结构:只有3个字段 id,name,password Sql代码 CREATE TABLE `tt` ( `Id` i[详细]
-
MySQL中如何按月统计数据
所属栏目:[MySql教程] 日期:2016-10-13 热度:70
表finance有俩个字段如下 date date money double(15,2) 下面需要对表 finance的2010年财务数据,按月进行统计 Sql代码 select DATE_FORMAT(date,'%Y-%m') as month,sum(money) as money from finance where DATE_FORMAT(date,'%Y')=2010 group by month o[详细]