数据库服务基础应用操作 数据库语句应用实践 1)DCL和数据库安全有关的操作 grant/revoke # 和授权有关操作 create use/alter user/drop user # 和用户相关操作 commit 可以确保DML语句操作后,产生的数据信息合理存储到磁盘中 rollback 可 ...
在 Linux(以 CentOS 7/Stream 8/9 为例)上源码编译安装 MySQL 8.0是一个相对复杂的过程,因为它需要大量的依赖库、较高的内存(建议 4GB 以上,否则编译可能失败)以及较新的 CMake 版本。 以下是基于最新环境整理的MySQL 8.0 源码编译安装完整实战指南。 ...
1.数据库服务基础管理操作 1)数据库服务连接管理 MySQL数据库服务应用架构:C/S 利用C/S架构管理数据库服务端时会有两种方式: 1.采用本地方式连接管理 mysql -uxxx -pxxx -S 套接字文件(/tmp/mysql.sock--数据库服务端启动时自动生成 关闭后自动删除) 2 ...
1、Mysql主从配置 MySQL的主备(主从)配置是一种常见的数据高可用性和数据备份方案,主要用于实现数据的实时复制,确保数据的一致性和系统的容错能力。下面我将详细介绍如何配置MySQL的主备环境。 1.1、 环境准备 确保你的服务器上已经安装了MySQL,并且至少有两台服务器,一台作为主服务器( ...
问题背景:一次看似简单的数据清理 在日常功能开发过程在中,我们经常需要根据某些条件清理特定数据。某天,我需要在 tbl_doa_activityspecial 表中删除与另一组条件匹配的记录。直觉上,我写下了这样的 SQL: DELETE FROM tbl_doa_activityspecial W ...
作者:张富春(ahfuzhang),转载时请注明作者和引用链接,谢谢! cnblogs博客 zhihu Github 公众号:一本正经的瞎扯 一个后端服务的性能不好,我怀疑是数据库拖慢了性能,为了便于不侵入代码而对性能进行分析,我尝试了 proxysql 组件: 在 mysql 客户端和 mysql ...
一、背景与问题缘起 MySQL 5.6.51 版本下 2000 万行核心业务表开展新增字段操作,需求为新增BIGINT(19) NOT NULL DEFAULT 0 COMMENT '注释'(因业务实际需要存储大数值关联字段)。 表的核心特性为Java 多线程密集读写,业务请求持续高频,初始执行原生 ...
我们知道MySQL对不同位置的my.cnf文件的读取顺序是有优先级的. 那么问题来了, 如果同一个my.cnf中, 不同位置出现了两个相同系统变量/参数, MySQL会读取哪一个系统变量呢? 是不是一个很有意思的问题! 那么我们先来看看,在测试环境的my.cnf中, 我们以变量server_id为例 ...
因为MySQL 8.0.x版本即将于2026年4月结束服务支持,计划将手头MySQL 8.0.35升级到MySQL 8.4.8这个LTS版本. 下面是之前在测试环境的一些测试总结.仅供参考! 注意:之前官方只提供了MySQL 8.4.5,所以下面测试案例为MySQL 8.4.5,生产环境建议升级到8 ...
MySQL存储过程出错回滚是保证数据一致性的重要措施,如何处理好存储过程出错后的回滚,请看回滚处理步骤及需要注意的几个事项: MySQL存储过程回滚 首先看一下当前MySQL数据库是否已经开启了自动提交。 在数据库中,使用Mysql>show variables like ‘autocommit’; ...
@目录前言背景执行流程图解层级介绍Server 层存储引擎层连接器解析器预处理器优化器执行计划总结 前言 请各大网友尊重本人原创知识分享,谨记本人博客:南国以南i、微信公众号:白码梦想家 提示:以下是本篇文章正文内容,下面案例可供参考 背景 Hello 朋友们,今天是元旦也是新的一年,祝大家元旦快乐 ...
@目录前言背景基础总结 前言 请各大网友尊重本人原创知识分享,谨记本人博客:南国以南i、微信公众号:白码梦想家 提示:以下是本篇文章正文内容,下面案例可供参考 背景 Hello 朋友们,接下来为大家开启,面试题相关系列☞《对线面试官》 自信出击,让 offer 手到擒来!!! 基础 MySQL 默认 ...
@目录前言背景基础知识回表定义经典示例:回表的影响如何避免回表?1. 使用覆盖索引2. 使用聚簇索引3. 优化查询条件4. 减少SELECT *的使用5. 使用联合索引6. 使用子查询或临时表7. 定期优化和重建索引8. EXPLAIN分析查询计划9.调整表结构10. 使用缓存回表总结 前言 请各大 ...
@目录前言背景1. 什么是存储过程?有哪些优缺点?2. 数据库三个范式是什么3. 索引是什么?有什么作用以及优缺点?4. 什么时候要创建索引?5. 索引分类有哪些?6. 索引的数据结构:7. 为什么使用B+Tree作为索引:8. MySQL 索引底层结构为什么使用 B+树?9. B+ 树的叶子节点链 ...
MySQL客户端登录 MySQL8 时,出现如下登录问题: 原由 从 MySQL 8.0.4 开始,MySQL 默认身份验证插件从 mysql_native_password 改为 caching_sha2_password 。相应地,libmysqlclient 也使用 caching_sha2_ ...
1.前置问题 mysql5.7.*版本默认使用的字符集是latin1(拉丁文),当添加中文数据时,出现字符串值不正确。 mysql5.7.*版本默认使用latin1,是因为MySQL是由瑞典人开发的,所以默认使用欧洲的字符集。 查看数据表和数据库的默认字符集 数据表: 数据库: 查看所有变量的字符集 ...
1.官网下载 官网下载地址:https://dev.mysql.com/downloads/ 2.安装过程 双击已下载的msi文件,根据以下步骤进行安装... 步骤1: 步骤2: 步骤3: 步骤4: 步骤5: 3.MySQL服务配置 安装完成后,按照以下步骤进行配置: 步骤1:打开MySQL配置程序 ...
背景 在 MySQL 中,慢日志不仅可以记录在文件中,还可以记录在表中。具体是记录在文件还是表中是由log_output参数决定的。 该参数默认为FILE,即慢日志默认会记录在文件中。如果参数中包含TABLE,则慢日志还会记录在mysql.slow_log中,而mysql.slow_log使用的是 ...
背景 某开发人员反馈,一个MySQL测试环境的数据库服务器,磁盘空间被占满,并且明确告知MySQL数据库并不大,但是其binlog日志占用数百GB的空间,远远超出预期的大小,要协助检查为什么binlog会占用如此大的空间。简言之就是:数据量较小,binlog的日志量很大。 binlog相关的配置信息 ...
ON 决定如何 "连接" 表,WHERE 决定连接后 "显示" 哪些行。 这个根本区别导致了在 LEFT JOIN / RIGHT JOIN 外连接中,条件放置位置会产生巨大影响;而在 INNER JOIN 中,效果通常 等价。 ...