-
1.3万亿条数据查询怎样做到毫秒级响应?
所属栏目:[MySql教程] 日期:2022-03-28 热度:150
作为中国最大的知识共享平台,我们目前拥有 2.2 亿注册用户,3000 万个问题,网站答案超过 1.3 亿。 随着用户群的增长,我们的应用程序的数据大小无法实现。我们的 Moneta 应用程序中存储了大约 1.3 万亿行数据(存储用户已经阅读过的帖子)。 由于每月累[详细]
-
CSS-T Mysql Client 任何文件读取攻击链拓展
所属栏目:[MySql教程] 日期:2022-03-28 热度:65
这应该是一个很早以前就爆出来的漏洞,而我见到的时候是在TCTF2018 final线下赛的比赛中,是被 Dragon Sector 和 Cykor 用来非预期h5x0rs club这题的一个技巧。 在后来的研究中,和@Dawu的讨论中顿时觉得这应该是一个很有趣的trick,在逐渐追溯这个漏洞的[详细]
-
python运作mysql数据库
所属栏目:[MySql教程] 日期:2022-03-28 热度:78
问题描述: 今天下午跑某项目db需求,百库百表清脏数据,然后自己写了个python脚本,跑完之后通知项目,然后项目给玩家发奖励了,结果悲催了,所有的mysql操作没有执行成功(没有报错,因而以为执行成功)。 以下是我的python脚本,传两个文件作为参数,host[详细]
-
mysql 大事物commit慢造成全库堵塞难题
所属栏目:[MySql教程] 日期:2022-03-28 热度:75
原创转载请注明出处 本文使用引擎INNODB版本MYSQL5.7.13 sync_binlog = 1 innodb_flush_log_at_trx_commit = 1 也就是双1设置, 1、问题由来 在线上环境一次同事删除了1000W的数据,在commit的时候,整个数据库 大约有几十秒的全部hang住的情况,本文就是[详细]
-
如何确认Single-Primary模式下的MGR主节点
所属栏目:[MySql教程] 日期:2022-03-28 热度:136
MySQL 5.7 可以通过global status group_replication_primary_member 确定 root@db20:59: [mgr] SELECT VARIABLE_VALUE - FROM performance_schema.global_status - WHERE VARIABLE_NAME = group_replication_primary_member; +--------------------------[详细]
-
MySQL执行计划explain的key_len剖析
所属栏目:[MySql教程] 日期:2022-03-28 热度:165
当用Explain查看SQL的执行计划时,里面有列显示了 key_len 的值,根据这个值可以判断索引的长度,在组合索引里面可以更清楚的了解到了哪部分字段使用到了索引。下面演示中,表结构的合理性这边暂且不说,只是证明一下索引长度的计算方法。目前大部分博文是[详细]
-
mysql之 MySQL 主从基于 GTID 复制原理阐述
所属栏目:[MySql教程] 日期:2022-03-28 热度:188
mysql之 MySQL 主从基于 GTID 复制原理概述: 一、 什么是GTID ( Global transaction identifiers ): MySQL-5.6.2开始支持,MySQL-5.6.10后完善,GTID 分成两部分,一部分是服务的UUid,UUID保存在mysql数据目录的auto.cnf文件中, 这是一个非常重要的文[详细]
-
MySQL 最容易忽视的常识
所属栏目:[MySql教程] 日期:2022-03-28 热度:116
开发反馈一个表的数据大小已经130G,对物理存储空间有影响,且不容易做数据库ddl变更。咨询了开发相关业务逻辑,在电商业务系统中,每笔订单成交之后会有一条对应的订单物流信息,因此需要设计一个物流相关的表用来存储该订单的物流节点信息,该表使用text字[详细]
-
MySQL数据库数据文件路径迁移过程
所属栏目:[MySql教程] 日期:2022-03-28 热度:151
MySQL数据库数据文件路径迁移步骤: 一、关闭mysql. $ service mysqld stop 二、将/data/mysql下的mysql目录mv(移动)到data目录。 mysql show variables like datadir; +---------------+-----------------+ | Variable_name | Value | +---------------[详细]
-
MySQL5.7+MHA+Keepalived failover自动更换
所属栏目:[MySql教程] 日期:2022-03-28 热度:158
数据库架构:一主两从 master:192.168.8.57 slave1:192.168.8.58 slave2:192.168.8.59 manager:192.168.8.60 MHA工具包: mha4mysql-manager-0.58.tar.gz mha4mysql-node-0.58.tar.gz keepalived-1.4.5.tar.gz 一、环境配置过程如下: http://blog.itp[详细]
-
MYSQL CLENT SERVER数据包传输及net packet buffer用途解析
所属栏目:[MySql教程] 日期:2022-03-28 热度:111
水平有限再加上源码的复杂性,难免出现错误,请共同研究予以纠正 本文参考源码: Net_serv.cc(主要参考) Mysql.h.pp Mysql_socket.h Violite.h Viosocket.c Vio.c 参考书籍: 深入理解MYSQL核心技术 MYSQL核心内幕 internals-en MYSQL官方手册 LINUX系统编[详细]
-
MySQL案例--磁盘空间不够 MTS Group recovery失败
所属栏目:[MySql教程] 日期:2022-03-28 热度:186
线上业务,最后一次内测阶段; 背景:MySQL-5.7.12 问题发生的现象: 收到报警信息,业务主库A的心跳检测失败,将备库B升级为业务主库; 问题发生的原因: 业务主库A的数据文件目录的磁盘空间剩余量为0%; 与此同时,不管是start slave还是change master都[详细]
-
MySql入门基本知识
所属栏目:[MySql教程] 日期:2022-03-28 热度:169
MySql入门--基础知识: 一、Mysql 物理文件组成 (一)日志文件 1、错误日志:Error Log 错误日志记录了MyQL Server 运行过程中所有较为严重的警告和错误信息,以及MySQLServer 每次启动和关闭的详细信息。在默认情况下,系统记录错误日志的功能是关闭的,[详细]
-
PostgreSQL XID与virtual XID区别
所属栏目:[MySql教程] 日期:2022-03-28 热度:158
PG中事务号有两个概念,一个就是通常意义上的事务号transaction id。如tuple中的xmin,xmax等。另外一个意义是虚拟事务ID,即virtual transaction ID。那么这两个有 什么区别呢? 1.Transaction Id 它是用来标识事务的顺序的,类似于Oracle的LSN(Logical S[详细]
-
MySQL的半同步复制
所属栏目:[MySql教程] 日期:2022-03-28 热度:156
MySQL5.5 除了支持内置的异步复制机制,还提供了接口支持半同步复制的机制。 异步复制的缺点: MySQL复制默认是异步复制,Master将事件写入binlog,但并不知道Slave是否或何时已经接收且已处理。在异步复制的机制的情况下,如果Master宕机,事务在Master上[详细]
-
Linux安装mysql数据库——编译安装
所属栏目:[MySql教程] 日期:2022-03-26 热度:170
Linux安装mysql数据库编译安装: 一. 注册一个oracle账号: Linux安装mysql数据库编译安装 二 .系统包准备 # yum -y install gcc gcc-c++ gcc-g77 autoconf automake zlib* fiex* libxml* ncurses-devel libmcrypt* libtool-devel* make cmake 注意:ncurs[详细]
-
MySQL Transportable Tablespace 传输表空间 利用详解
所属栏目:[MySql教程] 日期:2022-03-26 热度:70
将大的InnoDB表从一个实例,移动或者复制到另一个实例,有很多的方法,在5.6之前常用的是通过物理或者逻辑备份来实现。 在5.6.6+的版本中,用到了一种基于表空间迁移的快速方法,即类似Oracle TTS。 因为用到,故整理记录至此。 实验用到两台机器,单机单[详细]
-
MySQL并发复制系列 MySQL和MariaDB实现比较
所属栏目:[MySql教程] 日期:2022-03-26 热度:94
经过上两篇关于MySQL/MariaDB 的Binary Log Group Commit的发展历程和enhanced multi-threaded slave的介绍,相信大家对MySQL 基于Binay Log 的replication的原理以及为了解决主备数据复制延迟问题而引入的enhanced multi-threaded slave 功能,支持从库[详细]
-
分享 MySQL和Oracle行值表达式相比
所属栏目:[MySql教程] 日期:2022-03-26 热度:62
行值表达式也叫作行值构造器,在很多SQL使用场景中会看到它的身影,一般是通过in的方式出现,但是在MySQL和Oracle有什么不同之处呢。我们做几个简单的测试来说明一下。 MySQL 5.6,5.7版本的差别 首先我们看一下MySQL 5.6, 5.7版本中的差别,在这一方面还是[详细]
-
怎么处于linux完成MySQL主从热备?
所属栏目:[MySql教程] 日期:2022-03-26 热度:94
随着大数据时代的来临,数据显得尤为重要,数据的丢失或者损毁甚至可以摧毁一个公司。 Linux下的主从热备其实很简单 作为主服务器Master, 会把自己的每一次改动都记录到 二进制日志 Binarylog 中。 (从服务器会负责来读取这个log, 然后在自己那里再执行[详细]
-
解析SQL给出索引优化提议的工具
所属栏目:[MySql教程] 日期:2022-03-26 热度:65
SQLAdvisor是由美团点评公司技术工程部DBA团队(北京)开发维护的一个分析SQL给出索引优化建议的工具。它基于MySQL原生态词法解析,结合分析SQL中的where条件、聚合条件、多表Join关系 给出索引优化建议。目前SQLAdvisor在美团点评内部广泛应用,公司内部[详细]
-
有关MySQL中的一些极限值的初步验证纠错
所属栏目:[MySql教程] 日期:2022-03-26 热度:100
晚上从珠江边回来之后,看到一篇文章说,MySQL有几个极限值,一个表的字段最多只有1017个,我看了以后表示怀疑。怎么快速验证呢,我看到文章的时候已经11点了,只有不到1个小时的时间来验证了。我想不能通过手工的方式来做,写个简单的脚本,能实 现功能即[详细]
-
mysql5.7.17 64位rhel6.5下安置
所属栏目:[MySql教程] 日期:2022-03-26 热度:85
安装环境: rhel6.5_64 MySQL Community Server 5.7.17 64位 安装下载的mysql57-community-release-el6-9.noarch.rpm [root@rhel-mysql ~]# rpm -Uvh mysql57-community-release-el6-9.noarch.rpm Preparing... ##########################################[详细]
-
重要的Myisam Mysql系统最少需要几个库?
所属栏目:[MySql教程] 日期:2022-03-26 热度:143
对于比较重要的系统,自然是多多益善,但是总有个最小值咯。好比有人问oracle rac几个节点会比较好一样。[@more@] 答案是3个:主库,读库,备库。 因为Myisam锁的管理原理,导致查询会阻塞更新,mysqlhotcopy会锁住表防止更新和查询。大大影响了系统的可用[详细]
-
MyISAM和InnoDB的主要差别和应用场景
所属栏目:[MySql教程] 日期:2022-03-26 热度:147
主要区别: 1).MyISAM是非事务安全型的,而InnoDB是事务安全型的。 2).MyISAM锁的粒度是表级,而InnoDB支持行级锁定。 3).MyISAM支持全文类型索引,而InnoDB不支持全文索引。 4).MyISAM相对简单,所以在效率上要优于InnoDB,小型应用可以考虑使用MyISAM。[详细]