- 博客(95)
- 收藏
- 关注
原创 MySQL8.0新特性~资源组的应用
MySQL-8.0中新增了resource group资源组的功能。MySQL资源组的想法来源很简单:每个资源组是一个资源独立的单位,每个资源组能够容纳一个或者多个MySQL线程。拥有设置资源组权限的DBA们能够创建、配置资源组以及指定、切换MySQL线程从属的资源组,从而更加精准地管控MySQL。RESOURCE_GROUP_NAME: 资源组名。
2024-08-01 16:26:42
404
原创 MySQL8.0新特性~最左前缀匹配原则被打破了
在MySQL8.0.25和mysql5.7.33中创建如下在mysql8.0.25中执行在mysql5.7.33中执行可以看到在8.0版本中使用了range的扫描方式。
2024-07-22 15:17:22
499
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
896
原创 使用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
1058
原创 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
584
原创 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
673
原创 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
373
原创 MySQL8.0新特性~ddl log
在MySQL8.0之前的版本中,由于架构的原因,mysql在server层使用统一的frm文件来存储表元数据信息,这个信息能够被不同的存储引擎识别。而实际上innodb本身也存储有元数据信息。这给ddl带来了一定的挑战,因为这种架构无法做到ddl的原子化,我们在线上经常能够看到数据目录下遗留的临时文件,或者类似server层和innodb层列个数不一致之类的错误。
2024-07-03 09:37:04
725
原创 MySQL8.0新特性~索引新增特性
使用 invisible 创建表 或者 进行 表变更中设置索引为 隐藏索引。这时,索引隐藏不可见, 但是数据库会在后台继续维护隐藏。这个隐藏索引, 在查询时,甚至 force index 都不会使用。这个隐藏索引的主要作用是: 一些索引不确定是否有需要, 如果进行删除,后续又需要恢复这个索引, 假如数据量很大,那么就会耗费大量时间。这时就可以将索引设置为隐藏索引, 等需要时 直接恢复即可。
2024-07-01 16:21:46
584
原创 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
905
原创 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
278
1
原创 optimize table、analyze table 和 alter table的区别
mysql的optimize table、analyze table 和 alter table的区别
2024-04-29 16:07:40
228
原创 mysql索引优化
InnoDB 默认会选择 N 个数据页,统计这些页面上的不同值,得到一个平均值,然后乘以这个索引的页面数,就得到了这个索引的基数。即使你将 index2 的定义修改为 email(18) 的前缀索引,这时候虽然 index2 已经包含了所有的信息,但 InnoDB 还是要回到 id 索引再查一下,因为系统并不确定前缀索引的定义是否截断了完整信息。如果使用 index1(即 email 整个字符串的索引结构)的话,可以利用覆盖索引,从 index1 查到结果后直接就返回了,不需要回到 ID 索引再去查一次。
2024-04-29 15:35:44
385
原创 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
364
原创 MySQL的一致性读
begin/start transaction 命令并不是一个事务的起点,在执行到它们之后的第一个操作 InnoDB 表的语句,事务才真正启动。在 InnoDB 事务中,行锁是在需要的时候才加上的,但并不是不需要了就立刻释放,而是要等到事务结束时才释放。在可重复读隔离级别下,只需要在事务开始的时候创建一致性视图,之后事务里的其他查询都共用这个一致性视图;更新数据都是先读后写的,而这个读,只能读当前的值,称为“当前读”(current read)。对于可重复读,查询只承认在事务启动前就已经提交完成的数据;
2024-04-29 15:30:55
137
原创 linux配置mail发送邮件
mail -s “邮件主题” 1968089885@foxmail.com -a /data/findyou.tar.gz < /data/findyou.txt。mail -s “主题” 收件地址 -a 附件 < 文件(邮件正文.txt)cat 邮件正文.txt | mail -s 邮件主题 收件地址。mail -s “主题” 收件地址< 文件(邮件正文.txt)echo “邮件正文” | mail -s 邮件主题 收件地址。mail -s “主题” 收件地址。
2024-04-22 15:07:12
477
原创 python文件操作--读取写入
读取一个文件,将文件内容逐行读取,并判断这一行中是否包含有“测试”的内容,如果有则扔掉,将读取的内容写入一个新的文件。
2024-04-22 10:49:33
116
原创 使用ansible的连通性检查的关键参数
将host_key_checking设置为False表示禁用主机密钥检查。这可能会导致安全问题,因为这样会允许连接到未经验证的主机。建议仅在测试环境中使用此设置,并在生产环境中启用主机密钥检查以确保安全性。host_key_checking = False # 检查对应服务器的host_key,建议取消注释。如果不是将此参数打开,则必须进行ssh 过后,才能通过ansible进行连接。使用ansible进行ping命令的时候发现有些不通。可以通过修改配置文件。
2024-04-16 15:46:49
560
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人