随笔分类 -  MySQL

1 2 下一页
MySQL数据库的知识点学习
MySQL学习之SQL优化(索引优化)
摘要:一、如何选择合适的列建立索引 在where从句,group by从句,order by从句,on从句中出现的列 索引字段越小越好 离散度大的列放到联合索引的前面 explain select * from payment where staff_id=2 and customer_id=584; - 阅读全文
posted @ 2020-05-28 16:18 kosamino 阅读(823) 评论(0) 推荐(0) 编辑
MySQL学习之EXPLAIN执行计划详解及最佳实践
摘要:备注: 环境mysql5.6.38 一、EXPLAIN执行计划 使用EXPLAIN关键字可以模拟优化器执行SQL语句,从而知道MySQL是 如何处理你的SQL语句的,分析 你的查询语句或者表结构的性能瓶颈。 语法 :Explain + SQL语句 在 select 语句之前增加 explain 关键 阅读全文
posted @ 2020-05-25 23:57 kosamino 阅读(829) 评论(0) 推荐(0) 编辑
MySQL学习之Mysql锁&事务隔离级别
摘要:一、锁的定义 锁是计算机协调多个进程或线程并发访问某一资源的机制。在数据库中,除了传统的计算资源(如CPU、RAM、I/O等)的争用以外,数据也是一种供需要用户共 享的资源。如何保证数据并发访问的一致性、有效性是所有数据库必须解决的一个问题,锁冲突也是影响数据库并发访问性能的一个重要因素。从这个角度 阅读全文
posted @ 2020-05-23 19:18 kosamino 阅读(470) 评论(0) 推荐(0) 编辑
分布式事务解决方案及实现
摘要:一、事务的ACID原则 数据库事务的几个特性:原子性(Atomicity )、一致性( Consistency )、隔离性或独立性( Isolation)和持久性(Durabilily),简称就是ACID。 原子性:操作这些指令时,要么全部执行成功,要么全部不执行。只要其中一个指令执行失败,所有的指 阅读全文
posted @ 2019-10-31 07:11 kosamino 阅读(31061) 评论(0) 推荐(4) 编辑
MYSQL学习之安装、主从复制、读写分离原理解析以及详细配置(MySQL5.7)
摘要:一、Linux下mysql彻底卸载 1、查看mysql的安装情况 rpm -qa | grep -i mysql 2、删除上图安装的软件 rpm -ev mysql-community-libs-5.7.27-1.el6.x86_64 --nodeps 3、都删除成功之后,查找相关的mysql的文件 阅读全文
posted @ 2019-10-30 18:03 kosamino 阅读(1020) 评论(0) 推荐(0) 编辑
MySQL常见问题集锦及注意事项
摘要:一、表设计上的坑 1、字段设计 1.1 字段类型设计 尽量使用整型表示字符串: `INET_ATON(str)`,address to number `INET_NTOA(number)`,number to address 1.2 定长和非定长数据类型的选择 1、decimal不会损失精度,存储空 阅读全文
posted @ 2019-10-30 02:50 kosamino 阅读(492) 评论(0) 推荐(0) 编辑
MySQL学习之索引机制详解(B+树)
摘要:一、索引是什么? 索引是为了加速对表中数据行的检索而创建的一种分散存储的数据结构。而且是实现了高级查找算法的数据结构,索引一般以文件形式存储在磁盘上,索引检索需要磁盘I/O操作。 二、为什么要使用索引? 索引能极大的减少存储引擎需要扫描的数据量。 索引可以把随机IO变成顺序IO。 索引可以帮助我们在 阅读全文
posted @ 2019-10-29 19:28 kosamino 编辑
Spring事务的配置、参数详情及其原理介绍(Transactional)
摘要:Spring 事务管理分为编程式和声明式的两种方式。编程式事务指的是通过编码方式实现事务;声明式事务基于 AOP,将具体业务逻辑与事务处理解耦。声明式事务管理使业务代码逻辑不受污染, 因此在实际使用中声明式事务用的比较多。 声明式事务有两种方式,一种是在配置文件(xml)中做相关的事务规则声明,另一 阅读全文
posted @ 2019-09-10 04:05 kosamino 阅读(9537) 评论(0) 推荐(1) 编辑
MySQL间隙锁问题
摘要:间隙锁(Gap Lock):锁加在不存在的空闲空间,可以是两个索引记录之间,也可能是第一个索引记录之前或最后一个索引之后的空间。 最近用户反馈说系统老是出现insert时,等待超时了,最后发现是insert间隙锁!间隙锁是innodb中行锁的一种, 但是这种锁锁住的却不止一行数据,他锁住的是多行,是 阅读全文
posted @ 2019-09-09 02:35 kosamino 阅读(3734) 评论(0) 推荐(1) 编辑
项目中常用的19条MySQL优化
摘要:一、EXPLAIN 做MySQL优化,我们要善用 EXPLAIN 查看SQL执行计划。 下面来个简单的示例,标注(1,2,3,4,5)我们要重点关注的数据 二、SQL语句中IN包含的值不应过多 MySQL对于IN做了相应的优化,即将IN中的常量全部存储在一个数组里面,而且这个数组是排好序的。但是如果 阅读全文
posted @ 2019-08-06 09:28 kosamino 阅读(272) 评论(0) 推荐(0) 编辑
MySql 数据类型
摘要:Mysql支持的多种数据类型主要有:数值数据类型、日期/时间类型、字符串类型。 1、整数类型 2、浮点数&定点数 注:定点数以字符串形式存储,对精度要求高时使用decimal较好;尽量避免对浮点数进行减法和比较运算。 3、时间/日期类型 4、字符串类型 blob-二进制大对象,用来存储可变数量的数据 阅读全文
posted @ 2019-06-17 03:45 kosamino 阅读(266) 评论(0) 推荐(0) 编辑
MySQL时间类型及获取、展示处理
摘要:MySQL时间格式 mysql所支持的日期时间类型有:DATETIME、 TIMESTAMP、DATE、TIME、YEAR。 几种类型比较如下: DATETIME DATETIME 用于表示 年月日 时分秒,是 DATE 和 TIME 的组合,并且记录的年份(见上表)比较长久。如果实际应用中有这样的 阅读全文
posted @ 2019-06-17 03:00 kosamino 阅读(6426) 评论(0) 推荐(0) 编辑
mysql数据库导入与导出
摘要:导出 导出数据和表结构: mysqldump -u用户名 -p 数据库名 > 数据库名.sql mysqldump -uroot -p dbname > dbname .sql //之后输入密码 只导出表结构 mysqldump -u用户名 -p -d 数据库名 > 数据库名.sql //之后输入密 阅读全文
posted @ 2019-03-18 09:31 kosamino 阅读(949) 评论(0) 推荐(0) 编辑
Host 'xxx' is not allowed to connect to this MySQL server
摘要:安装了mysql,准备用工具远程登录的时候出错,提示:Host 'xxx' is not allowed to connect to this MySQL server。是mysql未开启mysql远程访问权限导致。 有这样的解决方案两个: 1.登录到mysql: mysql -uroot -ppw 阅读全文
posted @ 2018-09-21 01:24 kosamino 阅读(2030) 评论(0) 推荐(0) 编辑
Linux下Mysql安装(tar安装)
摘要:1、为数据库创建软件目录以及数据存放目录 2、上传mysql-XXXXXX.tar.gz文件到mysql软件安装目录下: mysql的tar.gz的安装包可以去官网下载:https://dev.mysql.com/downloads/mysql/。 3、更改解压缩后的文件夹名称 4、创建mysql用 阅读全文
posted @ 2018-09-21 01:13 kosamino 阅读(21829) 评论(4) 推荐(1) 编辑
Linux下Mysql安装(RPM安装)
摘要:1. 首先检查机器里是否已经存在MySQL 2. 去官网下载相应的rpm包:https://dev.mysql.com/downloads/mysql/ 3. 上传到/usr/local/mysql文件夹,进行安装mysql 按照以下顺序进行安装,因为它们之间存在依赖关系 如果不按照这样的顺序,将会 阅读全文
posted @ 2018-09-21 00:40 kosamino 阅读(832) 评论(0) 推荐(0) 编辑
Mac安装Mysql
摘要:步骤: 一、安装homebrew 二、安装mysql 三、配置自启动 四、修改mysql密码 五、创建my.cnf配置文件 一、安装homebrew homebrew是macOS缺失的软件包管理器,譬如可以下载mysql、maven等等。安装方法: 将以上命令粘贴至终端。homebrew更多详情请查 阅读全文
posted @ 2018-09-21 00:25 kosamino 阅读(827) 评论(0) 推荐(0) 编辑
Mysql在Linux的基本操作文档
摘要:总结了Mysql在Linux下的应用,以下是Linux操作系统操作MySQL常用命令小结,需要的朋友参考下: 1、Mysql服务 2、环境变量 3、数据库启动指令 4、Mysql基本信息查看 5、连接数据库 6、修改密码 7、添加新用户 (注意:和上面不同,下面的因为是MySQL环境中的命令,所以后 阅读全文
posted @ 2018-04-19 00:53 kosamino 阅读(354) 评论(0) 推荐(0) 编辑
Specified key was too long; max key length is 767 bytes
摘要:MySQL> use test; create table test(a varchar(512) primary key, b varchar(1024)); Database changed ERROR 1071 (42000): Specified key was too long; max key length is 767 bytes drop table if exists... 阅读全文
posted @ 2017-11-01 20:25 kosamino 阅读(517) 评论(0) 推荐(0) 编辑
关于MYSQL字符集问题(一)
摘要:MySQL的字符集支持(Character Set Support)有两个方面: 字符集(Character set)和排序方式(Collation)。 对于字符集的支持细化到四个层次: 服务器(server),数据库(database),数据表(table)和连接(connection)。 MyS 阅读全文
posted @ 2017-11-01 20:22 kosamino 阅读(205) 评论(0) 推荐(0) 编辑

1 2 下一页