Welcome 微信登录

首页 / 数据库 / MySQL

MySQL5.6 Replication主从复制(读写分离) 配置完整版

MySQL5.6 Replication主从复制(读写分离) 配置完整版

MySQL5.6主从复制(读写分离)教程1、MySQL5.6开始主从复制有两种方式:基于日志(binlog);基于GTID(全局事务标示符)。需要注意的是:GTID方式不支持临时表!所以如果你的业务系统要用到临时表的话就不要考虑这种方式了,至少目前最新版本MySQL5.6.12的GTID复制还是不支持临时表的。所以本教程主要是告诉大家如何通过日志(binlog)方式做主从复制!2、MySQL官方提供的MySQL Replication教程:http://d...
如何进行mysql的优化

如何进行mysql的优化

1,这个比较简单:在phpmyadmin中有提供2.先设计表的时候考虑选择什么样的存储引擎,myisam不支持事务,但查询速度快,不过现在一般采用的都是InnoDB,能符合95%的项目需求。具体的你可以看看两者的区别。3.要避免全表查询的操作,这个网上有资料。 4.在where和order by的字段上面建索引,当然索引不是多就好,会使insert和update速度变慢5,尽量不要采用null值,因为这样搜索引擎会花费大量的时间在这里,而且存储上也有区别,...
mysql 5.6.14主从复制(也称mysql AB复制)环境配置方法

mysql 5.6.14主从复制(也称mysql AB复制)环境配置方法

一、mysql主(称master)从(称slave)复制的原理: (1).master将数据改变记录到二进制日志(binary log)中,也即是配置文件log-bin指定的文件(这些记录叫做二进制日志事件,binary log events) (2).slave将master的binary log events拷贝到它的中继日志(relay log) (3).slave重做中继日志中的事件,将改变反映它自己的数据(数据重演)附简要原理图:二、mysql主...
mysql Event Scheduler: Failed to open table mysql.event

mysql Event Scheduler: Failed to open table mysql.event

其实这个错误按字面意思就是不能打开mysql.event表,那么就是权限问题导致的。一般mysql也无法运行。在 本地计算机 无法启动 MySQL 服务。错误 1067: 进程意外终止。mysql 安装改变数据库路径出现的问题解决方法在windows上安装MySQL时,刚装后一切正常,但出于数据安全考虑,想把数据库目录放在D:mysqldata下,于是对my.ini进行修改,将datadir="C:Documents and SettingsAll Use...
MySQL实现MYISAM表批量压缩的方法

MySQL实现MYISAM表批量压缩的方法

本文实例讲述了MySQL实现MYISAM表批量压缩的方法。分享给大家供大家参考,具体如下:关于对MYISAM表的压缩,可以使用myisampack和myisamchk完成(myisampack完之后必须进行myisamchk才能使用压缩后的表,而且是只读的), 其详细地用法可以参考官方文档: http://dev.mysql.com/doc/refman/5.1/zh/client-side-scripts.html。这两个操作需要谨慎使用,在压缩之前需要...
mysql表优化、分析、检查和修复的方法详解

mysql表优化、分析、检查和修复的方法详解

本文实例讲述了mysql表优化、分析、检查和修复的方法。分享给大家供大家参考,具体如下:这里介绍对数据库的管理常规就是进行预防性的维护,以及修复那些出现问题的内容。进行检查和修复通常具有四个主要的任务:1. 对表进行优化2. 对表进行分析(分析并存储MyISAM和BDB表中键的分布)3. 对表进行检查(检查表的错误,并且为MyISAM更新键的统计内容)4. 对表进行修复(修复被破坏的MyISAM表)一、对表进行优化优化表有很多方式实现: OPTIMIZE ...
mysql关联子查询的一种优化方法分析

mysql关联子查询的一种优化方法分析

