mysql数据库
一个瘦子的梦想
我只是想出去走走
展开
-
DQL、DML、DDL、DCL的概念与区别
SQL(Structure Query Language)语言是数据库的核心语言。 SQL的发展是从1974年开始的,其发展过程如下:1974年—–由Boyce和Chamberlin提出,当时称SEQUEL。1976年—–IBM公司的Sanjase研究所在研制RDBMS SYSTEM R时改为SQL。1979年—–Oracle公司发表第一个基于SQL的商业化RDBMS产品。1982年—–IBM公司出转载 2017-06-07 09:21:37 · 364 阅读 · 0 评论 -
高性能Mysql主从架构的复制原理及配置详解
温习《高性能MySQL》的复制篇.1 复制概述 Mysql内建的复制功能是构建大型,高性能应用程序的基础。将Mysql的数据分布到多个系统上去,这种分布的机制,是通过将Mysql的某一台主机的数据复制到其它主机(slaves)上,并重新执行一遍来实现的。复制过程中一个服务器充当主服务器,而一个或多个其它服务器充当从服务器。主服务器将更新写入二进制日志文件,并维护文件的一个索引以跟踪日志循环转载 2017-06-07 11:06:13 · 365 阅读 · 0 评论 -
谈谈Mysql之事务
事务就是一组原子性的sql查询,或者是一个独立的工作单元。它具有ACID特性: A(atomicity) 原子性。一个事务的执行被视为一个不可分割的最小单元。事务里面的操作,要么全部成功执行,要么全部失败回滚,不可以只执行其中的一部分。 C(consistency) 一致性。一个事务的执行不应该破坏数据库的完整性约束。如果上述例子中第2个操作执行后系统崩溃,保证A和B的金钱总计是不会变的。 I(is原创 2017-06-20 10:18:41 · 207 阅读 · 0 评论 -
谈谈Mysql之间隙锁
前段时间系统老是出现insert死锁,很是纠结。经过排查发现是间隙锁!间隙锁是innodb中行锁的一种, 但是这种锁锁住的却不止一行数据,他锁住的是多行,是一个数据范围。间隙锁的主要作用是为了防止出现幻读,但是它会把锁定范围扩大,有时候也会给我们带来麻烦,我们就遇到了。 在数据库参数中, 控制间隙锁的参数是:innodb_locks_unsafe_for_binlog, 这个参数默认值是OFF,转载 2017-06-20 10:53:29 · 2688 阅读 · 3 评论 -
谈谈Mysql之修改表引擎
修改表的引擎有三种办法 使用Alter语句进行修改:原创 2017-06-20 13:33:44 · 349 阅读 · 0 评论 -
谈谈Mysql之Schema和数据类型优化
选择优化的数据类型选择数据类型的原则 更小的通常更好—选择可以正确存储数据的最小数据类型 简单就好 尽量避免NULL值 数据类型 整数类型:tinyint,smallint,mediumint,int,bigint占有的存储空间分布是:8,16,24,32,64位。注意int(1)和int(20)实际是没什么区别的,只是在客户端显示数据的时候,显示数据的长度不一样,实际存储和原创 2017-06-20 15:30:18 · 281 阅读 · 0 评论 -
谈谈Mysql之索引类别
B-Tree索引 B-Tree索引的适用场景全值匹配 匹配最左前缀 匹配列前缀 匹配范围值 精确匹配某一列并范围匹配另一列 只访问索引的查询 B-Tree索引的限制场景如果不是按照索引的最左列进行查找,那么无法使用索引 不能跳过索引的列 如果查询中有某个列的范围查询,则其右边所有列都无法使用索引优化查询 哈希索引(自定义哈希索引) 哈希索引的使用场景精确匹配索引所有列的查询才有效 哈希索原创 2017-06-22 15:43:18 · 257 阅读 · 0 评论 -
mysql将逗号隔开的字符串转换为表数据
INSERT INTO tmp_split SELECT a.id, substring_index( substring_index( a.ids, ‘,’, b.help_topic_id + 1 ), ‘,’ ,- 1 ) FROM原创 2017-09-27 15:46:07 · 10296 阅读 · 1 评论