代码改变世界

随笔分类 -  数据库技术(My SQL)

MySQL自增列(AUTO_INCREMENT)相关知识点总结

2018-07-11 15:32 by 潇湘隐者, 5313 阅读, 收藏, 编辑
摘要: MySQL的自增列(AUTO_INCREMENT)和其它数据库的自增列对比,有很多特性和不同点(甚至不同存储引擎、不同版本也有一些不同的特性),让人感觉有点稍微复杂。下面我们从一些测试开始,来认识、了解一下这方面的特殊知识点: 自增列持久化问题 如果一个表拥有自增列,当前最大自增列值为9, 删除了自增列6、7、8、9的记录,重启MySQL服务后,再往表里面插入数据,自增列的值为6还... 阅读全文

Percona XtraBackup 备份还原篇

2018-06-27 23:34 by 潇湘隐者, 4392 阅读, 收藏, 编辑
摘要: Percona XtraBackup 安装介绍篇已经对Percona XtraBackup的功能和安装做了比较详细的介绍,那么本篇我们直接进入主题,如何使用XtraBackup做备份、还原,下面主要介绍XtraBackup备份还原操作的细节和场景,疏漏之处难免存在,如有不足,敬请指出。本篇暂时不做原理介绍,后续篇章"Percona XtraBackup 原理分析篇"再做介绍。 ... 阅读全文

MySQL状态变量Aborted_connects与Aborted_clients浅析

2018-06-21 00:25 by 潇湘隐者, 6482 阅读, 收藏, 编辑
摘要: 关于MySQL的状态变量Aborted_clients & Aborted_connects分别代表的意义,以及哪些情况或因素会导致这些状态变量变化呢?下文通过实验测试来验证一下,首先我们来看看状态变量的描述: Aborted Connect Aborted Connect表示尝试连接到MySQL服务器失败的次数。这个状态变量可以结合host_cache表和其错误日志一起来分析问题... 阅读全文

ERROR 1044 (42000): Access denied for user 'root'@'localhost'

2018-06-19 14:53 by 潇湘隐者, 28473 阅读, 收藏, 编辑
摘要: 从供应商那边接手一个MySQL数据库(数据库版本为5.7.21 MySQL Community Server (GPL)),在创建账号时遇到了“ERROR 1044 (42000): Access denied for user 'root'@'localhost' to database xxx”错误,如下所示 mysql> grant all on xxx.* to xxx@'192... 阅读全文

ERROR 3009 (HY000): Column count of mysql.user is wrong…..

2018-06-19 13:45 by 潇湘隐者, 7163 阅读, 收藏, 编辑
摘要: 在测试备份还原时,使用XtraBackup还原数据库后,创建一个测试账号时遇到了下面错误: mysql> grant all on house.* to test@'192.168.%' identified by 'test1249'; ERROR 3009 (HY000): Column count of mysql.user is wrong. Expected 45, found ... 阅读全文

MySQL InnoDB下关于MVCC的一个问题的分析

