数据库
梦想家NO1
Stay Hungry Stay Young
展开
-
mysql优化顺序
慢查询的开启并捕获Explain+慢SQL分析【进行优化】 优化80%Show profile 查询SQL在mysql服务器里面的执行细节和生命周期 优化99%SQL数据库服务器的参数调优。...原创 2020-04-19 16:49:31 · 195 阅读 · 0 评论 -
解决like '%字符串%'时索引不被使用的方法
样例如下:1.创建表create table t1(Id int not null PRIMARY key ,Name varchar(20) not NULL DEFAULT ‘’,age int not null default 0,Email varchar(20) not null DEFAULT ‘’);2.EXPLAIN优化分析:EXPLAIN select *...原创 2020-04-16 16:27:26 · 1228 阅读 · 0 评论 -
MySQL高级 之 explain执行计划详解
说明:使用explain关键字可以模拟优化器执行SQL查询语句,从而知道MySQL是如何处理你的SQL语句的,分析你的查询语句或是表结构的性能瓶颈。https://blog.csdn.net/wuseyukui/article/details/71512793https://www.jianshu.com/p/ea3fc71fdc45https://www.cnblogs.com/xuan...转载 2020-04-14 16:24:07 · 155 阅读 · 0 评论 -
Mysql存储引擎:MYiSAM和InnoDB区别
推荐大佬的对于MyISAM和InnoDB详解原创 2020-04-13 21:47:42 · 203 阅读 · 0 评论 -
Mysql执行顺序
一. SQL执行加载顺序手写顺序SELECT * FROM USER a JOIN ON role b a.user_Id = b.Role_Id WHERE a.user_Id = 1 GROUP BY a.Login_TimesHAVING a.User_Id > 2ORDER BY a.SortLIMIT 10二.机器分析读取顺序1… FROM <left_tabl...原创 2020-04-13 21:43:41 · 187 阅读 · 0 评论 -
WIN10下的Mysql8.0 解决1045问题
1.先打开一个cmd 输入 net stop mysql2.接着输入 mysqld --console --skip-grant-tables --shared-memory3.在重新打开一个cmd 依次输入 mysql -u root -p 提示输入password4.回车Enter5.show databases;6.use mysql7.update user set au...原创 2020-04-07 16:00:51 · 1672 阅读 · 1 评论 -
Mysql8.0慢查询日志
慢查询日志:Show variables like ‘%slow_query%’;– 可以用这个查询所有的变量//第一步set global log_output=‘TABLE’; – 开启慢日志,纪录到 mysql.slow_log 表set global long_query_time=0.1; – 设置超过2秒的查询为慢查询set global slow_query_log=‘O...原创 2020-03-27 11:37:01 · 3412 阅读 · 0 评论 -
MySQL迁移数据
跨库导入数据:insert into A库名.表名(a,b)select a ,b form B库名.表名脚本insert into authmanagesys.menu(CN_Menu_Name) SELECT Mobile FROM mini315.in_menber;– 同一个数据库库数据导入insert into 表名(a,b)select a ,b form 表名脚本in...原创 2020-03-27 11:29:09 · 143 阅读 · 0 评论 -
MySQL中判断字段是否是数字
SELECT *, length(Mobile) AS mm FROM menber where (Mobile REGEXP ‘[^0-9.]’) =1;判断列Mobile 不是数字的正则匹配方法原创 2020-03-26 10:37:43 · 3281 阅读 · 0 评论 -
乐观锁和悲观锁
1.悲观锁(Pessimistic Lock):(1)每次拿数据的时候都会担心会被别人修改(疑心重很悲观),所以每次在拿数据的时候都会上锁。确保自己使用的过程中不会被别人访问,自己使用完后再解锁。期间需要访问该数据的都会等待。2.乐观锁(Optimistic Lock):(1)每次拿数据的时候都完全不担心会被别人修改(心态好很乐观),所以每次在拿数据的时候都不会上锁。但是在更新数据的时候去判...原创 2020-03-18 10:32:51 · 154 阅读 · 0 评论 -
MYSQL数据库中的各种锁
转载原文总的来说,MySQL这3种锁的特性可大致归纳如下:表级锁:开销小,加锁快;不会出现死锁;锁定粒度大,发生锁冲突的概率最高,并发度最低;行级锁:开销大,加锁慢;会出现死锁;锁定粒度最小,发生锁冲突的概率最低,并发度也最高;页面锁:开销和加锁时间界于表锁和行锁之间;会出现死锁;锁定粒度界于表锁和行锁之间,并发度一般。二、表级锁定由于MyISAM存储引擎使用的锁定机制完全是由MySQ...转载 2020-03-02 16:16:59 · 351 阅读 · 0 评论 -
数据库事务
数据库事务一、什么是事务:事务指逻辑上的一组操作,组成这组操作的各个单元,要不全部执行成功,要不全部不成功。MySQL默认自带事务二、数据库事务的命令:① start transaction 开启事务② rollback 回滚事务,取消这个事务③ commit 提交事务**三、事务的四大特性(ACID):** 1、原子性(Atomicity):事务开始后所有操作,要...原创 2020-03-02 16:03:09 · 114 阅读 · 0 评论 -
mysql事件【event】
mysql事件【event】1.-- 查看事件是否开启show variables like ‘%scheduler%’;2.-- 开启事件set GLOBAL event_scheduler = on;3.-- 查看事件SHOW EVENTS;4.-- 创建事件create event if not exists test on schedule every 30 second...原创 2019-11-02 11:51:28 · 153 阅读 · 0 评论 -
count(*)、count(1)、count(column)执行效率高低比较以及区别
count(*)、count(1)、count(column)执行效率高低比较count(*)、count(1)、count(column)的区别主要区别是(1) count(1) 和count(*)会统计表中的所有的记录数,包含字段为null 的记录(2)count(字段) 会统计该字段在表中出现的次数,许罗字段为null 的情况。即不统计字段为null 的记录。执行效率在《高...原创 2019-08-24 11:49:49 · 531 阅读 · 0 评论 -
char和varchar,text的区别
char和varchar,text的区别区别1.在MySQL中,char、varchar和text类型的字段都可以用来存储字符类型的数据,char、varchar都可以指定最大的字符长度,但text不可以。2.存储方式和检索方式存储方式和数据的检索方式也都不一样。3.按照查询速度:char最快, varchar次之,text最慢。4.储存长度:具体说明:一.在新版本的mys...原创 2019-08-21 15:21:41 · 10570 阅读 · 1 评论 -
mysql中truncate(清空表)和delete(删除表)的区别
mysql中truncate(清空表)和delete(删除表)的区别清空表数据语句和删除表数据语句truncate table wp_comments;delete * from wp_comments;其中truncate操作中的table可以省略,delete操作中的*可以省略。这两者都是将wp_comments表中数据清空,不过也是有区别的,如下:truncate是整体删除(速...原创 2019-08-17 21:02:26 · 426 阅读 · 0 评论 -
为什么建表时加not null default ''/0?
为什么建表时加not null default ‘’/0?1.不好比较,NULL是一种类型,比较时只能用is not null 和is null来进行比较,碰到运算符时,一律返回null2.效率不高,影响提高索引效率。...原创 2019-09-07 17:37:48 · 8844 阅读 · 0 评论 -
mysql数据库索引
mysql数据库索引1.索引一. 什么是索引:索引是对数据库表中一列或多列的值进行排序的一种结构,使用索引可快速访问数据库表中的特定信息。2.作用是什么?索引的作用相当于图书的目录,可以根据目录中的页码快速找到所需的内容,提高性能(查询速度) 打个比方,如果合理的设计且使用索引的MySQL是一辆兰博基尼的话,那么没有设计和使用索引的MySQL就是一个人...原创 2019-07-19 21:58:39 · 458 阅读 · 1 评论 -
MySQL存储过程一次性添加多条数据
MySQL存储过程一次性添加多条数据代码块DELIMITER $$CREATE PROCEDURE add_in_Student(in i INT)BEGIN DECLARE init_data INTEGER DEFAULT 1; WHILE init_data <= i DO ...原创 2019-09-07 21:57:59 · 3105 阅读 · 2 评论 -
case when条件查询
case when条件查询代码简单的修改update class set num = (case when Id = 1 then 200when Id = 2 then 300END);简单的查询select * from class where Id = (case when num = 200 then Idend)...原创 2019-09-16 16:51:13 · 1459 阅读 · 0 评论 -
数据库三大范式
数据库三大范式三大范式第一范式:就是原子性,字段不可再分割;第二范式:就是完全依赖,没有部分依赖;【表中必须有一个主键;没有包含在主键中的列必须完全依赖于主键,而不能只依赖于主键的一部分】第三范式:就是没有传递依赖【数据不能存在传递关系,即每个属性都跟主键有直接关系而不是间接关系】比如Student表(学号,姓名,年龄,性别,所在院校,院校地址,院校电话)这样一个表结构,就存在...原创 2019-09-17 21:14:50 · 801 阅读 · 0 评论 -
varchar和Nvarchar区别
varchar和nvarchar的区别varchar和nvarchar的区别Unicode字符集就是为了解决字符集这种不兼容的问题而产生的,它所有的字符都用两个字节表示,即英文字符也是用两个字节表示详解...原创 2019-08-09 12:53:46 · 270 阅读 · 0 评论