mysql
积累jiuduo
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
mysql索引(原文地址包括所有mysql的知识:http://www.cnblogs.com/lyhabc/p/3776739.html)
索引是在存储引擎中实现的,因此每种存储引擎的索引都不一定完全相同,并且每种存储引擎也不一定支持所有索引类型。根据存储引擎定义每个表的最大索引数和最大索引长度。所有存储引擎支持每个表至少16个索引,总索引长度至少为256字节。大多数存储引擎有更高的限制。MYSQL中索引的存储类型有两种:BTREE和HASH,具体和表的存储引擎相关;MYISAM和InnoDB存储引擎只支持BTREE索引;转载 2016-11-25 16:41:51 · 720 阅读 · 0 评论 -
not in 优化为join
写了好几个页面,速度都上不去,瓶颈在于SQL查询。太多的表,太多的not in,总是从一大推表和数据中筛选出一点数据。看了很多关于SQL优化的文章,都强烈要求不要太多使用not in查询,最好用表连接来取代它。如:select ID,name from Table_A where ID not in (select ID from Table_B)这句是最经典的not in查询了。转载 2017-09-25 17:56:19 · 535 阅读 · 0 评论 -
mysql中的coalesce用法
在mysql中,其实有不少方法和函数是很有用的,这次介绍一个叫coalesce的,拼写十分麻烦,但其实作用是将返回传入的参数中第一个非null的值,比如 SELECT COALESCE(NULL, NULL, 1);-- Return 1SELECT COALESCE(NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 1);转载 2017-08-03 16:04:47 · 278 阅读 · 0 评论 -
mysql索引长度的一些限制
一、myisam存储引擎1. 数据库版本:阿里云RDS MySQL5.1mysql> select @@version;+-------------------------------+| @@version |+-------------------------------+| 5.1.61-Alibaba-rds-201404-log |+-------------转载 2017-06-14 16:52:04 · 497 阅读 · 0 评论 -
mysql decimal
同事问MySQL数据类型DECIMAL(N,M)中N和M分别表示什么含义,M不用说,显然是小数点后的小数位数,但这个N究竟是小数点之前的最大位数,还是加上小数部分后的最大位数?这个还真记不清了。于是乎,创建测试表验证了一番,结果如下:测试表,seller_cost字段定义为decimal(14,2)CREATE TABLE `test_decimal` ( `id` int(11) N转载 2017-07-15 10:37:07 · 434 阅读 · 0 评论 -
mysql中计算两个日期的时间差函数TIMESTAMPDIFF
mysql中计算两个日期的时间差函数TIMESTAMPDIFF用法: 语法: TIMESTAMPDIFF(interval,datetime_expr1,datetime_expr2) 说明: 返回日期或日期时间表达式datetime_expr1 和datetime_expr2the 之间的整数差。其结果的单位由interval 参数给出。interval 的法定值同TIMESTA转载 2017-06-23 17:50:43 · 699 阅读 · 0 评论 -
mysql悲观锁
最近学习了一下数据库的悲观锁和乐观锁,根据自己的理解和网上参考资料总结如下: 悲观锁介绍(百科):悲观锁,正如其名,它指的是对数据被外界(包括本系统当前的其他事务,以及来自外部系统的事务处理)修改持保守态度,因此,在整个数据处理过程中,将数据处于锁定状态。悲观锁的实现,往往依靠数据库提供的锁机制(也只有数据库层提供的锁机制才能真正保证数据访问的排他性,否则,即使在本系统中实现了加锁机制转载 2017-05-22 13:21:50 · 235 阅读 · 0 评论 -
MySQL乐观锁
上一篇文章《MySQL悲观锁总结和实践》谈到了MySQL悲观锁,但是悲观锁并不是适用于任何场景,它也有它存在的一些不足,因为悲观锁大多数情况下依靠数据库的锁机制实现,以保证操作最大程度的独占性。如果加锁的时间过长,其他用户长时间无法访问,影响了程序的并发访问性,同时这样对数据库性能开销影响也很大,特别是对长事务而言,这样的开销往往无法承受。所以与悲观锁相对的,我们有了乐观锁,具体参见下面介绍:转载 2017-05-22 13:15:17 · 348 阅读 · 0 评论 -
mysql数据库的主从同步
今天先讲讲数据库的主从同步,两个好处: 一是读写分离可以用上。比如 写操作就写到主数据库,读就从从数据库读取 二是纯粹给数据库备份,以防硬盘彻底崩了 主从数据库操作准备:两台电脑,都安装好MySQL 5.5及以上版本,最好两台电脑都安装同一版本数据库,且能单独正常使用记住两台电脑的ip地址:以我家里电脑为例: 主数据库:192.168.0.10转载 2017-04-26 15:35:26 · 249 阅读 · 0 评论 -
连接远程服务器上的mysql会出现的问题和解决方式(账号设置等操作)
今在服务器上 有mysql 数据库,远程访问,不想公布root账户,所以,创建了demo账户,允许demo账户在任何地方都能访问mysql数据库中shandong库。方案一: 在安装mysql的机器上运行: 1: 创建user用户 复制代码 代码如下:CREATE USER demo IDENTIFIED BY “123456” 2、 复制代码 代码如下转载 2017-03-23 10:37:00 · 442 阅读 · 0 评论 -
使用客户端连接ubuntu上的mysql Can't connect to MySQL server on 'ubuntu'(10061)
在 Ubuntu 中通过 MySQL 命令行创建好一个数据表并分配了权限:GRANT ALL ON testdb.* TO usera IDENTIFIED BY 'passwd'然后重启加载权限:mysql> flush privileges之后在其他机器上远程访问该Mysql服务 mysql -h192.168.4.217 -utest -ptest转载 2017-03-23 10:23:51 · 806 阅读 · 0 评论 -
存储过程和函数的区别
本质上没区别。只是函数有如:只能返回一个变量的限制。而存储过程可以返回多个。而函数是可以嵌入在sql中使用的,可以在select中调用,而存储过程不行。执行的本质都一样。 函数限制比较多,比如不能用临时表,只能用表变量.还有一些函数都不可用等等.而存储过程的限制相对就比较少 1. 一般来说,存储过程实现的功能要复杂一点,而函数的实现的功能针对性比较强。转载 2017-03-13 10:52:04 · 340 阅读 · 0 评论 -
CentOS6.5 上安装了MySQL,
昨天花了一下午在CentOS6.5 上安装了MySQL,版本为5.7.11,下面介绍一下我安装时候出现的问题以及解决方法,供大家参考。1/清除残留rpm -qa | grep mysql // 这个命令就会查看该操作系统上是否已经安装了mysql数据库有的话,我们就通过 rpm -e 命令 或者 rpm -e --nodeps 命令来卸载掉rpm -e mysql //转载 2017-03-27 18:05:52 · 249 阅读 · 0 评论 -
Window 下mysql binlog开启及查看
查看是否开启了binlog:win+r => cmd => 连接MySQL=>show variables like 'log_%'; [sql] view plain copy mysql> show variables like 'log_%'; +---------------------------------+-------------+转载 2017-02-28 10:04:53 · 955 阅读 · 0 评论 -
mysql存储过程
创建存储过程语法CREATE PROCEDURE sp_name ([ proc_parameter ]) [ characteristics..] routine_body proc_parameter指定存储过程的参数列表,列表形式如下:[IN|OUT|INOUT] param_name type其中in表示输入参数,out表示输出参数,inout表示既可转载 2016-12-26 13:26:43 · 549 阅读 · 0 评论 -
mysql 时区-时间转换
时区(timezone)转换函数:convert_tz(dt,from_tz,to_tz)select convert_tz('2008-08-08 12:00:00', '+08:00', '+00:00'); -- 2008-08-0804:00:00SELECT CONVERT_TZ(CURDATE(), '+08:00', '+00:00')时区转换也可以通...转载 2018-05-10 16:57:23 · 3844 阅读 · 0 评论
分享