2018-05-29 22:33 by 潇湘隐者, 1176 阅读, 收藏, 编辑
摘要: 这个是网友++C++在群里问的一个关于MySQL的问题,本篇文章实验测试环境为MySQL 5.6.20,事务隔离级别为REPEATABLE-READ ,在演示问题前,我们先准备测试环境。准备一个测试表test以及一个存储过程循环往test表里面插入记录。 CREATE TABLE test( `id` int(11) primary key not null, `name` char... 阅读全文

翻译:MySQL "Got an Error Reading Communication Packet" Errors

2018-05-23 09:07 by 潇湘隐者, 41923 阅读, 收藏, 编辑
摘要: 前言: 本文是对Muhammad Irfan的这篇博客MySQL "Got an Error Reading Communication Packet" Errors的翻译,如有翻译不对或不好的地方,敬请指出,大家一起学习进步。尊重原创和翻译劳动成果,转载时请注明出处。谢谢! 英文原文地址:https://www.percona.com/blog/2016/05/16/mysql-got-... 阅读全文

MySQL的变量分类总结

2018-05-10 19:44 by 潇湘隐者, 3775 阅读, 收藏, 编辑
摘要: 在MySQL中,my.cnf是参数文件(Option Files),类似于ORACLE数据库中的spfile、pfile参数文件,照理说,参数文件my.cnf中的都是系统参数(这种称呼比较符合思维习惯),但是官方又称呼其为系统变量(system variables),那么到底这个叫系统参数或系统变量(system variables)呢? 这个曾经是一个让我很纠结的问题,因为MySQL中有各种... 阅读全文

MySQL5.7参数log_timestamps

2018-04-30 17:12 by 潇湘隐者, 4211 阅读, 收藏, 编辑
摘要: 最近测试MySQL 5.7.21 Community Server这个版本的MySQL数据库时,发现其错误日志的时间跟系统当前时间不一致,后面检查发现日期时间格式都是UTC时间,查了一下相关资料,原来在MySQL 5.7.2 之后日志文件里面的时间戳从默认的本地系统时区改为了UTC格式。MySQL 5.7.2多了一个参数log_timestamps ,这个参数主要是控制错误日志、慢查询日志等日志... 阅读全文

MySQL新参数log_error_verbosity

2018-04-30 11:49 by 潇湘隐者, 14516 阅读, 收藏, 编辑
摘要: 在介绍这个参数前,我们先聊聊参数log_warnings。我们知道MySQL中,其中log_error定义是否启用错误日志的功能和错误日志的存储位置,log_warnings定义是否将告警信息(warning messages)也写入错误日志。此选项默认启用,具体来说: log_warnings 为0, 表示不记录告警信息。 log_warnings 为1, 表示告警信息写入错误日... 阅读全文

[翻译]:MySQL Error: Too many connections

2018-04-27 23:25 by 潇湘隐者, 2093 阅读, 收藏, 编辑
摘要: 翻译:MySQL Error: Too many connections 前言: 本文是对Muhammad Irfan的这篇博客MySQL Error: Too many connections的翻译,如有翻译不对或不好的地方,敬请指出,大家一起学习进步。尊重原创和翻译劳动成果,转载时请注明出处。谢谢! 英文原文地址:https://www.percona.com/blog/2013/... 阅读全文

MySQL Innodb如何找出阻塞事务源头SQL

2018-04-26 00:04 by 潇湘隐者, 7200 阅读, 收藏, 编辑
摘要: 在MySQL数据库中出现了阻塞问题,如何快速查找定位问题根源?在实验开始前,我们先梳理一下有什么工具或命令查看MySQL的阻塞,另外,我们也要一一对比其优劣,因为有些命令可能在实际环境下可能并不适用。 1: show engine innodb status 2: Innotop工具 3: INNODB_TRX 等系统表 下面我们理论联系实际,通过实验来测试总结一... 阅读全文

MySQL下perror工具查看System Error Code信息

2018-04-02 23:52 by 潇湘隐者, 2720 阅读, 收藏, 编辑
摘要: 在MySQL数据库的维护过程中,我们有时候会在MySQL的错误日志文件中看到一些关于Operating system error的错误信息,例如在MySQL的错误日志里面,有时候会看到关于 InnoDB: Operating system error number 0. InnoDB: Check that your OS and file system support files of... 阅读全文

ERROR 1050 (42S01): Table xxx already exists

2018-04-02 12:26 by 潇湘隐者, 22040 阅读, 收藏, 编辑
摘要: 今天遇到一个关于MySQL求助的问题,修改表结构时遇到“ERROR 1050 (42S01): table xxx already exits" mysql> ALTER TABLE DAY_BOOK_REPORT ADD UNIT_PRICE_PCS DOUBLE(12,2) DEFAULT NULL; ERROR 1050 (42S01): TABLE 'INVGSP/#SQL-... 阅读全文

MySQL的自动提交模式

2018-03-26 10:09 by 潇湘隐者, 45688 阅读, 收藏, 编辑
摘要: 默认情况下, MySQL启用自动提交模式(变量autocommit为ON)。这意味着, 只要你执行DML操作的语句,MySQL会立即隐式提交事务(Implicit Commit)。这个跟SQL Server基本是类似的。如果你了解SQL Server数据库的话。 查看autocommit模式 由于变量autocommit分会话系统变量与全局系统变量,所以查询的时候,最好... 阅读全文

MySQL服务读取参数文件my.cnf的规律研究探索

2018-03-16 15:27 by 潇湘隐者, 1790 阅读, 收藏, 编辑
摘要: 在MySQL中,它是按什么顺序或规律去读取my.cnf配置文件的呢?其实只要你花一点功夫,实验测试一下就能弄清楚,下面的实验环境为5.7.21 MySQL Community Server。其它版本如有不同,请以实际情况为准。 其实,MySQL是按照下面这个顺序来读取my.cnf: 1: /etc/my.cnf 2: /etc/mysql/my.cnf 3: /us... 阅读全文

ERROR 1045 (28000): Access denied for user xxx & ERROR 1449 (HY000): The user specified as a definer xxx does not exists

2018-03-07 17:04 by 潇湘隐者, 4411 阅读, 收藏, 编辑
摘要: 今天在一个修改过权限的MySQL数据库遇到了“ERROR 1045 (28000): Access denied for user 'xxx'@'xxx.xxx.xxx.xxx' (using password: YES)”和“ERROR 1449 (HY000): The user specified as a definer ('xxx'@'xx') does not exist” 错误,... 阅读全文

MySQL参数max_connect_errors分析释疑

2018-02-02 16:36 by 潇湘隐者, 43110 阅读, 收藏, 编辑
摘要: 最近一MySQL服务器,由于一些特殊因素遇到“ERROR 1129 (00000): Host 'xxx' is blocked because of many connection errors. Unblock with 'mysqladmin flush-hosts'”,在问题解决后,在详细了解参数max_connect_errors的过程中,有些不同网络资料的矛盾描述确实让我有点迷惑和... 阅读全文

Innotop简单介绍

2017-10-12 15:30 by 潇湘隐者, 1715 阅读, 收藏, 编辑
摘要: Innotop介绍 Innotop是一款Perl脚本编写、开源、功能强大的MySQ的监控工具,它通过文本模式(命令行模式)监控,功能强大,配置简单,易于使用等等特性。Innotop这个项目位于https://github.com/innotop/innotop上。官方的介绍如下: innotop is a 'top' clone for MySQL with many features... 阅读全文

MySQL参数log_bin_trust_function_creators介绍

2017-10-09 17:02 by 潇湘隐者, 73775 阅读, 收藏, 编辑
摘要: MySQL的有个参数log_bin_trust_function_creators,官方文档对这个参数的介绍、解释如下所示: log_bin_trust_function_creators Command-Line Format --log-bin-trust-function-creators System Variable Name log_bin_trust_f... 阅读全文