本文实例讲述了mysql关联子查询的一种优化方法。分享给大家供大家参考,具体如下:很多时候,在mysql上实现的子查询的性能较差,这听起来实在有点难过。特别有时候,用到IN()子查询语句时,对于上了某种数量级的表来说,耗时多的难以估计。本人mysql知识所涉不深,只能慢慢摸透个中玄机了。假设有这样的一个exists查询语句:select * from table1where exists(select * from table2 where id>=...
MySQL切分查询用法分析

MySQL切分查询用法分析

本文实例讲述了MySQL切分查询用法。分享给大家供大家参考,具体如下:对于大查询有时需要‘分而治之",将大查询切分为小查询: 每个查询功能完全一样,但只完成原来的一小部分,每次查询只返回一小部分结果集。删除旧的数据就是一个很好地例子。定期清理旧数据时,如果一条sql涉及了大量的数据时,可能会一次性锁住多个表或行,耗费了大量的系统资源,却阻塞了其他很多小的但重要的查询。将一个大得DELETE语句切分为较小的查询时,可以尽量减少影响msql的性能,同时减少my...
MySQL子查询用法实例分析

MySQL子查询用法实例分析

本文实例讲述了MySQL子查询用法。分享给大家供大家参考,具体如下:假设表my_tbl包含三个字段a,b,c;现在需要查询表中列a的每个不同值下的列b为最小值的记录量。比如表记录为:a b c1 3 "cd"2 3 "nhd"1 5 "bg"2 6 "cds"1 7 "kiy"3 7 "vsd"3 8 "ndf"希望得到结果为:a b c1 3 "cd"2 3 "nhd"3 7 "vsd"(1) 其中一个做法:先查出每个a值下的b最小值,然后根据这些最小值...
MySQL中字符串索引对update的影响分析

MySQL中字符串索引对update的影响分析

本文分析了MySQL中字符串索引对update的影响。分享给大家供大家参考,具体如下:对某一个类型为varchar的字段添加前缀索引后,基于该子段的条件查询时间基本大幅下降;但对于update操作,所耗的时间却急剧上升,主要原因是在更新数据的同时,mysql会执行索引的更新。下面做了一个简单的试验。(1)首先对某个亿级记录的表字段所有记录执行更新:for idx in range(1, count+1):sql = "update tbl_name set...
MySQL的root密码忘记怎么办 修改root密码的方式

MySQL的root密码忘记怎么办 修改root密码的方式

如果哪天你忘记了线上MySQL数据库的root密码,怎么办?大家往往会想到skip-grant-tables参数,具体步骤如下:1. 关闭MySQL数据库,因为root密码忘记了,mysqladmin无法使用,此时,只能通过kill pid关闭程序。在这里,科普一下kill 和kill -9的区别默认参数下,kill 发送SIGTERM信号给进程,告诉进程,你需要被关闭,请自行停止运行并退出。kill -9 发送SIGKILL信号给进程,告诉进程,...
MySQL分页优化

MySQL分页优化

最近,帮同事重写了一个MySQL SQL语句,该SQL语句涉及两张表,其中一张表是字典表(需返回一个字段),另一张表是业务表(本身就有150个字段,需全部返回),当然,字段的个数是否合理在这里不予评价。平时,返回的数据大概5w左右,系统尚能收到数据。但12月31日那天,数据量大概20w,导致SQL执行时间过长,未能在规定的时间内反馈结果,于是系统直接报错。一般的思路是用MySQL的分页功能,即直接在原SQL语句后面增加LIMIT子句。但请注意,虽然你看到的...
如何恢复MySQL主从数据一致性

如何恢复MySQL主从数据一致性

最近被告知,MySQL主从数据库的数据不一致,猜测备库在同步过程中出现了问题,于是,登上备库,使用 mysql> show slave statusG查看,果然,备库在insert语句中因违反主键约束,导致备库停止了同步。现在的问题很明确,就是如何恢复主从库数据的一致性。可选方案如下:一、查看Master最新的Position,将其作为Slave复制的起点。这种思路体现的是过去的不一致既往不咎,现在保持同步即可。看起来,这个思路和恢复主从库数据的一致...
解决MySQL Sending data导致查询很慢问题的方法与思路

解决MySQL Sending data导致查询很慢问题的方法与思路

最近帮忙定位一个mysql查询很慢的问题,定位过程综合各种方法、理论、工具,很有代表性,分享给大家。【问题现象】使用sphinx支持倒排索引,但sphinx从mysql查询源数据的时候,查询的记录数才几万条,但查询的速度非常慢,大概要4~5分钟左右【处理过程】1)explain首先怀疑索引没有建好,于是使用explain查看查询计划,结果如下:从explain的结果来看,整个语句的索引设计是没有问题的,除了第一个表因为业务需要进行整表扫描外,其它的表都是通...
<< 141 142 143 144 145 146 147 148 149 150 >>