随笔分类 - MySQL
摘要:1. Upgrading to MySQL 5.7, focusing on temporal types 在MySQL 5.6.4中,对TIME, TIMESTAMP and DATETIME三种时间类型进行了扩充,支持了微秒,并且DATETIME的存储由之前的8个字节缩小到5个字节。 如果从My
阅读全文
摘要:如果哪天你忘记了线上MySQL数据库的root密码,怎么办? 大家往往会想到skip-grant-tables参数,具体步骤如下: 1. 关闭MySQL数据库,因为root密码忘记了,mysqladmin无法使用,此时,只能通过kill pid关闭程序。 在这里,科普一下kill 和kill -9的
阅读全文
摘要:CHAR char (M) M字符,长度是M*字符编码长度,M最大255。 验证如下: VARCHAR VARCHAR(M),M同样是字符,长度是M*字符编码长度。它的限制比较特别,行的总长度不能超过65535字节。 注意,以上表的默认字符集是latin1,字符长度是1个字节,所以对于varchar
阅读全文
摘要:修改ibdata1大小的验证 ibdata是共享表空间,在MySQL初始化的时候就生成了。 但很多童鞋会看到网上各种大神的调优建议,在MySQL已经初始化的情况下,修改配置文件中innodb_data_file_path=ibdata1:12M:autoextend。导致MySQL启动的时候报错。
阅读全文
摘要:MySQL有三个版本:二进制,源码包,RPM。 下面讲讲二进制包的安装过程 下载地址: http://dev.mysql.com/downloads/mysql/ 选择Linux-Generic 我这里选择的是mysql-5.6.28-linux-glibc2.5-x86_64.tar.gz 解压后
阅读全文
摘要:作为MySQL调优的一部分,很多人都推荐开启skip_name_resolve。这个参数是禁止域名解析的(当然,也包括主机名)。很多童鞋会好奇,这背后的原理是什么,什么情况下开启这个参数比较合适。 基于以下原因,MySQL服务端会在内存中维护着一份host信息, 包括三部分:IP,主机名和错误信息。
阅读全文
摘要:经常会遇到这种情况,在一个不能上网的环境通过MySQL客户端登录数据库,想执行一个操作,却忘了操作的具体语法,各种不方便。 其实,MySQL数据库内置了帮助文档,通过help contents即可查看。 如下所示: 可见,该文档涵盖了数据库操作的大部分主题。 文档分为以上几大类,每个大类又包括更小粒
阅读全文
摘要:1. 关于Doublewrite Buffe的总结 Doublewrite Buffer:Doublewrite Buffer出现的初衷是防止buffer pool中的脏页刷新到磁盘中,出现部分写的问题,innodb页大小一般为16k,而Linux操作系统的block size一般为4k。这样在刷新
阅读全文
摘要:1. TokuFT file system space is really low and access is restricted 解决方法:修改tokudb_fs_reserve_percent参数,不过该参数是静止参数,需重启实例 具体可参考:http://www.cnblogs.com/zu
阅读全文
摘要:索引下推整个思路如下: To see how this optimization works, consider first how an index scan proceeds when Index Condition Pushdown is not used: Get the next row,
阅读全文
摘要:8.2.1.3 Range Optimization MYSQL的Range Optimization的目的还是尽可能的使用索引 8.2.1.3 Range Optimization MYSQL的Range Optimization的目的还是尽可能的使用索引 The range access met
阅读全文
摘要:1.sql_safe_updates官方解释如下:If set to 1, MySQL aborts UPDATE or DELETE statements that do not use a key in the WHERE clause or a LIMIT clause. (Specifica...
阅读全文
摘要:今天,启动MySQL服务器失败,如下所示:[root@spark01 ~]# /etc/init.d/mysqld startStarting mysqld (via systemctl): Job for mysqld.service failed because the control pro...
阅读全文
摘要:为了加强安全性,MySQL5.7为root用户随机生成了一个密码,在error log中,关于error log的位置,如果安装的是RPM包,则默认是/var/log/mysqld.log。一般可通过log_error设置mysql> select @@log_error;+------------...
阅读全文
摘要:今天下午,帮同事重写了一个MySQL SQL语句,该SQL语句涉及两张表,其中一张表是字典表(需返回一个字段),另一张表是业务表(本身就有150个字段,需全部返回),当然,字段的个数是否合理在这里不予评价。平时,返回的数据大概5w左右,系统尚能收到数据。但12月31日那天,数据量大概20w,导致SQ
阅读全文
摘要:脚本如下:#!/bin/bashmysql -s -phello test >1.log select * from t1;+------+-------+| id | name |+------+-------+| 1 | || 1 | NULL || 2 ...
阅读全文
摘要:一、存储过程存储过程的基本格式如下:-- 声明结束符-- 创建存储过程DELIMITER $ -- 声明存储过程的结束符CREATE PROCEDURE pro_test() --存储过程名称(参数列表)BEGIN -- 可以写多个sql语句; -- sql语句+流程控制 ...
阅读全文
摘要:一、MySQL中如何表示当前时间? 其实,表达方式还是蛮多的,汇总如下: CURRENT_TIMESTAMP CURRENT_TIMESTAMP() NOW() LOCALTIME LOCALTIME() LOCALTIMESTAMP LOCALTIMESTAMP() 二、关于TIMESTAMP和D
阅读全文
摘要:以前一直用RHEL 6.3和6.4,系统盘里自带了mysql server,配置好yum源后,直接yum install mysql-server就可安装mysql服务器端了,最近用CentOS 7.1,发现系统盘没有提供mysql-server的RPM包,在网上搜罗了半天,最后在mysql的官方网...
阅读全文