MySQL监控工具innotop
3innotop是一个非常好用的开源MySQL命令行监控工具,使用Perl开发,拥有很多的监控模式和选项,能够监控MySQL(InnoDB)多个方面的性能指标,连续不断地刷新数据,查看实时统计信息,帮忙管理员快速找出MySQ …
阅读(703)赞 (0)
innotop是一个非常好用的开源MySQL命令行监控工具,使用Perl开发,拥有很多的监控模式和选项,能够监控MySQL(InnoDB)多个方面的性能指标,连续不断地刷新数据,查看实时统计信息,帮忙管理员快速找出MySQ …
阅读(703)赞 (0)
binlog2sql是一个开源的Python开发的MySQL Binlog解析工具,能够将Binlog解析为原始的SQL,也支持将Binlog解析为回滚的SQL,以便做数据恢复。 主要功能: 将Binlog解析为SQL语句 将Binlog解析为回滚的SQL语 …
阅读(723)赞 (0)
MySQL 5.7引入了组提交功能,组提交的两个参数binlog_group_commit_sync_delay和binlog_group_commit_sync_no_delay_count,如果设置不当,可能导致事务提交hung住。这个问题持续了多个版本,修改了两次源 &he...
阅读(666)赞 (0)
MySQL innochecksum 工具主要用于MySQL innodb表空间文件数据一致性的校验,通过读取表空间文件,计算页的checksum值,将计算的结果与页内存储的checksum值进行对比,检查对比结果是否一致,如果不一致,说 …
阅读(693)赞 (0)
检测MySQL主从延迟,通常使用MySQL自带的Seconds_Behind_Master,但是这个状态变量反映的是秒级别的复制延迟,无法做到更精确的延迟检测。此外,服务器时间不同步也会导致这个状态变量不能真实反映主从间的 …
阅读(733)赞 (0)
字符串类型是MySQL使用最广泛的数据类型之一,主要包括固定长度字符串,变长字符串,大文本字符串,二进制字符串,枚举,集合等。 字符串类型: CHAR VARCHAR BINARY VARBINARY TINYTEXT TEXT MEDIUMTEXT L …
阅读(1293)赞 (0)
时间和日期是数据库的基本数据类型,也是使用较多的一类数据类型,主要包括时间戳、日期、年等。 日期和日期类型: DATE DATETIME TIME TIMESTAMP YEAR 其中TIME,DATETIME,TIMESTAMP可以精确到微秒。 DATE …
阅读(418)赞 (0)
数值类型是MySQL最基本的数据类型,也是使用最多的类型,主要包括整型、浮点型、精确数值型等。 数值类型: BIT TINYINT BOOL/BOOLEAN SMALLINT MEDIUMINT INT/INTEGER BIGINT DECIMAL/DEC/FIXED FLOAT...
阅读(729)赞 (0)
MySQL性能优化的方法有很多,预编译是使用比较多,效果比较好的一种方法。本文将简单介绍什么是MySQL预编译语句,如何使用预编译语句,以及使用预编译语句在性能上能带来多少提高。 什么是预编译语句? MyS …
阅读(463)赞 (0)
MySQL学习资料推荐,包括实体书、电子书、网站博客等等。 实体书推荐: 《MySQL必知必会》 《MySQL技术内幕:InnoDB存储引擎》 《高性能MySQL(第3版)》 《MySQL技术内幕(第5版)》 《深入浅出MySQL:数 …
阅读(697)赞 (0)
MySQL死锁的原因有很多,总的来说,还是因为加锁的顺序不一致,下面来看一个index_merge导致的死锁。 死锁案例: MySQL版本:5.7.19 隔离级别:提交读(RC) 先看表结构,如下: CREATE TABLE `t` ( `id` …
阅读(684)赞 (0)
一直以来,我们使用MySQL,进行版本升级,比如从5.7.11升级到5.7.12,这种小版本升级是一个很小的事情,即使升级过程中或在升级之后,想要回滚,也很方便,直接将mysql server的二进制文件替换回来即可。但 …
阅读(662)赞 (0)
一直以来,MySQL版本升级依赖额外的工具 mysql_upgrade ,但是从 MySQL 8.0.16 开始,mysql_upgrade 工具将被废弃,取而代之的是MySQL 8.0 新的版本升级方式,升级功能集成到MySQL Server的进程mysqld中, &helli...
阅读(635)赞 (0)
在linux平台安装MySQL有很多种方式,比如rpm包,deb包,yum,apt-get 等等,每一种方式都限定于特定的linux发行版本,不具备通用性。然而MySQL提供了一种linux generic方式,能够在所有linux发行版进行安装 …
阅读(703)赞 (0)
MySQL高可用工具,一直以来MHA使用的比较多,自从MySQL 引入GTID之后,又出现了Orchestrator以及replication-manager这类新的高可用工具,本文将主要介绍replication-manager的使用方法。 一、replication- &he...
阅读(646)赞 (0)
表是关系型数据库的核心,通常一个表包括字段、主键、索引等等,下面将介绍如何在MySQL中创建、删除表。 一、创建表: 创建表示例如下: CREATE TABLE tb ( id int(11) NOT NULL AUTO_INCREMENT, name …
阅读(488)赞 (0)
MySQL实例中可以创建多个数据库(schema),因此需要选择某一个数据库进行操作,比如建表等,下面将简单介绍如何使用mysql客户端查看当前数据库,切换数据库。 一、查看MySQL实例中有多少个数据库: show dat …
阅读(638)赞 (0)
MySQL实例中可以创建多个数据库,也称之为schema,下面将简单介绍MySQL创建、删除数据库的语法。 一、创建数据库: create database db1; 或者 create schema db2; 如果一个数据库已经存在,创建一个已经存 …
阅读(679)赞 (0)
MySQL通过Binlog进行主从数据的复制,Binlog是一种二进制格式的文件,理解Binlog二进制格式能够帮助我们进一步理解MySQL的主从复制原理。本文将对Binlog文件格式进行分析。 本文涉及的源码版本和相关参数如 …
阅读(683)赞 (0)
安装部署MySQL之后,就可以使用MySQL了。MySQL日常使用主要包括连接数据库,创建数据库,创建表,插入数据,修改数据,删除数据,查询数据等等,下面将介绍MySQL最基本的日常使用命令。 一、连接MySQL 通常 …
阅读(688)赞 (0)
MySQL主从复制是使用最多的高可用架构,主库写入数据,通过主从复制同步到从库。从库只读,如果配置了读写分离和负载均衡,那么除了写入数据只能在主库进行,读流量完全可以分配到从库上,减少主库的压力。 …
阅读(289)赞 (0)
MySQL是一款开源的关系型数据库,目前最新的大版本为8.0,本文将介绍CentOS 7.2环境下,源码编译安装MySQL 8.0的过程以及遇到的问题。 环境: CentOS 7.2 MySQL 8.0.18 一、下载MySQL 8.0 源码 MySQL官方社 …
阅读(668)赞 (0)
编译MySQL 8.0 源码时,提示cmake版本过低,需要升级cmake到3.5.1及以上版本,系统上的cmake版本为2.8.12.2,下载cmake源码,自己编译一个高版本cmake,用来编译MySQL 8.0 源码。 系统环境: CentOS 7.2 GC &hellip...
阅读(695)赞 (0)
一、背景 MySQL 1主2从,半同步复制,主库有较高的写入量,此时在主库重复安装半同步插件,可能导致主库hang住,无响应,只能通过重启数据库来恢复。 二、故障复现 环境: MySQL版本:Percona Server for M …
阅读(684)赞 (0)
一、问题背景 环境: MySQL:Percona Server for MySQL 5.7.19 JDBC:mysql connector-J 5.1.45 Java代码通过JDBC执行SQL报错 如下: java.sql.SQLException: Unknown type '...
阅读(642)赞 (0)
1、MySQL官方社区版本下载: MySQL 8.0 下载: https://dev.mysql.com/downloads/mysql/ MySQL 5.0,5.1,5.5,5.6,5.7,8.0下载: https://downloads.mysql.com/archives/...
阅读(626)赞 (0)
MySQL使用delete语法来删除表中的数据,下面介绍一些常见的delete用法。 1、delete语法 delete from table_name [where clause] 如果没有指定where子句,则会将表中所有数据删除,谨慎使用,一不小心误删数 …
阅读(653)赞 (0)
MySQL使用update语法来更新表中的数据,下面介绍一些常见的update用法。 1、update语法 update table_name set field1=value1,field2=value2,...,fieldN=valueN [where clause] 如果没...
阅读(646)赞 (0)
MySQL中插入数据,如果插入的数据在表中已经存在(主键或者唯一键已存在),使用insert into on duplicate key update 语法可以更新重复数据的某些字段值。 1、语法 insert into table_name(field1,field2, &he...
阅读(633)赞 (0)
MySQL中插入数据,如果插入的数据在表中已经存在(主键或者唯一键已存在),使用insert ignore 语法可以忽略插入重复的数据。 1、insert ignore 语法 insert ignore into table_name values... 使用insert &h...
阅读(618)赞 (0)