1、Mysql主从配置 MySQL的主备(主从)配置是一种常见的数据高可用性和数据备份方案,主要用于实现数据的实时复制,确保数据的一致性和系统的容错能力。下面我将详细介绍如何配置MySQL的主备环境。 1.1、 环境准备 确保你的服务器上已经安装了MySQL,并且至少有两台服务器,一台作为主服务器( ...
有这样一个问题:主机内存只有100G,现在要对一个200G的大表做全表扫描,会不会把数据库主机的内存用完?想想逻辑备份,也是整库扫描,因此对大表做全表扫描看起来是没有问题的,那么这个流程到底是怎样呢? 全表扫描对server层的影响 假设现在要对一个200G的InnoDB表db1.t执行全表扫描,若 ...
一、概述 optimizer_trace是MySQL 5.6引入的一项跟踪功能,它可以跟踪优化器做出的各种决策(比如访问表的方法、各种开销计算、各种转换等),并将跟踪结果记录到information_schema.optimizer_trace表中。此功能默认关闭,开启后,可分析如下语句: sele ...
GreatSQL 优化技巧:最值子查询与窗口函数相互转换 导语 近期 SQL 优化过程中遇到两个案例,一个是将最值子查询改写为窗口函数,另一个是将窗口函数改写为最值子查询,觉得很有意思,特此记录分享一下。 SQL案例 两个 SQL 语句 SQL1: SELECT imei, c1 FROM (SEL ...
MySQL有两个kill命令: kill query+线程id,表示终止该线程正在执行的语句; kill (connection)+线程id,表示断开这个线程的连接,如果线程有语句正在执行,会先停止正在执行的语句。 有时候可能会遇到:使用了kill,却没能断开该连接,再执行show processl ...
MySQL迁移至GreatSQL后,timestamp字段插入报错解析 背景描述 某业务系统进行国产化适配,将MySQL的数据迁移到 GreatSQL 后,执行 INSERT INTO ,update_time传参为空时报错,报错信息为:ERROR 1048 (23000): Column 'upd ...
测试表创建 -- 1. 部门表(departments) CREATE TABLE IF NOT EXISTS departments ( dept_id INT PRIMARY KEY AUTO_INCREMENT COMMENT '部门ID,主键自增', dept_name VARCHAR(50 ...
以下是导致索引失效的常见情况,分类并举例说明: 1. 对索引列进行运算或函数操作 当在索引列上使用函数、表达式、计算或类型转换时,MySQL无法直接使用索引来定位数据。 失效示例: sql -- 使用函数 SELECT * FROM users WHERE YEAR(create_time) = 2 ...
本文将聚焦于MySQL架构的另外两个关键组成部分:**连接层**与数据存储层,揭秘客户端如何与MySQL建立通信桥梁,以及数据如何持久化到物理磁盘。 ...
在MySQL数据库中,如何统计/监控MySQL用户登陆失败的次数呢? 下面是我的一些探索与总结,如有不足或疏漏,欢迎指正。 错误日志监控统计 首先,要设置错误日志记录告警信息的级别, MySQL 5.5,5.6,5.7.2之前设置系统变量log_warnings show variables lik ...
MySQL 采用经典的分层架构设计,整体可分为 Server 层和存储引擎层两大部分。这种设计实现了核心功能与存储实现的分离,为不同类型的应用场景提供了灵活的存储方案。 ...
问题:MySqlException: Incorrect string value: '\xE6\x99\xBA\xE8\x83\xBD...' for column 'FieldName' at row 1 原因:在 MySQL 中遇到错误 MySqlException: Incorrect st ...
GreatSQL分页查询优化案例实战 导语 随着国产化替代的深入,很多 Oracle 数据库迁移到 GreatSQL 上,GreatSQL 也做了大量的 Oracle 语法兼容,以减少国产化改造工作。 本文说一下 Oracle 的分页查询语句迁到 GreatSQL 上来的表现以及如何用 GreatS ...
本文分享自天翼云开发者社区《Flink和StreamPark自定义UDF函数的使用》,作者:王****帅 1、什么是函数 在 SQL 中,我们可以把一些数据的转换操作包装起来,嵌入到 SQL 查询中统一调用,这就是“函数”(functions)。Flink 的 Table API 和 SQL 同样提 ...
传统的高可用架构不能预防误删数据的,因为主库的一个drop table命令,会通过binlog传给所有从库和级联从库,进而导致整个集群的实例都会执行这个命令。 MySQL相关误删数据主要有以下几种可能: 使用delete语句误删数据行; 使用drop table或truncate table语句误删 ...
技术干货 | 如何将大表在线改造为分区表并释放空间 出现麻烦 你是否遇到过如此令人麻烦的问题,比如:由于前期规划不当,后期库表数据量猛增;或者由于“年久失修”而造成的表数据积累不断。等等诸如此类 大表 问题。 面对这些大表,是删也不能删,清理又困难。 即使你不嫌麻烦,一点一点的通过 delete 清 ...
首先复习一下加锁规则: 原则1:加锁的基本单位是next-key lock,是一个前开后闭区间; 原则2:查找过程中访问到的对象才会加锁; 优化1:索引上的等值查询,给唯一索引加锁的时候,next-key lock退化为行锁; 优化2:索引上的等值查询,向右遍历时且最后一个值不满足等值条件的时候,n ...
之前的文章已经说过:在一主一备的双M架构里,主备切换只需要把客户端流量切到备库;而在一主多从架构里,主备切换除了要把客户端流量切到备库外,还需要把从库接到新主库上。 主备切换有两种场景,分别是主动切换和被动切换,其中被动切换往往是因为主库出问题由HA系统发起。那么怎么判断主库出问题了呢? selec ...
GreatSQL优化技巧:手动实现谓词下推 导语 最近总是听到用 AI 来优化 SQL 的言论,今天心血来潮试了一下,把表结构、统计信息、SQL语句、执行计划都告诉AI,AI给出了一大堆的建议,它会从索引,语句改写,参数调整各个方面给出优化策略,看似面面俱到,但是如果不懂优化理论,随便使用其给出的优 ...