本文基于MySQL 8.0的源代码总结了MySQL中表级别线程锁的实现机制, 底层仅关注Linux平台, Windows平台的实现可能有差异. 虽然不涉及到某个特定的存储引擎, 但会讨论MySQL的handler(实现plugin的...
MySQL双主(主主)架构方案
在企业中,数据库高可用一直是企业的重中之重,中小企业很多都是使用mysql主从方案,一主多从,读写分离等,但是单主存在单点故障,从库切换成主库需要作改动。因此,如果是双...
MySQL指定各分区路径
可以针对分区表的每个分区指定各自的存储路径,对于innodb存储引擎的表只能指定数据路径,因为数据和索引是存储在一个文件当中,对于MYISAM存储引擎可以分别指定数据文件和索引文...
TiDB 作为 MySQL Slave 实现实时数据同步
由于 TiDB 本身兼容绝大多数的 MySQL 语法,所以对于绝大多数业务来说,最安全的切换数据库方式就是将 TiDB 作为现有数据库的从库接在主 MySQL 库的后方,这样对业务方实现完全没有侵...
记一次mysql双主配置
在linode有一台vps,之前的博客在这台上,后来迁回国内,现在就用来翻墙。本来打算再开几台机器组建celery集群,用来计算,但是linode东京机房长期缺货,找了下发现conoha的配置很不错...
MySQL获取分组后的TOP 1和TOP N记录
有时会碰到一些需求,查询分组后的最大值,最小值所在的整行记录或者分组后的top n行的记录,在一些别的数据库可能有窗口函数可以方面的查出来,但是MySQL没有这些函数,没有直接...
MySQL利用binlog恢复误操作数据
方法一、利用最近的全量备份+增量binlog备份,恢复到误操作之前的状态,但是随着数据量的增大,binlog的增多,恢复起来很费时。 方法二、如果binlog的格式为row,那么就可以将binlog解...
细说MySQL区分字母大小写
在Linux系统上使用MySQL,MySQL是区分字母大小写的,例如建A表时表名是大写的A,修改A表时脚本里写的a,就会报错表a不存在。在MySQL中,数据库对应数据目录中的目录,数据库中的每个表...
MySQL数据库自动生成并修改随机root密码的脚本
在MySQL数据库部署的过程中,在安装了MySQL软件,并配置了my.cnf配置文件后,需要创建MySQL实例。 MySQL 5.5实例创建完成了,默认会有登陆用户名和密码为空的用户,一般需要修改root用户...
MySQL复制表方法,你知道几种?
在本教程中,您将学习如何使用CREATE TABLE和SELECT语句在同一数据库中或从一个表复制到同一个数据库中另一个表,这种方法可以用来备份数据库中的表。 MySQL复制表到新表 将数据从现有...