MySQL

MySQL数据库存储引擎InnoDB和MyISAM的相关知识

1. MyISAM底层存储 (非聚集索引方式)与InnoDB底层存储(聚集索引方式) 1.1 MyISAM底层存储(非聚集索引方式) Myisam 创建表后生成的文件有三个: frm:创建表的语句 MYD:表里面的数据文件(myisam data) MYI...

性能优化:如何利用explain排查分析慢sql的实战

一 概述 1.0 sql调优的过程 SQL调优过程: 观察,至少跑1天,看看生产的慢SQL情况。 开启慢查询日志,设置阙值,比如超过5秒钟的就是慢SQL,并将它抓取出来。 explain + 慢SQL分析。 show profile,查询SQL在Mysql...

讲解PostgreSQL 实现定时任务的多种不同方法

数据库定时任务可以用于实现定期的备份、统计信息采集、数据汇总、数据清理与优化等。PostgreSQL 没有提供类似 Oracle、MySQL 以及 Microsoft SQL Sever 的内置任务调度功能,因此本文给大家介绍一下 PostgreSQL 数...

SQL开发知识:要知道mysql哪些查询情况不走索引

前言 在MySQL中,并不是你建立了索引,并且你在SQL中使用到了该列,MySQL就肯定会使用到那些索引的,有一些情况很可能在你不知不觉中,你就“成功的避开了”MySQL的所有索引。 mysql哪些查询情况不走索引 1、索引列参与计...

SQL开发知识:如何利用MySQL添加联合唯一索引

联合唯一索引 项目中需要用到联合唯一索引: 例如:有以下需求:每个人每一天只有可能产生一条记录:处了程序约定之外,数据库本身也可以设定: 例如:t_aa 表中有aa,bb两个字段,如果不希望有2条一模一样的记录(即:aa字段的值可以重复; bb字段的值也可...

MySQL开发知识:MySQL数据库连接查询 join原理

1、连接查询的分类 交叉连接 内连接 外连接 左外链接(左连接) 右外连接(右连接) 自然连接 2、交叉连接 将两张表的数据与另外一张表彼此交叉 2.1、原理 笛卡尔积: 从第一张表一次取出每一条数据 取出每一条记录之后,与另外一张表的全部记录挨个匹配 没...

教你Linux 如何定时备份postgresql 数据库

为了避免操作数据库的风险 因此计划每天对postgresql 数据库 进行定时备份 1.服务器地址: 备份服务器地址 10.10.10.101(虚构) postgresql 数据库所在的服务器地址 10.10.10.100(虚构) 因为我有单独的备份数据库...

SQL开发知识:SQL中表锁定(LOCK、UNLOCK)的具体使用

MySQL 表锁定 锁是与表关联的标志。MySQL允许客户端会话显式获取表锁,以防止其他会话在特定时间段内访问同一个表。客户端会话只能为自己获取或释放表锁。它无法获取或释放其他会话的表锁。 CREATE TABLE tbl ( id INT NOT NUL...

性能优化:MySQL如何快速定位慢SQL实战记录

开启慢查询日志 在项目中我们会经常遇到慢查询,当我们遇到慢查询的时候一般都要开启慢查询日志,并且分析慢查询日志,找到慢sql,然后用explain来分析 系统变量 MySQL和慢查询相关的系统变量如下 参数 含义 slow_query_log 是否启用慢查...

数据库恢复之:MySQL delete删除数据后释放磁盘空间的操作方法

三、优化表空间 当 MySQL 数据库服务删除部分数据后;有些情况下这些数据占用的存储空间会释放掉,有些情况这些存储空间则不会释放。以下是对这种情况的简单说明: 一、删除表|清空数据表 当执行删除数据表或者清空数据表的全部数据操作时,都会释放掉相应的磁盘存...