Category Archives: MySQL

利用ProxySQL实现MySQL的读写分离

一、Proxysql 的基础知识

ProxySQL是一个可以实现MySQL读写分离的轻量级工具。

ProxySQL的特点

  • 将所有配置保存写入到SQLit表中。
  • 支持动态加载配置,即一般可以在线修改配置,但有少部分参数还是需要重启来生效。
  • 支持query cache。
  • 支持对query的路由,可以针对某个语句进行分配去哪个实例执行。
  • 故障切换。
  • 过滤危险的SQL。
  • 不支持分表,可以分库,但是利用规则配置实现分表。

ProxySQL的管理配置

[......]

阅读全文»

Xtrabackup备份和恢复MySQL

Xtrabackup是一个对InnoDB做数据备份的工具,支持在线热备份(备份时不影响数据读写),是商业备份工具InnoDB Hotbackup的一个很好的替代品。Xtrabackup中包含两个工具:

* xtrabackup – 用于热备份innodb, xtradb表的工具,不能备份其他表。

* innobackupex – 对xtrabackup封装的perl脚本,提供了myisam表备份的能力。

Xtrabackup可以做什么

* 在线(热)备份整个[......]

阅读全文»

Percona Xtrabackup快速备份MySQL[转]

转载补充:

Xtrabackup是一个对InnoDB做数据备份的工具,支持在线热备份(备份时不影响数据读写),是商业备份工具InnoDB Hotbackup的一个很好的替代品。

Xtrabackup有两个主要的工具:xtrabackup、innobackupex

  • (1)xtrabackup只能备份InnoDB和XtraDB两种数据表,而不能备份MyISAM数据表
  • (2)innobackupex-1.5.1则封装了xtrabac[......]

阅读全文»

修复 MySQL 数据库结构错误 – 升级[转]

不知道是不是每次更新 MySQL 软件之后都需要执行数据库升级指令?在我进行过的几次软件升级之后,总会在 MySQL 的日志中见到“[ERROR] Missing system table mysql.proxies_priv; please run mysql_upgrade to create it”之类的错误。虽然这个错误修复起来很简单,却不容易引起注意。

1. 错误描述

我在好几次见到这样的错误提示之后才决定好好看看到底写了些什么。因为网站运行很正常,就心想应该不怎么重要吧。错误提示大致内容如[......]

阅读全文»

详解MySQL中EXPLAIN解释命令

explain显示了mysql如何使用索引来处理select语句以及连接表。可以帮助选择更好的索引和写出更优化的查询语句。

使用方法,在select语句前加上explain就可以了:

如:

explain select surname,first_name form a,b where a.id=b.id

EXPLAIN列的解释:

table:显示这一行的数据是关于哪张表的

type:这是重要的列,显示连接使用了何种类型。从最好到最差的连接类型为const、eq_reg[......]

阅读全文»

ubuntu server下使用Google Performance Tools优化MySQL在高并发情况下的性能

step 1. 因为是64位的系统,所以先要安装libunwind,32位系统可以忽略此步

step 2.安装Google Performance Tools

step 3. 修改MySQL启动脚本(根据你的MySQL安装位置而定):

在# executing m[......]

阅读全文»

搭建mysql负载均衡及高可用环境

目标:使用两台主机实现 Mysql 的负载均衡及冗余,并做到双主互备;

环境:rhel5.8,mysql-5.0.77,keepalived-1.2.7,haproxy-1.4.20;

说明:

keepalived 实现通过 vrrp协议,通过使一个虚拟IP地址(或称浮动IP)在主备设备间的切换来达到主机冗余;

而客户机通过访问这个虚拟IP 来获取服务;

haproxy 是一款负载均衡软件,用于将请求按策略转发给不同主机,达到负载均衡的效果[......]

阅读全文»

MySQL 之 slow log

慢查询有什么用?

它能记录下所有执行超过long_query_time时间的SQL语句,帮你找到执行慢的SQL,方便我们对这些SQL进行优化。

测试用 MySQL 版本。

Server version: 5.6.10-log Source distribution

未做任何慢日志设置时。

修改配置文件,开启 slow log 。

[crayon-5b4f9d1a34c[......]

阅读全文»