摘要:Explain语法 EXPLAIN SELECT …… 变体: 1. EXPLAIN EXTENDED SELECT …… 将执行计划“反编译”成SELECT语句,运行SHOW WARNINGS 可得到被MySQL优化器优化后的查询语句 2. EXPLAIN PARTITIONS SELECT ……
阅读全文
摘要:写在前面:索引对查询的速度有着至关重要的影响,理解索引也是进行数据库性能调优的起点。考虑如下情况,假设数据库中一个表有10^6条记录,DBMS的页面大小为4K,并存储100条记录。如果没有索引,查询将对整个表进行扫描,最坏的情况下,如果所有数据页都不在内存,需要读取10^4个页面,如果这10^4个页
阅读全文
摘要:第一种方式: 最简单的方法就是借助第三方工具Navicat for MySQL来修改,方法如下: 1、登录mysql到指定库,如:登录到test库。 2、然后点击上方“用户”按钮。 3、选择要更改的用户名,然后点击上方的“编辑用户”按钮。 4、出现如图界面,输入新密码,并确认新密码,点击“保存”按钮
阅读全文
摘要:记一次MySQL 死锁分析处理过程,聊聊我的思路。前车之鉴,后事之师。 以一个例子为切入点 一、问题背景 某业务模块反馈数据库最近出现过几次死锁告警的情况,本文总结了这次死锁排查的全过程,并分析了导致死锁的原因及解决方案。 希望给大家提供一个死锁的排查及解决思路。 基础环境: 主机类型:x3850
阅读全文
摘要:如何在Linux下卸载MySQL数据库呢? 下面总结、整理了一下Linux平台下卸载MySQL的方法。 MySQL的安装主要有三种方式:二进制包安装(Using Generic Binaries)、RPM包安装、源码安装。 RPM包安装方式的MySQL卸载 1: 检查是否安装了MySQL组件。 [r
阅读全文
摘要:Q:什么是触发器? A: 触发器是与表有关的数据库对象,在满足定义条件时触发,并执行触发器中定义的语句集合。 触发器的特性: 1、有begin end体,begin end;之间的语句可以写的简单或者复杂 2、什么条件会触发:I、D、U 3、什么时候触发:在增删改前或者后 4、触发频率:针对每一行执
阅读全文
摘要:tcpdump采用命令行方式对接口的数据包进行筛选抓取,其丰富特性表现在灵活的表达式上。 不带任何选项的tcpdump,默认会抓取第一个网络接口,且只有将tcpdump进程终止才会停止抓包。 例如: shell> tcpdump -nn -i eth0 icmp 下面是详细的tcpdump用法。 1
阅读全文
摘要:一、简介 MySQL目前主要有以下几种索引类型:1.普通索引2.唯一索引3.主键索引4.组合索引5.全文索引 二、语句 CREATE TABLE table_name[col_name data type] [unique|fulltext][index|key][index_name](col_n
阅读全文
摘要:在mysql文档中,mysql变量可分为两大类,即系统变量和用户变量。 但根据实际应用又被细化为四种类型,即局部变量、用户变量、会话变量和全局变量。 一、局部变量 mysql局部变量,只能用在begin/end语句块中,比如存储过程中的begin/end语句块。 其作用域仅限于该语句块。 -- de
阅读全文
摘要:问题 我们在设计表结构的时候,设计规范里面有一条如下规则:对于可变长度的字段,在满足条件的前提下,尽可能使用较短的变长字段长度。为什么这么规定,主要基于两个方面 基于存储空间的考虑 基于性能的考虑 网上说Varchar(50)和varchar(500)存储空间上是一样的,真的是这样吗?基于性能考虑,
阅读全文
摘要:一、前言 日志文件中记录着MySQL数据库运行期间发生的变化;包括MySQL数据库的客户端连接状况、SQL语句的执行情况和错误信息等,是MySQL数据库的重要组成部分。 MySQL日志分类: 错误日志 查询日志 慢查询日志 事务日志(Redo log) 二进制日志 中继日志 二、错误日志 默认情况下
阅读全文
摘要:安装MySQL-python 要想使python可以操作mysql 就需要MySQL-python驱动,它是python 操作mysql必不可少的模块。 下载地址:https://pypi.python.org/pypi/MySQL-python/ 下载MySQL-python-1.2.5.zip
阅读全文
摘要:业内目前推荐使用的是row模式,准确性高,虽然说文件大,但是现在有SSD和万兆光纤网络,这些磁盘IO和网络IO都是可以接受的。 那么,大家一定想问,为什么不推荐使用mixed模式,理由如下假设master有两条记录,而slave只有一条记录。master的数据为 + + + | id | n | +
阅读全文
摘要:1、MySQL适用的场景是什么? 数据量建议单实例T级或以内,不依赖存储过程、函数、触发器的传统oltp场景都适用,因为是一个相对轻量级的数据库 灾备使用MySQL各类的高可用方案即可,比如主从、mha、mgr等。 2、MySQL巡检应该怎么做?优先关注哪些参数? 可以从以下几个方面去做: 服务器配
阅读全文
摘要:简介: MHA(Master High Availability)目前在MySQL高可用方面是一个相对成熟的解决方案,它由日本DeNA公司youshimaton(现就职于Facebook公司)开发,是一套优秀的作为MySQL高可用性环境下故障切换和主从提升的高可用软件。在MySQL故障切换过程中,M
阅读全文
摘要:一、mysqldump 简介 mysqldump 是 MySQL 自带的逻辑备份工具。 它的备份原理是通过协议连接到 MySQL 数据库,将需要备份的数据查询出来,将查询出的数据转换成对应的insert 语句,当我们需要还原这些数据时,只要执行这些 insert 语句,即可将对应的数据还原。 二、备
阅读全文
摘要:▍先介绍一下背景 团队正在一个为 SQL Server 构建数据目录项目的历程中,我们优化系统以实现解耦。这对我们来说非常重要,从根本上来说,我归结为两个核心原则,希望每个软件专业人员都能认同: 我们不希望系统复杂度随功能的增加而线性增长,这样会大大拖慢我们在业务发展速度以及对于价值的信心。 我们希
阅读全文
摘要:一、问题背景 基础环境: 主机类型:x3850 X6 操作系统:DB:Red Hat Enterprise Linux 9.1 7.8 存储:IBM存储,500GB 内存:64 G CPU型号:E7-4830 v3 @ 2.10GHz CPU核数:32CORE 数据库环境:8.0.27 问题现象:
阅读全文
摘要:在日常维护工作当中经常会需要对数据进行导出操作,而mysqldump是导出数据过程中使用非常频繁的一个工具;它自带的功能参数非常多,文章中会列举出一些常用的操作,在文章末尾会将所有的参数详细说明列出来。 语法: 默认不带参数的导出,导出文本内容大概如下:创建数据库判断语句-删除表-创建表-锁表-禁用
阅读全文
摘要:Binlog日志,即binary log,是二进制日志文件,有两个作用,一个是增量备份,另一个是主从复制,即主节点维护一个binlog日志文件,从节点从binlog中同步数据,也可以通过binlog日志来恢复数据 1,登录mysql查看binlog日志的状态,输入show variables lik
阅读全文