-
最近在做项目的时候,遇到了一些大数据量的操作,有大批量的CRUD的操作,一开始的实现的方案经过性能测试,发现性能并不是很好,然后开始审查代码,对相关可以提升性能的操作进行了优
-
使用Docker 部署 LNMP+Redis 环境
Docker 简介
Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟
-
在MySQL中删除数据有两种方式:
truncate(截短)属于粗暴型的清空
delete属于精细化的删除
删除操作
如果你需要清空表里的所有数据,下面两种均可:
delete from tablename;
truncate table tablename;
而
-
DataX-Web 2.1.1发布
DataX阿里在开源的时候并未提供任何可视化界面,我们在使用的过程中,需要将Json配置文件放到DataX的job路径下,随着业务的增加,配置文件不方便管理和迁移并且每次执行都需
-
乐观锁 & 悲观锁 是一种设计思想,而不是锁的实现在Java和MySql中,都有基于乐观锁和悲观锁的实现。Java中的atomic包(CAS,基于乐观锁),synchronized(重量级锁,基于悲观锁);MySql中的lock in
-
先说一些废话很多时候深入学习固然很重要,但是想要写下一篇给新手都能看得懂看的很香,并且老鸟可以查漏补缺的的练习博客,还是挺有难度,所以今天尝试写一些关于MySQL的语句练习大全
-
MySQL 8 JSON多值索引背景介绍我们有个 ALTER TABLE `node`
ADD INDEX `jump_node_code_index`(
(CAST(units_json -> '$.units[*].decisionEntries[*].capsules[*].jumpNodeCode'
AS CHAR(50) ARRAY))
);上面那个 SELECT units_json
-
游标
游标(Cursor)是用于查看或者处理结果集中的数据的一种方法。游标提供了在结果集中一次一行或者多行前进或向后浏览数据的能力。
游标的使用方式
定义游标:Declare 游标名称 CURSOR for tab
-
Mysql中count()函数的一般用法是统计字段非空的记录数,所以可以利用这个特点来进行条件统计,注意这里如果字段是NULL就不会统计,但是false是会被统计到的,记住这一点,我们接下来看看几
-
当 WHERE 条件落在数据分布很不均匀的列上,MySQL 估算行数可能偏离实际。本文用 orders.status 这个可复现实例,说明什么时候建立直方图、如何选择桶数量,以及怎样用 COLUMN_STATISTICS 和 EXPLAIN 验收收益。
-
MySQL 的 wait_timeout 控制非交互连接的空闲回收,但它不能替代连接池的生命周期管理。本文用连接池、会话变量和断线重连三个边界,给出可检查、可回滚的设置方法。
-
当 MySQL 对低基数或倾斜数据估算失准时,直方图统计可以补充普通索引统计。本文用订单状态筛选案例建立基线,说明如何生成、检查、验证和撤销直方图,并划清它不能替代索引的边界。
-
MySQL备份数据的常用方式包括逻辑备份和物理热备。一、mysqldump是最常见的逻辑备份工具,适合中小型数据库,通过导出SQL文件实现备份与恢复,但恢复速度慢且需停止写入以保证一致性;二、XtraBackup是支持在线备份的物理热备工具,适用于大数据量且不能停机的场景,通过复制数据文件并应用日志确保一致性,但操作较复杂且需权限配置;三、定期自动备份可通过crontab定时执行脚本,结合压缩、保留策略及异地存储提升可靠性;四、其他工具如MySQLEnterpriseBackup支持增量备份与加密,myd
-
如何在MySQL中创建数据库并设置不同的字符集编码?使用CREATEDATABASE命令并指定CHARACTERSET和COLLATE选项即可。1)创建命令示例:CREATEDATABASEmydbCHARACTERSETutf8mb4COLLATEutf8mb4_unicode_ci。2)选择utf8mb4支持扩展字符。3)对于日文数据,可用utf8和utf8_bin排序规则:CREATEDATABASEjpdbCHARACTERSETutf8COLLATEutf8_bin。
-
MySQL的count查询性能问题主要在于数据量大时变慢,尤其带条件的count。优化思路包括减少扫描行数、利用索引、避免多余计算和锁等待。一、count查询慢的原因是需遍历数据,无索引字段做where条件导致全表扫描,复杂join或子查询增加计算成本,count(主键)与count(字段)结果不同。二、提升性能的方法:1.给where条件字段加索引;2.使用覆盖索引避免回表;3.区分count(*)和count(主键)的统计差异;4.避免对大表直接count,可用缓存、预计算或近似函数替代。三、常见误区