之前看到的TiDB和MySql的性能对比都是大量短耗时请求下的压测,单机情况下TiDB和MySql的确有些差距,不过笔者最近碰到的场景更多是sql要扫描的行数不小的情况下单sql比较耗时的问题,所以自己做了个简单测试这类型sql的耗时. TiDB单机环境部署 按照官方文档(https://pingcap.com/docs-cn/dev/how-to/get-started/deploy-tidb-from-docker-compose/) 直接使用docker-composer部署 git cl…
2016-09-0111:06:53                                     使用sql标签库+tomcat+mysql手动创建一个jsp 1. 1.1安装tomcat服务器 学习JavaWeb开发一般都使用Tomcat服务器,该服务器支持全部JSP以及Servlet规范 Apache官方网站下载tomcat,这里我用的是tomcat6.0(网上有很多下载教程故此处略过) 要注意一点的是: 1>tar.gz文件是Linux操作系统下的安装版本 2>exe文件是W…
1. MySQL的架构介绍1.1 MySQL简介: MySQL是一个关系型数据库管理系统,由瑞典MySQL AB公司开发,目前属于Oracle公司. MySQL是一种关联数据库管理系统,将数据保存在不同的表中,而不是将所有数据放在一个大仓库内,这样就增加了速度并提高了灵活性. Mysql是开源的,所以你不需要支付额外的费用. Mysql支持大型的数据库.可以处理拥有上千万条记录的大型数据库. MySQL使用标准的SQL数据语言形式. Mysql可以允许于多个系统上,并且支持多种语言.这些编程语言…
SQL Server定时自动抓取耗时SQL并归档数据发邮件脚本分享 第一步建库和建表 USE [master] GO CREATE DATABASE [MonitorElapsedHighSQL] GO --建表 USE [MonitorElapsedHighSQL] GO --1.表[SQLCountStatisticsByDay] --抓取到的sql语句数量 CREATE TABLE [dbo].[SQLCountStatisticsByDay] ( id , ) PRIMARY KEY ,…
原文:SQL Server定时自动抓取耗时SQL并归档数据脚本分享 SQL Server定时自动抓取耗时SQL并归档数据脚本分享 第一步建库 USE [master] GO CREATE DATABASE [MonitorElapsedHighSQL] GO 第二步创建sp_who3存储过程 -- http://sqlserverplanet.com/dba/a-better-sp_who2-using-dmvs-sp_who3 USE [MonitorElapsedHighSQL] GO CR…
MySQL的体系结构,可以清楚地看到 SQL 语句在 MySQL 的各个功能模块中的执行过程:Server层包括连接层.查询缓存.分析器.优化器.执行器等,涵盖MySQL的大多数核心服务功能,以及所有的内置函数(如日期.时间.数学和加密函数等),实现所有跨存储引擎的功能比如存储过程.触发器.视图等:存储引擎层负责数据的存储和提取,MySQL5.5.5版本开始默认使用InnoDB,即你执行create table建表时,不指定引擎类型,默认使用InnoDB: 连接器: 连接管理(Connectio…
系列文章 四.S 锁与 X 锁的爱恨情仇<死磕MySQL系列 四> 五.如何选择普通索引和唯一索引<死磕MySQL系列 五> 六.五分钟,让你明白MySQL是怎么选择索引<死磕MySQL系列 六> 七.字符串可以这样加索引,你知吗?<死磕MySQL系列 七> 项目中将MySQL的报错.异常.执行时间长的都打到了钉钉群中,这样有利于平时及时处理.今天要聊的是无法复现的慢查询. 一.为什会出现无法复现的"慢"SQL 在一生挚友redo log…
SQL语句优化 1 企业SQL优化思路 1.把一个大的不使用索引的SQL语句按照功能进行拆分 2.长的SQL语句无法使用索引,能不能变成2条短的SQL语句让它分别使用上索引. 3.对SQL语句功能的拆分和修改 4.减少"烂"SQL由运维(DBA)和开发交流(确认),共同确定如何改,最终由DBA执行 5.制定开发流程 2 不适合走索引的场景 1.唯一值少的列上不适合建立索引或者建立索引效率低.例如:性别列 2.小表可以不建立索引,100条记录. 3.对于数据仓库,大量全表扫描的情况,建索…
有一百多个sql文件肿么破?一行一行地导入数据库肯定是极其愚蠢的做法,但是我差点就这么做了... 网上首先找到的方法是:写一个xxx.sql文件,里边每一行都是source *.sql ...,之后再mysql中去调用source xxx.sql,结果失败,失败原因:Error 2, cannot open file xxxxxxxxx,大概这个样子.这种方法貌似在windows上是可用的,不过貌似还要把sql文件放在mysql/bin目录下才可以生效. 之后找到的解决方案是利用shell脚本,…
一个有趣的 SQL 查询 一个朋友有这样一个SQL查询需求: 有一个登录表(tmp_test),包含用户ID(uid)和登录时间(login_time).表结构如下: . row *************************** Field: uid Type: ) unsigned Null: NO Key: MUL Default: NULL Extra: . row *************************** Field: login_time Type: timesta…