![](https://img-blog.csdnimg.cn/20201014180756922.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
mysql
guicaizhou
这个作者很懒,什么都没留下…
展开
-
MySQL分库分表的技巧
分表是分散数据库压力的好方法。 分表,最直白的意思,就是将一个表结构分为多个表,然后,可以再同一个库里,也可以放到不同的库。 当然,首先要知道什么情况下,才需要分表。个人觉得单表记录条数达到百万到千万级别时就要使用分表了。 分表的分类: 1.纵向分表 将本来可以在同一个表的内容,人为划分为多个表。(所谓的本来,是指按照关系型数据库的第三范式要求,是应该在同一个表的。) 分转载 2016-05-04 10:31:35 · 449 阅读 · 0 评论 -
对于spring中的org.apache.commons.dbcp.BasicDataSource的配置
对于spring中的org.apache.commons.dbcp.BasicDataSource的配置 mysql> show global variables like 'wait_timeout'; +---------------+-------+ | Variable_name | Value | +---------------+-------+ | wai转载 2018-01-29 20:49:25 · 451 阅读 · 0 评论 -
MySQL函数GROUP_CONCAT
该函数返回带有来自一个组的连接的非NULL值的字符串结果。该函数是一个增强的Sybase SQL Anywhere支持的基本LIST()函数。语法结构: GROUP_CONCAT([DISTINCT] expr [,expr ...] [ORDER BY {unsigned_integer | col_name | expr} [ASC | DESC] [,col_name ...]] [SEPA转载 2018-01-18 11:00:50 · 263 阅读 · 0 评论 -
mysql 中的FIND_IN_SET函数
Mysql中的FIND_IN_SET函数在我知道它之前,我在做一个一对多的外键查询时,都会在中间设计一个关系表。比如一篇文章(post)对应多个标签(tag),我就会在中间设计一个关系表(post_tag_mapping)来记录文章和标签的对应关系,然后查询某一个标签下的文章时,就用JOIN语句来实现了,这也应该是处理一对多关系查询时的标准做法。一般语句就像下面 SELECT * FROM po原创 2018-01-16 10:51:56 · 365 阅读 · 0 评论 -
【MySQL锁之】InnoDB存储引擎及其锁机制
首先要解决的一个误区就是:InnoDB存储引擎是基于事务的。而前面博文所讲的MyISAM存储引擎是不支持事务的。那么什么是基于事务的呢?复制过来一段我觉得讲得还不错的话: “ 在默认的情况下,MySQL从自动提交(autocommit)模式运行,这种模式会在每条语句执行完毕后把它作出的修改立刻提交给数据库并使之永久化。事实上,这相当于把每一条语句都隐含地当做一个事务来执行。如果你想明确转载 2017-09-07 11:32:29 · 219 阅读 · 0 评论 -
MySql基础总结(一)
1、创建一个表 [sql] view plain copy CREATE TABLE customers ( cust_id INT NOT NULL AUTO_INCREMENT, cust_name CHAR(50) NOT NULL , cust_address CHAR(5转载 2017-09-06 11:21:56 · 241 阅读 · 0 评论 -
mysql explain执行计划详解(查看索引执行)
1)、id列数字越大越先执行,如果说数字一样大,那么就从上往下依次执行,id列为null的就表是这是一个结果集,不需要使用它来进行查询。 2)、select_type列常见的有: A:simple:表示不需要union操作或者不包含子查询的简单select查询。有连接查询时,外层的查询为simple,且只有一个 B:primary:一个需要union操作或者含有子查询的转载 2017-09-06 10:07:19 · 1532 阅读 · 0 评论 -
mysql主从复制实现数据库同步
mysql主从复制相信已经用得很多了,但是由于工作原因一直没怎么用过。趁着这段时间相对空闲,也就自己实现一遍。尽管互联网上已有大把类似的文章,但是自身实现的仍然值得记录。 环境: 主服务器:centos 6.0 mysql 5.1.67-log IP:192.168.0.107 从服务器:centos 6.0 mysql 5.1.67-log IP:192.168.0.109 主服转载 2017-09-05 11:38:16 · 266 阅读 · 0 评论 -
MySQL高性能表设计规范
良好的逻辑设计和物理设计是高性能的基石, 应该根据系统将要执行的查询语句来设计schema, 这往往需要权衡各种因素。 一、选择优化的数据类型 MySQL支持的数据类型非常多, 选择正确的数据类型对于获得高性能至关重要。 更小的通常更好 更小的数据类型通常更快, 因为它们占用更少的磁盘、 内存和CPU缓存, 并且处理时需要的CPU周期也更少。 简单就好 简单数据类型的操作通常需要更少的转载 2017-09-05 09:53:04 · 280 阅读 · 0 评论 -
Mysql写出高质量的sql语句的几点建议
在实际的工作也写过一些低效率的sql语句。这些语句会给数据库带来很大的压力,最主要的表现就是sql语句运行慢,后来逐渐的去优化和尝试。总结了一些高质量的sql语句的写法。这里总结一下分享给大家。 1 建议一:尽量避免在列上运算 尽量避免在列上运算,这样会导致索引失效。 1.1 日期运算 优化前: ? 1 select转载 2016-12-30 13:42:20 · 1064 阅读 · 0 评论 -
Mysql 事务的四种隔离级别介绍
1、未提交读(READ UNCOMMITTED) 事务中的修改,即使没有提交,对于其他事务来说也是可见的。也就是说事务可以读取未提交的数据,也就是脏读(Dirty Read). 这是最低的隔离级别,实际的应用中一般不用这种隔离级别。 下面来模拟看下效果: Session 1 : mysql> show variables like '%isolation%'; 【1】 +----...转载 2018-11-28 11:25:23 · 224 阅读 · 0 评论