MySQL
文章平均质量分 76
MySQL
bcbziz
这个作者很懒,什么都没留下…
展开
-
Linux下修改Mysql的用户(root)密码,查看、修改默认端口的方法
目录Linux下修改Mysql的用户(root)密码拥有原来的mysql的root的密码在mysql系统外,使用mysqladmin通过登录mysql系统忘记原来的mysql的root的密码查看MySQL的默认端口查看默认端口号mysql端口号的修改Linux下修改Mysql的用户(root)密码拥有原来的mysql的root的密码在mysql系统外,使用mysqladminmysqladmin -u root -p password "新的密码“;Enter password:【输入原来的密码】转载 2021-08-08 17:18:31 · 415 阅读 · 0 评论 -
mysql高级---mysql存储引擎、性能下降原因、7种join图解
目录Mysql逻辑架构Mysql存储引擎查看mysql现在已提供什么存储引擎查看mysql当前默认的存储引擎sql性能下降的原因常见通用的7种join查询SQL的执行顺序手写顺序机读顺序Join图解左连接left右连接right内连接inner全外连接Full outerMysql逻辑架构总体概览最上面一层是客户端的连接服务,主要完成客户端的连接处理,授权认证。在该层有一个线程池,每一个连接从线程池中获取线程,省去了创建和销毁线程的开销。中间这一层可以完成查询解析,分析,优化,缓存。存储过程,触发原创 2021-08-08 17:08:45 · 184 阅读 · 0 评论 -
mysql高级---mysql锁机制
mysql锁机制mysql锁机制分类根据数据操作类型分类根据数据操作的粒度分类表锁(偏读)手动加表锁查看表上加过的锁释放表锁为表加读锁为表加写锁总结分析表的锁定行锁行锁支持事务对同一行进行修改会发生阻塞对不同行进行修改,不会阻塞间隙锁危害如何锁定一行分析行锁优化页锁mysql锁机制锁是计算机协调多个进程或线程并发访问某一资源的机制。分类根据数据操作类型分类读锁(共享锁)针对同一份数据,多个读操作可以同时进行而不会互相影响写锁(排他锁)当前写操作没有完成前,会阻断其他写锁和读锁根原创 2021-08-08 16:49:40 · 81 阅读 · 0 评论 -
mysql高级---查询截取分析、慢查询日志、show profiles
查询截取分析一级目录二级目录三级目录一级目录二级目录三级目录查询截取分析1慢查询的开启并捕获2explain和慢sql分析3show profile 查询sql在mysql服务器里面的执行细节和生命周期情况。4sql数据库服务器的参数调优慢查询日志介绍Mysql提供的一种日志记录,用来记录mysql中响应时间超过阈值的语句,具体指运行时间超过Long_query_time值的sql语句,会被记录到慢查询日志中。Long_query_time默认为10s。借此观察哪些语句超出了忍耐值。原创 2021-08-08 15:55:47 · 142 阅读 · 0 评论 -
mysql高级---索引优化
索引优化索引分析单表优化两表优化三表优化join语句的优化总结避免索引失效索引分析单表优化查询author_id为1且comments>1,view最多的category_id#查询author_id为1且comments>1,view最多的category_idexplain select id,category_id from bookss where author_id =1 and comments >1 order by views limit 1;原创 2021-08-07 19:42:02 · 100 阅读 · 0 评论 -
mysql高级---explain的使用
explain的使用性能分析Mysql query optimizerMysql常见瓶颈查看执行计划Explain介绍语法各字段解释性能分析Mysql query optimizermysql中有专门复制优化select语句的优化模块。主要功能是同各国计算分析系统中收集到的统计信息,为客户端请求的query提供它认为最优的执行计划。Mysql常见瓶颈Cpu:cpu在饱和的时候一般发生在数据装入内存或从磁盘上读取数据的时候IO:磁盘IO瓶颈发生在装入数据远大于内存容量的时候服务器硬件的性能瓶颈原创 2021-08-07 15:43:43 · 115 阅读 · 0 评论 -
mysql高级---索引
索引索引优点缺点索引的分类索引的结构创建索引方法一 create方法二 alter add修改索引为字段添加主键修改索引为唯一索引添加普通索引指定索引为fulltext删除索引查看索引创建索引的情况不适合创建索引的情况索引索引是帮助mysql高效获取数据的数据结构。索引本质是一种数据结构。数据本身之外,数据库还维护着满足特定查找算法的数据结构,这些数据结构以某种方式引用数据,这样就可以在这些数据结构上实现高级查找算法,这种数据结构就是索引。目的在于提高查询效率,可以类比字典。影响到查找和order原创 2021-08-07 09:49:26 · 72 阅读 · 0 评论 -
MySQL基础复习与整理---TCL事务控制语言---变量、存储过程、函数
变量、存储过程、函数变量分类使用查看所有系统变量查看部分变量查看指定变量为某个系统变量赋值方式1 =方式2 @@ .自定义变量步骤用户变量声明赋值方式1 set select方式2 select into使用局部变量声明赋值使用存储过程优点创建参数列表调用变量分类系统变量变量由系统提供,不是用户定义,属于服务器层面全局变量 global服务器每次启动将为所有全局变量赋初值,针对于所有会话,不能跨重启会话变量 session不写默认为session使用查看所有系统变量SH原创 2021-08-07 09:25:02 · 67 阅读 · 0 评论 -
MySQL基础复习与整理---TCL事务控制语言---视图
视图视图应用场景优点创建视图使用视图修改视图方式1 replace方式2 alter删除视图更新视图不能更新的视图视图和表的对比视图虚拟表,数据来自定义视图的查询中使用的表,视图只保存sql逻辑,不保存查询结果。应用场景多个地方用到同样的查询结果查询结果使用的sql语句较为复杂优点重用sql语句简化复杂的sql操作,不必知道它的细节保护数据,提高安全性创建视图Create view视图名Assql语句;CREATE VIEW v2ASSELECT g.`name`原创 2021-08-06 19:18:42 · 58 阅读 · 0 评论 -
MySQL基础复习与整理---TCL事务控制语言---事务
事务事务ACID属性创建事务语法回滚点Savepoint使用Delete 和 truncate 在回滚时的区别事务并发问题事务的隔离级别事务事务由单独单元的一个或多个sql语句组成,在此单元中,每个mysql语句是相互依赖的。如果单元中某条语句一旦执行失败或产生错误,整个单元回滚。受影响数据返回到事务开始之前的状态。如果单元中所有sql语句执行成功,事务顺利执行。ACID属性原子性事务是一个不可分割的工作单位,事务中的操作要么都发生要么都不发生。一致性事务必须使数据库从一个一致性状态原创 2021-08-06 19:02:31 · 70 阅读 · 0 评论 -
MySQL基础复习与整理---DDL数据定义语言---约束的管理、标识列
约束的管理、标识列约束的管理常见的约束分类外键特点约束的添加分类添加约束的时机创建表时添加列级约束添加表级约束修改表时添加列级约束添加表级约束删除约束标识列特点约束的管理常见的约束一种限制,用于限制表中的数据,为了保证表中的数据的准确和可靠性分类Not null:非空,用于保证该字段的值不能为空Default:默认,保证该字段有默认值Primary key:主键,用于保证该字段的值具有唯一性,非空Unique:唯一,用于保证该字段的值具有唯一性,可以为空Check:检查约束(mysql不原创 2021-08-06 17:08:19 · 60 阅读 · 0 评论 -
MySQL基础复习与整理---DDL数据定义语言---常见的数据类型
常见的数据类型数值型整数小数字符型较短的文本二进制文本较长的文本枚举类型enum类型set类型日期型datetime和timestamp的区别数值型整数Tinyint(1字节),smallint(2),mediumint(3),int/integer(4),bigint(8)特点如果不设置无符号有符号默认有符号,如果想设置无符号,需要添加unsigned关键字。如果插入的数值超出了整型的返回,会报out of range 异常,并插入临界值。如果不设置长度,会默认长度。长度代表了显示的最大宽原创 2021-08-06 16:34:22 · 61 阅读 · 0 评论 -
MySQL基础复习与整理---DDL数据定义语言---库和表的增删改查
库和表的增删改查库的管理创建 create修改重命名rename修改库的字符集删除 drop表的管理创建修改修改列名修改列的类型或约束添加新列删除列修改表名删除复制只复制表结构复制结构和数据只复制部分数据库的管理创建 create语法Create database 库名;创建库books,加if not exists确保没有重复的库Create database if not exists books;修改重命名rename语法Rename database 旧库名 to 新库名;原创 2021-08-06 15:57:46 · 77 阅读 · 0 评论 -
MySQL基础复习与整理---DML数据操作语言---数据的增删改查
数据的增删改查插入语句insert方式一 values特点方式二 setvalues和set的区别修改语句update修改单表的记录修改多表的记录删除方式一 Delete单表的删除多表的删除方式二Truncatedelete和truncate的区别插入语句insert方式一 values语法Insert into 表名(列名,.....) values (值,........);特点插入的值的类型要与列的类型一致或兼容Insert into beauty (id,sex,phone)V原创 2021-08-06 15:33:18 · 96 阅读 · 0 评论 -
MySQL基础复习与整理---DQL数据查询语言---分页查询、联合查询
分页查询、联合查询分页查询联合查询分页查询应用场景:一页显示不全,需要分页提交sql请求语法SELECT 查询列表 from 表 JOIN... ON WHERE... GROUP BY... HAVING ... ORDER BY ... LIMIT OFFSET,size; OFFSET:要显示条目的起始索引(从0开始)size:要显示的条目个数特点:LIMIT在查询语句最后公式:LIMIT (page-1)*size,sizepage 要显示的页数size原创 2021-07-07 22:40:24 · 57 阅读 · 0 评论 -
MySQL基础复习与整理---DQL数据查询语言---子查询
子查询按结果集的行列数不同按子查询出现的位置SELECT 后面FROM 后面WHERE/HAVING后面标量子查询多行子查询EXISTS后面执行顺序子查询,查询出现在其他语句中的select语句外部的查询语句,称为主查询,外查询按结果集的行列数不同标量子查询(结果集一行一列)列子查询(结果集一列多行)行子查询(结果集一行多列)表子查询(结果集一般为多行多列)按子查询出现的位置SELECT 后面:只支持标量子查询FROM 后面:支持表子查询WHERE/HAVING后面:标量子查原创 2021-07-07 22:31:12 · 54 阅读 · 0 评论 -
MySQL基础复习与整理---DQL数据查询语言---连接查询
连接查询、子查询连接查询分类按年代分类按功能分类sql92标准等值连接非等值连接自连接sql99标准语法连接类型内连接等值连接非等值连接自连接外连接交叉连接连接查询连接查询,多表查询,查询字段涉及多个表。没有有效连接条件就会产生笛卡尔乘积现象。笛卡尔乘积现象:表1有m行,表2有n行,结果m*n行分类按年代分类sql92标准:仅支持内连接sql99标准:推荐,不支持全外连接按功能分类内连接等值连接非等值连接自连接外连接左外连接右外连接全外连接交叉连接sql原创 2021-07-07 22:10:22 · 68 阅读 · 0 评论 -
MySQL基础复习与整理---DQL数据查询语言---排序查询、分组查询
排序查询、分组查询排序查询order by语法使用分组查询group by分组前筛选where语法分组后筛选having语法排序查询order by语法select 查找列表、字段、常量、函数、表达式 from 表名 where 筛选条件ORDER BY 排序列表 asc/desc;asc升序desc降序不写默认升序使用支持表达式排序SELECT title,length/2 FROM film WHERE rating IN ('G') ORDER BY length/2 d原创 2021-07-05 22:21:17 · 58 阅读 · 0 评论 -
MySQL基础复习与整理---DQL数据查询语言---基础查询、条件查询
基础查询语法别名优点用法去除重复数据加号+运算符连接多个字段判断是否为NULL语法select 查找列表、字段、常量、函数、表达式 from 表名;查询出来的是一个虚拟的表格查询单个字段SELECT first_name FROM actor;查询多个字段SELECT address,district FROM address;查询全部数据SELECT * FROM actor;查询常量值SELECT 200;SELECT 'NICK';查询表达式S原创 2021-07-05 21:52:28 · 70 阅读 · 0 评论 -
MySQL基础复习与整理---MySQL服务的配置与使用、函数
MySQL服务的配置与使用MySQL服务的启动和停止配置环境变量MySQL服务的登入与登出登入登出MySQL的语法规范MySQL的常用指令显示所有数据库进入数据库显示当前数据库中所有表显示指定数据库的表显示当前在哪个数据库创建表查看表结构向表中插入值查看数据库版本在mysql中在命令行中1在命令行中2MySQL服务的启动和停止方法1:计算机–管理–服务方法2:通过管理员身份运行命令行:net start/stop MySQL57配置环境变量如果提示不是命令,配置环境变量找到bin目录的位置C:\原创 2021-07-05 21:39:33 · 147 阅读 · 0 评论