摘要:为了保证数据的安全性和可恢复性,对 MySQL 数据库进行定时备份是非常必要的。以下为你介绍几种实现 MySQL 数据库定时备份的方法: 1. 使用 mysqldump 工具手动备份 mysqldump 是 MySQL 自带的一个用于备份数据库的工具,它可以将数据库的结构和数据导出为 SQL 文件。
阅读全文
摘要:MySQL Buffer Pool 是 InnoDB 存储引擎中至关重要的一个组件,下面将从原理、组成及作用三个方面详细解析它。 原理 基于内存的数据缓存机制:在 MySQL 里,尤其是使用 InnoDB 存储引擎时,数据和索引实际上是存储在磁盘中的。然而磁盘的读写速度相对较慢,为了减少磁盘 I/O
阅读全文
摘要:MySQL 8.0 引入了多项并行处理能力,显著提升了查询性能,尤其是在多核CPU环境下。以下是 MySQL 8.0 中与并行能力相关的主要参数及其解读: 1. 并行查询(Parallel Query) MySQL 8.0 支持并行查询,允许将单个查询分解为多个子任务并行执行,从而加快查询速度。 相
阅读全文
摘要:OceanBase、Oracle 和 MySQL 是三种不同的数据库管理系统,各自在架构、性能、应用场景等方面有显著区别。以下是它们的主要差异: 1. 架构设计 OceanBase:分布式架构,采用 Shared-Nothing 设计,具备高可用性和强一致性,支持水平扩展。 Oracle:集中式架构
阅读全文
摘要:问题描述 环境是单主+2台Secondary节点,服务器OS版本及MySQL版本均一致。其中一个Secondary节点的虚拟机需要迁移。迁移前MGR状态正常,数据也均保持同步。 在迁移前手动关闭了此Secondary节点的mgr: stop group_replication; 并且关停了mysql
阅读全文
摘要:mysql数据库长时间未操作自动断开连接由参数:interactive_timeout和wait_timeout控制,默认都是8小时(28800分钟) mysql> show variables like '%timeout%'; + + + | Variable_name | Value | +
阅读全文
摘要:触发器 触发器是一个特殊的存储过程,不同的是存储过程要用CALL来调用,而触发器不需要使用CALL 也不需要手工启动,只要当一个预定义的事件发生的时候,就会被MYSQL自动调用。 触发器也可用于强制引用完整性,以便在多个表中添加、更新或删除行时,保留在这些表之间所定义的关系。 作用 触发器可通过数据
阅读全文
摘要:MySQL 里面表级别的锁有两种:一种是表锁,一种是元数据锁(meta data lock,MDL)。 表锁 lock tables 表名 read; #该表可以读,不能ddl 和 dml 中增删改,只能读取表数据 lock tables 表名 read; # 既不能读,也不能写 表锁的语法是 lo
阅读全文
摘要:死锁是指两个或两个以上的事务在执行过程中,因争夺锁资源而造成的一种互相等待的现象。 1 数据库层面解决死锁的两种方式 1、解决死锁的问题最简单的方式是不要有等待,将任何的等待都转化为回滚,并且事务重新开始。 这种没有死锁问题的产生。在线上环境中,可能导致并发性能的下降,甚至任何一个事务都不能进行。而
阅读全文
摘要:MySQL提供了对每个用户的资源限制管理 MAX_QUERIES_PER_HOUR : 一个用户在一个小时内可以执行查询的次数(基本包含 所 有 语 句 ) MAX_UPDATES_PER_HOUR:一个用户在一个小时内可以执行修改的次数(仅包含修 改数据库或表的语句) MAX_CONNECTION
阅读全文
摘要:ANSI 更改语法和行为, 使其更符合标准SQL。 STRICT_TRANS_TABLES TRADITIONAL 使MySQL的行为象“传统”SQL数据库系统。 该模式的简单描述是当在列中插入不正确的值时“给 出 错误 而不是警告” 等同STRICT_TRANS_TABLES、 STRICT_AL
阅读全文
摘要:# 创建一个用户 mysql> create user keme@'localhost' identified by '123456'; # 给一个只读权限 mysql> grant select on *.* to keme@'localhost'; # 可以从本地登录 [root@mysql-1
阅读全文
摘要:如果写入大数据时,因为默认的配置太小,插入和更新操作会因为 max_allowed_packet 参数限制,而导致失败。 mysql根据max_allowed_packet参数来限制server接受的数据包大小。 当一个MySQL客户或mysqld服务器得到一个max_allowed_packet个
阅读全文
摘要:连接数过多,导致连接不上数据库,业务无法正常进行 该错误发生在有max_connections个客户连接了mysqld服务器, 应该重启mysqld, 用更大的max_connections变量值 1 2 3 4 5 6 7 8 #默认连接数 mysql> show variables like '
阅读全文
摘要:前段时间,将线上MySQL数据库升级到了5.7。考虑到可能产生的不兼容性,在升级之前,确实也是战战兢兢,虽然测试环境,开发环境早在半年前就已提前升级。 基于前期的调研和朋友的反馈,与开发相关的主要有两点: sql_mode MySQL 5.6中,其默认值为"NO_ENGINE_SU BSTITUTI
阅读全文
摘要:问题 我们在设计表结构的时候,设计规范里面有一条如下规则:对于可变长度的字段,在满足条件的前提下,尽可能使用较短的变长字段长度。为什么这么规定,主要基于两个方面 基于存储空间的考虑 基于性能的考虑 网上说Varchar(50)和varchar(500)存储空间上是一样的,真的是这样吗?基于性能考虑,
阅读全文
摘要:skip-grant-tables的解法 首先,关闭实例 这里,只能通过kill mysqld进程的方式。 注意:不是mysqld_safe进程,也切忌使用kill -9。 # ps -ef |grep mysqld root 6220 6171 0 08:14 pts/0 00:00:00 /bi
阅读全文
摘要:MySQL 中的集群部署方案 前言 这里来聊聊,MySQL 中常用的部署方案。 MySQL Replication MySQL Replication 是官方提供的主从同步方案,用于将一个 MySQL 的实例同步到另一个实例中。Replication 为保证数据安全做了重要的保证,是目前运用最广的
阅读全文
摘要:数据库:MySQL 8.0.27安装包:mysql-8.0.27-1.el7.x86_64.rpm-bundle.tar系统:rhel 7.3 64位 1、准备工作 说明:1.1至1.3均需在三台服务器执行. 1.1、修改hosts文件 --在hosts中设置hostname与IP映射绑定关系. [
阅读全文
摘要:查询字段注释 查询表注释字段注释 SELECTa.TABLE_SCHEMA 库名,a.table_name 表名,a.table_comment 表说明,b.COLUMN_NAME 字段名,b.column_comment 字段说明,b.column_type 字段类型,b.column_key 约
阅读全文