MySQL
文章平均质量分 95
MySQL内容
余 一
人类的悲欢并不相通
展开
-
【Mysql】DruidDataSource 深入理解数据库编程中的超时设置
数据库是开发过程中最常用的组件,然而我们经常会遇到各种各样的超时异常,如:> connect timeout:建立数据库连接超时> socket timeout:socket 读取超时> statement timeout:单个sql执行超时> transaction timeout:事务执行超时,一个事务中可能包含多个sql> get coconnect timeout:建立数据库连接超时socket timeout:socket 读取超时statement timeout:单个sql转载 2021-09-01 00:09:20 · 6258 阅读 · 0 评论 -
【Mysql】Mysql explain 命令
前言MySQL 提供了一个 EXPLAIN 命令, 它可以对 SELECT 语句进行分析, 并输出 SELECT 执行的详细信息。通过该命令看出 mysql 是如何执行该条 sql 的,可以通过分析索引,表结构等方面来优化你的慢查询语句。用法EXPLAIN 命令用法十分简单, 在 SELECT 语句前加上 Explain 就可以了, explain + sql 语句, 例如:EXPLAIN SELECT * FROM blog WHERE blog_id > 10;执行结果如下mysql原创 2020-07-26 18:22:06 · 2308 阅读 · 0 评论 -
【Mysql】MySql中delimiter的作用
阅读目录MySql中delimiter的作用例子先说结论MySql中delimiter的作用Mysql 中默认命令的终止符是; , 但有时候,不希望MySQL这么做,因为你输入的sql 语句可能要包含多句,句中也包含了;, 这时候就要使用delimiter换终止符啦!例子默认情况下,delimiter是分号;。在命令行客户端中,如果有一行命令以分号结束,那么回车后,mysql将会执行该命令。如输入下面的语句mysql> select * from test_table;然后回车,那么转载 2020-07-22 23:39:37 · 491 阅读 · 0 评论 -
【Mysql】mysql中insert into和replace into以及insert ignore用法区别:
mysql中常用的三种插入数据的语句:insert into表示插入数据,数据库会检查主键,如果出现重复会报错;replace into表示插入替换数据,需求表中有PrimaryKey,或者unique索引,如果数据库已经存在数据,则用新数据替换,如果没有数据效果则和insert into一样;insert ignore表示,如果中已经存在相同的记录,则忽略当前新数据;下面通过代码说明之间的区别,如下:create table testtb( id int not null primary转载 2020-07-03 23:54:30 · 304 阅读 · 0 评论 -
mysql Case函数的使用
文章目录Case函数写法简单Case函数Case搜索函数区别用法举例一、已知数据按照另外一种方式进行分组,分析二、用一个SQL语句完成不同条件的分组三、在Check中使用Case函数四、根据条件有选择的UPDATE五、两个表数据是否一致的检查六、在Case函数中使用合计函数Case函数写法Case具有两种格式, 简单Case函数和Case搜索函数。简单Case函数CASE sex ...转载 2020-03-21 14:54:32 · 1052 阅读 · 0 评论 -
mysql乐观锁总结和实践
上一篇文章《MySQL悲观锁总结和实践》谈到了MySQL悲观锁,但是悲观锁并不是适用于任何场景,它也有它存在的一些不足,因为悲观锁大多数情况下依靠数据库的锁机制实现,以保证操作最大程度的独占性。如果加锁的时间过长,其他用户长时间无法访问,影响了程序的并发访问性,同时这样对数据库性能开销影响也很大,特别是对长事务而言,这样的开销往往无法承受。所以与悲观锁相对的,我们有了乐观锁,具体参见下面介绍:乐...转载 2019-11-25 14:17:18 · 167 阅读 · 0 评论 -
数据库分库分表
数据库分库分表https://www.cnblogs.com/405845829qq/p/7552736.html原创 2019-11-14 18:12:59 · 181 阅读 · 0 评论 -
(转载)【MySQL】MVCC(多版本并发控制)
注:该篇文章已与我的个人博客同步更新。欢迎移步 https://cqh-i.github.io 体验更好的阅读效果。一、概述 MVCC(Multiversion Concurrency Control),即多版本并发控制。它使得大部分支持行锁的事务引擎,不再单纯的使用行锁来进行数据库的并发控制,取而代之的是,把数据库的行锁与行的多个版本结合起来,只需要很小的开销,就可以实现非锁定读,从而...转载 2019-09-20 20:09:49 · 129 阅读 · 0 评论 -
(转载)Innodb中的事务隔离级别和锁的关系
注:该篇文章已与我的个人博客同步更新。欢迎移步 https://cqh-i.github.io 体验更好的阅读效果。前言我们都知道事务的几种性质,数据库为了维护这些性质,尤其是一致性和隔离性,一般使用加锁这种方式。同时数据库又是个高并发的应用,同一时间会有大量的并发访问,如果加锁过度,会极大的降低并发处理能力。所以对于加锁的处理,可以说就是数据库对于事务处理的精髓所在。这里通过分析MyS...转载 2019-09-15 09:18:28 · 121 阅读 · 0 评论 -
(转载)MySQL索引原理及慢查询优化
背景MySQL凭借着出色的性能、低廉的成本、丰富的资源,已经成为绝大多数互联网公司的首选关系型数据库。虽然性能出色,但所谓“好马配好鞍”,如何能够更好的使用它,已经成为开发工程师的必修课,我们经常会从职位描述上看到诸如“精通MySQL”、“SQL语句优化”、“了解数据库原理”等要求。我们知道一般的应用系统,读写比例在10:1左右,而且插入操作和一般的更新操作很少出现性能问题,遇到最多的,也是最容...转载 2019-08-31 20:18:11 · 224 阅读 · 0 评论 -
(转载)MySQL Explain详解
简介MySQL 提供了一个 EXPLAIN 命令, 它可以对 SELECT 语句进行分析, 并输出 SELECT 执行的详细信息, 以供开发人员针对性优化.EXPLAIN 命令用法十分简单, 在 SELECT 语句前加上 Explain 就可以了, 例如:EXPLAIN SELECT * from user_info WHERE id < 300;在日常工作中,我们会有时会开慢查询...转载 2019-08-31 19:43:33 · 119 阅读 · 0 评论 -
远程访问windows上的mysql数据库
注:该篇文章已与我的个人博客同步更新。欢迎移步https://cqh-i.github.io/体验更好的阅读效果。1.授权用户远程访问打开mysql表,以root用户为例,Host默认是localhost只允许本地访问。改成指定ip或直接改成%允许所有的远程访问。2.如果还访问不了,要开放端口或关闭防火墙开放端口3306打开防火墙高级设置Windows Defender ...原创 2019-08-20 20:23:01 · 548 阅读 · 0 评论