一、什么是SQL sql(Structured Query Language: 结构化查询语言)是高级的费过程化编程语言,允许用户在高层数据结构上工作, 是一种数据查询和程序设计语言, 也是(ANSI)的一项标准的计算机语言. but... 目前仍然存在着许多不同版本的sql语言,为了与AN...
MySQL索引是数据库中一个关键的概念,它可以极大地提高查询性能,加快数据检索速度。但是,要充分发挥索引的作用,需要深入理解它们的工作原理和使用方式。 在本文中,我们将深入解析MySQL索引,探讨它们的重要性、类型、创建、维护以及最佳实践。 ...
最近帮业务部门梳理业务报表,其中有个需求是就算某指标等待时间最长的前百分之十,其实就是对等待时长进行倒序排序后,取结果集的前百分之十。 这个需求在SQL Server和Oracle上都很容易实现,甚至是在MySQL 8.0也很容易实现,只是恰好我们业务数据...
InnoDB页 InnoDB是一个将数据存储到磁盘上的存储引擎,所以就算我们关闭、重启服务器,数据还是存在的。而在真正处理数据的时候是在内存中进行的,所以需要把磁盘中的内容加载到内存中。 我们知道读写磁盘是很慢的。当我们想从表里获取数据的时候...
一、简介 SQL是开发者最重要的技能之一。在Python数据分析生态中,Pandas的使用最为广泛。但是,如果不熟悉Pandas,则必须学习Pandas函数(分组、聚合、连接等)。相比之下,使用SQL查询数据帧更加容易。Pandasql库正好可以满足需求! 【Pandasq...
今天我翻阅了在之前公司工作时的笔记,发现了有关数据库的一些记录。当时,我们的项目开始使用 Oracle 数据库,但后来由于一些项目需求的变更,我们切换到了 SQL Server 。值得一提的是,公司当时也开始采用 Docker 技术,数据库的部署都是通过 Docker...
随着数据驱动的应用越来越普及,数据库管理系统的选择变得至关重要。在这个领域,PostgreSQL(简称Postgres)已经成为越来越多开发者和组织的首选,而MySQL在一些方面则逐渐失去了它的市场份额。为什么越来越多的人选择PostgreSQL,放弃了MySQL呢? ...
大家好,今天来看看sql最怎样执行的。 这是一条标准的查询语句: 这是我们实际上SQL执行顺序: · 我们先执行from,join来确定表之间的连接关系,得到初步的数据 · where对数据进行普通的初步的筛选 · group by 分组 ·&n...
概述 Oracle是一种关系型数据库管理系统,提供了强大的数据存储和管理功能。删除Oracle数据库,在工作中用的非常少,可能我们也只要可能在测试环境遇到过。通过本文,我们将学习使用命令手动删除 Oracle 中的整个数据库。我们还可以使用 DBCA 实用程...
在企业中,数据库数据是非常重要的资产,但数据丢失是一个巨大的挑战。为了有效地应对数据丢失的风险,Oracle提供了强大而可靠的RMAN备份和恢复工具。下面将介绍Oracle RMAN备份恢复的实战技巧,帮助您应对数据丢失的挑战,并确保数据库的安全性和可用...
概述 在工作中,我遇到过对表执行 dml 语句时出现持续长时间死锁的情况。在这种情况下,我使用轻量级 T-SQL 查询来查找死锁,即SQL 连接的阻塞和阻塞会话 ID。根据该语句返回的详细信息,我能够找到执行阻塞会话的应用程序或用户,并帮助我终止特定...
有一天,同事问了我一个来自客户的问题:在 my.cnf 中增加系统变量 foreign_key_checks 之后,MySQL 就启动不了了。 我们尝试通过 SET 命令修改 foreign_key_checks,成功了。查看官方文档,明明也是有这个系统变量的: 为什么把 foreign_key_ch...
现在很多用户都在做数据库国产化改造工作,因为有大量的系统要迁移,因此保持国产数据库与Oracle的兼容性就十分重要。前几天有个做国产数据库改造的客户和我讨论应用迁移的问题,他觉得如果原有的Oracle上开发的应用什么都不要变,连SQL*NET都兼容就最...
工具简介 reverse_sql是一个用于解析和转换MySQL二进制日志(binlog)的工具。它可以将二进制日志文件中记录的数据库更改操作(如插入、更新、删除)转换为反向的SQL语句,以便进行数据恢复。其运行模式需二进制日志设置为ROW格式。 该工具的主要...
在MySQL和Redis之间实现数据一致性是一个常见的挑战。下面是几种常见的解决方案: 1. 单向同步: 即在应用层通过代码实现将数据同步到Redis。在数据写入MySQL后,应用通过事件监听或者异步任务将数据同步到Redis。这种方式可以实现较好的性能,但...
今天,我来给大家揭开一个神秘的面纱,带你们深入了解一下MySQL数据库是如何保存一条数据的。 客户端 首先,让我们从客户端(Client)开始。当你在应用程序中执行一个插入操作时,客户端就会发送一个SQL语句给MySQL服务器,告诉它你想要插入什么...
周末的时候,一个读者问了我一个很有意思的问题,是关于 MySQL 中 update 加锁的问题。 他用下面这张数据库表,做了个 MySQL 实验的时候。 发现事务 B 的 update 不会阻塞,而事务 C 的 update 会阻塞,都是对 id = 10 这条记录进行 update, 为...
函数 是指一段可以直接被另一段程序调用的程序或代码。 也就意味着,这一段程序或代码在MySQL中已经给我们提供了,我们要做的就是在合适的业务场景调用对应的函数完成对应的业务需求即可。 那么,函数到底在哪儿使用呢? 我们先来看两个场景: 1)...
对于门外汉来说,时间序列数据显示与关系数据相似的特征,但这两种数据有几大区别。关系数据的主要目的是维护当前事实真相的准确表示,包括对象及对象之间的关系。而时间序列数据描述当下所发生的事情。 比如说,以DevOps工程师需要的实时洞察和即时...
背景 前段时间发布了一篇linux环境的mysql备份脚本,因为linux作为数据库服务器是目前市场的主流。现应网友粉丝要求,分享一下windows环境mysql的备份脚本。 备份需求 · 每个库单独一个文件 · 压缩备份文件 · 晚上23点定时...