mysql
文章平均质量分 54
ningmengbaby
每个人都有属于自己的那个闪光点,重要的是绽放!
展开
-
B+tree数据结构区分主键索引、非聚集索引、覆盖索引
(covering index ,或称为索引覆盖)即从非主键索引中就能查到的记录,而不需要查询主键索引中的记录,使用覆盖索引的一个好处是辅助索引不包含整行记录信息,所以大小远远小于聚集索引,同时避免回表的产生减少了树的搜索次数,显著提升性能。我们这里建立一张学生表,其中包含字段id设置主键索引、name设置普通索引、age(无处理),并向数据库中插入4条数据:("小赵", 10)("小王", 11)("小李", 12)("小陈", 13)。在name,age联合索引树上找到名称为小李的节点。原创 2022-08-24 16:55:29 · 476 阅读 · 1 评论 -
Navicat Premium12下载安装及汉化
安装:搜索https://xclient.info/网址下载Navicat Premium12安装即可。汉化:安装TNT版主程序 下载https://www.pipipan.com/fs/13114864-217250713中文包 安装完成之后 复制汉化文件夹放到/Applications/Navicat Premium.app/Contents/Resources 汉...原创 2019-11-16 16:57:47 · 3219 阅读 · 1 评论 -
数据库导出markdown database-doc-generator
database-doc-generator数据库文档生成器,可以生成.doc .html md文档,支持Mysql、postgresql,可以使用下载zip包或者下载源码的方式。本文介绍的是通过下载源码的方式进行的。从码云上找到的下载资料https://gitee.com/enilu/database-doc-generator按照文档一步一步执行即可。找到了一个springb...原创 2019-10-26 14:49:01 · 705 阅读 · 0 评论 -
Mysql的常用配置参数
基本配置:datadir:指定mysql的数据目录位置,用于存放mysql数据库文件、日志文件等。 配置示例:datadir=D:/wamp/mysqldata/Datadefault-character-set:mysql服务器默认字符集设置。 配置示例:default-character-set=utf8skip-grant-tables:当忘记mysql用户密码的时候...原创 2019-10-10 00:31:08 · 377 阅读 · 0 评论 -
数据库三范式
数据库设计要遵循三范式规则。数据表的设计规范,一套越来越严格的规范体系(如果需要满足N范式,首先要满足N-1范式)。第一范式1NF:字段原子性字段原子性,字段不可再分割。关系型数据库,默认满足第一范式注意比较容易出错的一点,在一对多的设计中使用逗号分隔多个外键,这种方法虽然存储方便,但不利于维护和索引(比如查找带标签java的文章)第二范式:消除对主键的部分依赖...原创 2019-10-06 20:41:00 · 163 阅读 · 0 评论 -
Mysql优化
概述为什么要优化系统的吞吐量瓶颈往往出现在数据库的访问速度上 随着应用程序的运行,数据库的中的数据会越来越多,处理时间会相应变慢 数据是存放在磁盘上的,读写速度无法和内存相比如何优化设计数据库时:数据库表、字段的设计,存储引擎 利用好MySQL自身提供的功能,如索引等 横向扩展:MySQL集群、负载均衡、读写分离 SQL语句的优化字段设计尽量使用整型表示字符串,存储...原创 2019-10-06 20:33:08 · 138 阅读 · 0 评论 -
MySQL索引
建一个表CREATE TABLE `article` ( `id` int(10) unsigned NOT NULL AUTO_INCREMENT, `author_id` int(10) unsigned NOT NULL, `category_id` int(10) unsigned NOT NULL, `views` int(10) unsigned NOT NULL...原创 2019-08-22 21:30:33 · 132 阅读 · 2 评论 -
MySQL入门
目录数据库引擎索引数据结构b+treehashfull-textb+tree索引聚集索引非聚集索引b+tree索引的应用主键索引覆盖索引联合索引索引优化索引最左匹配原则锁行锁(Innodb)表锁(MyISAM)共享锁排他锁事务的四大特性原子性(Atomicity)一致性(Consistency)...原创 2019-06-02 16:53:56 · 140 阅读 · 3 评论 -
MySQL性能分析-explain
explain用来查看执行计划,使用explain关键字可以模拟优化器执行SQL查询语句,从而知道mysql是如何处理你的SQL语句,分析你的查询语句或是表结构的性能瓶颈可以获得如下信息表的读取顺序数据读取操作的操作类型哪些索引可以使用哪些索引被实际使用表之间的引用每张表有多少行被优化器查询如何使用explain + SQL语句执行计划包含的信息 idselect_t...原创 2019-06-08 10:03:39 · 316 阅读 · 1 评论 -
MySQL如何建立索引
create table if not exists `article`( id int(10) unsigned not null primary key auto_increment, author_id int(10) unsigned not null, category_id int(10) unsigned not null, views int(10)...原创 2019-06-08 10:42:08 · 4287 阅读 · 3 评论 -
MySQL关于in和exists的优化
优化原则:永远是小表驱动大表select * from A where id in(select id from B)等价于for select id from Bfor select * from A where A.id=B.id当B表的数据集必须小于A表的数据集时,用in优于exists也可以不是1,是个常量也行select * from A ...原创 2019-06-08 10:58:27 · 790 阅读 · 3 评论 -
MySQL避免索引失效
create table staffs(id int primary key auto_increment,name varchar(24) not null default ‘’ comment ‘姓名’,age int not null default 0 comment ‘年龄’,pos varchar(20) not null default ‘’ comment ‘职位’,ad...原创 2019-06-09 09:43:39 · 146 阅读 · 2 评论 -
MySQL关于order by和group by的优化
order by 关键字优化尽量使用index方式排序,避免使用filesort方式排序create table tblA( #id int primary key not null auto_increment, age int, birth TIMESTAMP not null);insert into tblA(age,birth) values(22,no...原创 2019-06-09 10:21:14 · 1043 阅读 · 2 评论 -
mysql数据库设计规范
1.数据库命名规范:(1) 数据库对象名称使用小写字母如果是有两个单词组成的,要用下划线将两个单词连接起来。(2)所有存储相同数据的列名和列类型必须一致,比如user表中的id和order表中的user_id要一致。(3)所有的字段都要有注释。2.字段设计规范这张图很清楚了,如果是double类型的,长度和小数点都为0。id默认是主键自增长。...原创 2018-11-20 19:40:53 · 188 阅读 · 3 评论