mysql
文章平均质量分 64
mysql运维知识网络逐步构建
进击的CJR
3年程序员经验、5年MySQL DBA经验,目前依然从事DBA岗位
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
MySQL 8.0 OCP 英文题库解析(五)
Oracle 为庆祝 MySQL 30 周年,截止到 2025.07.31 之前。所有人均可以免费考取原价245美元的MySQL OCP 认证。从今天开始,将英文题库免费公布出来,并进行解析,帮助大家在一个月之内轻松通过OCP认证。本期公布试题31~40。原创 2025-05-19 15:54:07 · 2106 阅读 · 5 评论 -
MySQL 8.0 OCP 英文题库解析(二)
Oracle 为庆祝 MySQL 30 周年,截止到2025.07.31 之前。所有人均可以免费考取 原价245美元的MySQL OCP 认证。从今天开始,将英文题库免费公布出来,并进行解析,帮助大家在一个月之内轻松通过OCP认证。本期公布试题6~15。原创 2025-05-09 11:12:18 · 2472 阅读 · 0 评论 -
PG vs MySQL 主从复制的异同点
如下图是一个完整的主从复制的一个流程。原创 2025-03-07 17:29:35 · 1100 阅读 · 0 评论 -
PG vs MySQL 统计信息收集的异同
对于一条SQL,数据库选择何种方式执行,需要根据统计信息进行估算,计算出代价最低的执行计划。收集统计信息主要是为了让优化器做出正确的判断,选择最佳的执行计划。原创 2025-02-05 17:31:12 · 1079 阅读 · 0 评论 -
PG vs MySQL mvcc机制实现的异同
MVCC实现方法比较MVCC实现方法比较MySQL写新数据时,把旧数据写入回滚段中,其他人读数据时,从回滚段中把旧的数据读出来PostgreSQL写新数据时,旧数据不删除,直接插入新数据。MVCC实现的原理PG的MVCC实现原理定义多版本的数据——使用元组头部信息的字段来标示元组的版本号定义数据的有效性、可见性、可更新性——通过当前的事务快照和对应元组的版本号判断实现不同的数据库隔离级别——通过在不同时机获取快照实现PG的数据多版本实现。原创 2025-01-17 11:14:54 · 1471 阅读 · 0 评论 -
MySQL8.0后的double write有什么变化
一部分是内存中的double write buffer ,大小为2MB(16k一个页,一共128个页)。第二部分是磁盘共享表空间的128个数据页,在对脏页进行落盘的时候,并不是直接进行落盘,而是先复制到double write buffer,然后再分别写入到共享表空间,然后再写入表空间。原创 2024-12-24 15:41:15 · 1045 阅读 · 0 评论 -
MySQL 元数据锁查询
元数据锁查询原创 2024-09-06 10:27:11 · 1782 阅读 · 0 评论 -
MySQL8.0新特性~资源组的应用
MySQL-8.0中新增了resource group资源组的功能。MySQL资源组的想法来源很简单:每个资源组是一个资源独立的单位,每个资源组能够容纳一个或者多个MySQL线程。拥有设置资源组权限的DBA们能够创建、配置资源组以及指定、切换MySQL线程从属的资源组,从而更加精准地管控MySQL。RESOURCE_GROUP_NAME: 资源组名。原创 2024-08-01 16:26:42 · 657 阅读 · 0 评论 -
MySQL8.0新特性~最左前缀匹配原则被打破了
在MySQL8.0.25和mysql5.7.33中创建如下在mysql8.0.25中执行在mysql5.7.33中执行可以看到在8.0版本中使用了range的扫描方式。原创 2024-07-22 15:17:22 · 1005 阅读 · 1 评论 -
MySQL8.0 MGR的维护管理
当最后一个节点也退出时,相当于整个MGR集群都关闭了。这时候任何一个节点启动MGR服务后,都不会自动成为Primary节点,需要在启动MGR服务前,先设置 group_replication_bootstrap_group=ON,使其成为引导节点,再启动MGR服务,它才会成为Primary节点,[参考文章](后续启动的其他节点也才能正常加入集群。P.S,第一个节点启动完毕后,记得重置选项 group_replication_bootstrap_group=OFF,避免在后续的操作中导致MGR集群分裂。原创 2024-07-17 17:49:31 · 1059 阅读 · 0 评论 -
使用mysql shell搭建MGR
资源有限只需要准备一台Linux主机腾讯云主机159.75.158.18(1)规划部署(2)准备实例配置文件编辑3个配置文件,分别是my3381.cnfmy3382.cnfmy3383.cnf配置文件内容以my3383.cnf为例将其中对应的数字3383 改为对应端口到不同配置文件(3)创建目录(4)初始化和启动库(5)创建账号为了简化步骤,直接执行此步骤不规范,正常操作应当是#在本地通过socket方式登入执行选择数据用户和密码在使用。原创 2024-07-16 17:39:04 · 1236 阅读 · 0 评论 -
xtrabackup 备份报错“too many open files“ 突然消失
可以看到不同的用户启动数据库,导致open_files_limit的生效值不同。open_files_limit : 如果是root账号启动 以my.cnf文件里面的值为准, 如果是mysql启动, 就可能是 ulimit -n 看到的那个值。在my.cnf中配置open_files_limit=65535 ,当我们以mysql用户启动(mysql用户文件句柄数限制为1000),数据库中open_files_limit的生效值采用的事1000,疑问备份需要打开的表超过1000,因此备份失败;原创 2024-07-05 15:36:57 · 799 阅读 · 0 评论 -
MySQL8.0~open_files_limit 和 innodb_open_files 参数生效取值标准
1、innodb_open_files 和open_files_limit 两个参数值生效,和操作系统配置和配置文件配置有关系,且和不同操作系统启动服务也有关。2、open_files_limit : 如果是root账号启动 以my.cnf文件里面的值为准, 如果是mysql启动, 就可能是 ulimit -n 看到的那个值3、innodb_open_files :如果以mysql账户启动,则取my.cnf文件里面的值为准;原创 2024-07-05 14:28:22 · 1183 阅读 · 0 评论 -
MySQL8.0新特性~设置不记录某些错误到error log
在MySQL8.0 中 error lo相关参数多了log_error_services 和log_error_suppression_list ,另外log_error_verbosity 的默认值变成了25.7.338.0.25。原创 2024-07-03 11:10:52 · 675 阅读 · 0 评论 -
MySQL8.0新特性~ddl log
在MySQL8.0之前的版本中,由于架构的原因,mysql在server层使用统一的frm文件来存储表元数据信息,这个信息能够被不同的存储引擎识别。而实际上innodb本身也存储有元数据信息。这给ddl带来了一定的挑战,因为这种架构无法做到ddl的原子化,我们在线上经常能够看到数据目录下遗留的临时文件,或者类似server层和innodb层列个数不一致之类的错误。原创 2024-07-03 09:37:04 · 1002 阅读 · 0 评论 -
MySQL8.0新特性~索引新增特性
使用 invisible 创建表 或者 进行 表变更中设置索引为 隐藏索引。这时,索引隐藏不可见, 但是数据库会在后台继续维护隐藏。这个隐藏索引, 在查询时,甚至 force index 都不会使用。这个隐藏索引的主要作用是: 一些索引不确定是否有需要, 如果进行删除,后续又需要恢复这个索引, 假如数据量很大,那么就会耗费大量时间。这时就可以将索引设置为隐藏索引, 等需要时 直接恢复即可。原创 2024-07-01 16:21:46 · 815 阅读 · 0 评论 -
MySQL8.0新特性~General tablespaces
通用表空间数据文件可以放置在数据目录之外的位置,但是路径必须是innodb_directories的值或者附加到innodb_directories值的变量(innodb_data_home_dir、innodb_undo_directory和datadir)之一。通过ALTER TABLE语句的TABLESPACE选项可以修改表的表空间,将表在通用表空间、独立表空间或系统表空间之间进行移动。和Oracle一样,MySQL在创建表时可以指定表空间也可以修改表的表空间。例:创建datadir路径外的表空间。原创 2024-06-28 16:11:28 · 1155 阅读 · 0 评论 -
mysql8.0中的mysql.ibd
在MySQL 8.0之前,数据字典的信息分散在多个位置,包括文件系统上的文件(如.frm、.opt、.TRN等文件)以及数据库系统表中(如INFORMATION_SCHEMA和mysql库中的表)。从MySQL 8.0开始,所有的数据字典信息都被迁移到了InnoDB存储引擎的表中,并且使用一个单独的表空间文件mysql.ibd来存储这些信息。这一变化极大地简化了数据字典的维护,提高了其访问效率和可靠性。mysql8.0版本中多了一个mysql.ibd的文件。.TRN,.TRG文件用于存放触发器的信。原创 2024-06-06 11:31:23 · 523 阅读 · 1 评论 -
MySQL主从异常1872报错
主从报错1872处理办法原创 2024-05-08 11:29:07 · 811 阅读 · 0 评论 -
MySQL的GTID
mysql 的GTID详解原创 2024-04-30 10:19:55 · 1512 阅读 · 3 评论 -
mysqldump备份期间做DDL会发生什么
mysqldump备份期间做DDL会发生什么原创 2024-04-30 09:59:20 · 596 阅读 · 0 评论 -
MySQL参数优化
mysql参数优化原创 2024-04-29 16:19:38 · 717 阅读 · 0 评论 -
MySQL 迁移到 Oracle 需要注意的问题
MySQL 迁移到 Oracle 需要注意的问题原创 2024-04-29 16:15:34 · 780 阅读 · 0 评论 -
optimize table、analyze table 和 alter table的区别
mysql的optimize table、analyze table 和 alter table的区别原创 2024-04-29 16:07:40 · 676 阅读 · 0 评论 -
MySQL权限一览
mysql权限大全原创 2024-04-29 15:57:11 · 350 阅读 · 0 评论 -
MySQL怎么看死锁记录
mysql如何查看死锁记录原创 2024-04-29 15:50:02 · 676 阅读 · 0 评论 -
MySQL的change buffer是什么
mysql的change buffer有什么用原创 2024-04-29 15:47:08 · 639 阅读 · 0 评论 -
表空洞是什么
mysql的表碎片清理原创 2024-04-29 15:41:36 · 732 阅读 · 0 评论 -
mysql索引优化
InnoDB 默认会选择 N 个数据页,统计这些页面上的不同值,得到一个平均值,然后乘以这个索引的页面数,就得到了这个索引的基数。即使你将 index2 的定义修改为 email(18) 的前缀索引,这时候虽然 index2 已经包含了所有的信息,但 InnoDB 还是要回到 id 索引再查一下,因为系统并不确定前缀索引的定义是否截断了完整信息。如果使用 index1(即 email 整个字符串的索引结构)的话,可以利用覆盖索引,从 index1 查到结果后直接就返回了,不需要回到 ID 索引再去查一次。原创 2024-04-29 15:35:44 · 484 阅读 · 0 评论 -
MySQL常用的几个reset
因为在slave 运行时刻 reset master 命令不被支持,reset master 将master 的binlog从000001 开始记录,slave 记录的master log 则是reset master 时主库的最新的binlog,从库会报错无法找的指定的binlog文件。1.reset master 将删除日志索引文件中记录的所有binlog文件,创建一个新的日志文件 起始值从000001 开始,然而purge binary log 命令并不会修改记录binlog的顺序的数值。原创 2024-04-29 15:32:58 · 511 阅读 · 0 评论 -
MySQL的一致性读
begin/start transaction 命令并不是一个事务的起点,在执行到它们之后的第一个操作 InnoDB 表的语句,事务才真正启动。在 InnoDB 事务中,行锁是在需要的时候才加上的,但并不是不需要了就立刻释放,而是要等到事务结束时才释放。在可重复读隔离级别下,只需要在事务开始的时候创建一致性视图,之后事务里的其他查询都共用这个一致性视图;更新数据都是先读后写的,而这个读,只能读当前的值,称为“当前读”(current read)。对于可重复读,查询只承认在事务启动前就已经提交完成的数据;原创 2024-04-29 15:30:55 · 242 阅读 · 0 评论 -
MySQL的XID
mysql的xid是什么,有什么作用原创 2024-04-08 16:38:36 · 1235 阅读 · 1 评论 -
解读一个binlog文件的内容
mysql的binlog文件解析后怎么读原创 2024-04-08 16:28:15 · 586 阅读 · 0 评论 -
如何正确地关闭 MySQL 数据库
如何正确的关闭mysql数据库转载 2024-04-08 10:10:15 · 251 阅读 · 0 评论 -
MySQL的Seconds_Behind_Master 是如何计算的
MySQL的Seconds_Behind_Master 是如何计算的原创 2024-04-07 15:07:42 · 1153 阅读 · 0 评论 -
mysql利用延迟复制恢复误删的表
mysql延迟复制的应用原创 2024-04-03 15:40:45 · 770 阅读 · 0 评论 -
MySQL主从报错Last_IO_Errno: 1593
mysql主从报错常见代码1593问题解决原创 2024-04-03 14:37:39 · 915 阅读 · 0 评论 -
mysql设置延迟复制
mysql延迟复制如何设置原创 2024-04-02 11:40:40 · 491 阅读 · 0 评论 -
AHI对MySQL性能的影响
AHI对mysql性能的影响原创 2024-03-20 09:16:01 · 1573 阅读 · 0 评论 -
drop大表对数据库的影响
drop大表对mysql的影响原创 2024-03-19 16:03:12 · 368 阅读 · 0 评论
分享