因为工作岗位的原因,负责制定了关于后端组数据库的规约规范,作为所有产品线的规范,历经几版的修改,最终形成下边的文本,规范在整个后端执行也有大半年的时间,对于整个团队在开发阶段就减少不恰当的建表语句、错误SQL、错误的索引有积极的意义,故分享出来给大家参考。下边分为建表规约、SQL规约、索引规约三个部分,每部分的每一条都有强制、建议两个级别,大家在参考时,根据自己公司的情况来权衡。一、建表规范【强制
转载
2024-06-07 14:40:23
47阅读
MySQL索引的建立对于MySQL的高效运行是很重要的,索引可以大大提高MySQL的检索速度。打个比方,如果合理的设计且使用索引的MySQL是一辆兰博基尼的话,那么没有设计和使用索引的MySQL就是一个人力三轮车。索引分单列索引和组合索引。单列索引,即一个索引只包含单个列,一个表可以有多个单列索引,但这不是组合索引。组合索引,即一个索引包含多个列。创建索引时,你需要确保该索引是应用在SQL 查询语
# 如何在 MySQL 表中新增字段
在开发过程中,常常需要对数据库表进行修改,比如新增字段。下面,我们将以简单的步骤介绍如何在 MySQL 中新增字段。通过这个过程,你将了解每一步所需的操作和代码。
## 流程概述
下面的表格简单概述了新增字段的整个流程:
| 步骤 | 操作 | 描述 |
原创
2024-10-24 06:52:01
33阅读
# MySQL中新增索引导致卡死的问题
在数据库开发中,索引对性能的提升至关重要,但在某些情况下,错误的索引添加可能会导致数据库的卡死。本文将教您如何通过新增索引的过程来了解这一问题。
## 整体流程
以下是实现新增索引的基本流程:
| 步骤 | 描述 | 代码示例
原创
2024-09-20 05:52:18
115阅读
# 如何解决SQL Server表新增数据卡死的问题
## 一、流程概述
下面是解决SQL Server表新增数据卡死问题的流程:
| 步骤 | 操作 |
| ------ | ------ |
| 1 | 检查表结构和索引 |
| 2 | 检查是否有其他长时间运行的事务 |
| 3 | 检查日志文件大小和磁盘空间 |
| 4 | 检查数据库是否发生死锁 |
| 5 | 检查是否有长时间未提
原创
2024-02-26 06:37:07
175阅读
ClickHouse之 MergeTree家族系列引擎(3)一 MergeTree 参数解读 : ENGINE = MergeTree()。该MergeTree引擎没有参数。 ORDER BY —排序键 如果PRIMARY KEY子句未明确定义主键,则ClickHouse会将排序键用作主键。 PARTITION BY— 分区键。 要按月进行分区,请使用toYYYYMM(date_column)表达
转载
2024-10-20 08:07:42
220阅读
# 实现MySQL B树索引的步骤
## 引言
在MySQL数据库中,B树索引是一种常见的索引类型,它可以帮助我们快速地检索数据。对于刚入行的小白开发者来说,实现B树索引可能会有一些困惑。在本文中,我将详细介绍实现MySQL B树索引的步骤,并给出相应的代码示例和解释。
## 步骤概览
下面是实现MySQL B树索引的整体步骤的概览:
| 步骤 | 描述 |
| --- | --- |
|
原创
2023-09-02 06:08:33
240阅读
# MySQL新增字段卡死问题解析与解决办法
在使用MySQL数据库的过程中,有时我们需要为表新增字段。但是有些情况下,在执行新增字段的操作时,可能会出现数据库卡死的问题,导致整个系统无法正常工作。本篇文章将分析产生这个问题的原因,并提供相应的解决办法。
## 问题原因分析
在MySQL中,新增字段操作通常使用`ALTER TABLE`语句。这个语句会对表进行结构修改,可能会涉及到大量数据的
原创
2023-07-22 20:34:15
1295阅读
索引的批量操作批量查询和批量增删改批量查询GET /_mget批量写入:POST /_bulk
POST /<index>/_bulk
{"action": {"metadata"}}
{"data"}
# action => create / update /delete
# 下面api使用要在metadata中表明索引名称
POST /_bulk
{"action": {
转载
2024-07-14 07:48:10
19阅读
创建索引是指在某个表的一列或多列上建立一个索引,以便提高对表的访问速度。创建索引有3种方式,这3种方式分别是创建表的时候创建索引、在已经存在的表上创建索引和使用ALTER TABLE语句来创建索引。本节将详细讲解这3种创建索引的方法。
7.2.1 创建表的时候创建索引(1)
创建表时可以直接创建索引,这种方式最简单、方便。其基本形式如下:
&nbs
转载
2024-05-07 18:19:43
83阅读
Oracle表与索引的分析及索引重建 1.分析表与索引(analyze 不会重建索引) analyze table tablename compute statistics 等同于 analyze table tablename compute statistics for table for all indexes for all columnsfor table 的统计信息存在于视
# 如何在MySQL中新增字段的流程
对于刚入行的小白来说,在MySQL中新增字段可能会让人感到困惑。本文将帮您澄清整个流程,并给出每一步的详细指导和示例代码。
## 流程概述
新增字段的基本流程可以总结为以下几个步骤:
| 步骤 | 操作 | 说明 |
| ------ | -------
原创
2024-08-10 05:23:40
39阅读
索引简介mysql官方对于索引(index)的定义是帮助mysql高效获取数据的数据结构。mysql的索引结构是hash和B+树优势mysql的索引可以提高数据检索的效率,降低数据库的IO成本。 通过索引对数据进行排序可以降低数据排序的成本,降低CPU的消耗。劣势虽然索引大大的提高了数据查询的效率但是同时也会降低表插入和更新的操作速度。因为插入和更新时mysql不仅要保存数据,还要在索引文件中添加
转载
2024-03-20 21:36:22
57阅读
Expert Oracle Database Architecture学习笔记死锁的头号原因:不加索引的外键(第6章.锁)据Tom的经验,导致死锁的头号原因是外键未加索引,第二号原因是表上的位图索引遭到并发更新。在以下两种情况下,Oracle在修改父表后会对子表加一个全表锁: ·如果更新了父表的主键(倘若遵循关系数据库的原则,即主键应当是不可变的,这种情况就很少见。)由于外键上没有索引
转载
2024-06-02 16:36:40
45阅读
一:添加数据1.准备工作,和以前一样,要先使用一个数据库,并添加一张数据表,具体操作如下: 1)使用数据库mysql> USE itcsat;
Database changed2)创建数据表mysql> CREATE TABLE student
-> (
-> id INT(5),
-> name CHAR(20)NOT
转载
2023-06-26 13:58:06
183阅读
一、索引的特点当MySQL单表记录数过大时,增删改查性能都会急剧下降。MySQL索引的建立对于MySQL的高效运行是很重要的,索引可以大大提高MySQL的检索速度。除非单表数据未来会一直不断上涨,否则不要一开始就考虑拆分,拆分会带来逻辑、部署、运维的各种复杂度。一般以整型值为主的表在千万级以下,字符串为主的表在五百万以下是没有太大问题的,而事实上很多时候MySQL单表的性能依然有不少优化空间,甚至
转载
2023-09-08 23:09:50
881阅读
create table user (
id int primary key,
name varchar(20),
sex varchar(5),
index(name)
)engine=innodb;
select id,name where name='xian'
select id,name,sex where name='xian'一、什么是回表查询
转载
2024-06-18 21:39:25
24阅读
1.使用分区clickhouse的表,走索引和非索引效率差距很大,在使用一个表进行查询时,必须限制索引字段。避免扫描全表确定索引分区字段,可以用show create table default.ods_user,查看本地表的建表语句,partition by 的字段就是分区字段。如果需要限制的时间和分区字段不是同一个字段时,可以扩大分区字段取数区间,然后再过滤2.distinct 和 group
转载
2024-03-16 00:31:27
627阅读
16 一些索引失效情况条件字段函数操作隐式类型转换如 select * from tradelog where tradeid=110717;如果tredeid是字符串类型,那么在比较时会隐性地将字符串转为数字,也就不会走索引来隐式字符编码转换当两个表的字符集不同,在关联时作字符集转换实际也是一个隐性类型转换,此时也不会走索引17 间隙锁为了避免幻读带来的数据不一致问题,当执行 select *
转载
2024-03-15 20:07:19
43阅读
60-80% of database performance issues are related to poorly performing SQL,60-80%的数据库性能问题要归结于生产中糟糕的SQL语句! 以此一文来总结笔者近10多年来的工作经验并基于最基本的也是最有效的对于Oracle数据库中的RBO、CBO、索引、WHERE条件进行讲解同时配以大量案例来帮助读者从此文中学到的相