数据库

数据库优化方案总结

数据库优化方案总结

常用优化手段: 定位:查找定位慢查询 创建索引:创建合适的索引,我们就可以先在索引中查询,查询到以后直接找对应的记录 分库分表:当一张表的数据比较多或者一张表的某些字段的值比较多并且很少使用时,采用水平和垂直分表来优化 读写分离:当一台服务器不能满足需求时,采用读写分离的方式进行进群 缓存:使用r

Joe.Ye Joe.Ye 2023-03-12
0 0 0
使用MyCat实现MySQL读写分离

使用MyCat实现MySQL读写分离

说明 配置MyCat读写分离前需要先配置MySQL的主从复制 官方网站:http://www.mycat.org.cn/ 配置MyCat账号密码和数据库名 MyCat作为数据库的中间件,对于上层应用来说,就是一个数据库。因此需要配置数据库的用户名,密码,数据库名,以及读写权限。 下面是MyCat的

Joe.Ye Joe.Ye 2023-03-12
0 0 0
MySQL实现主从复制功能

MySQL实现主从复制功能

MySQL内建的复制功能是构建大型,高性能应用程序的基础。将MySQL的数据分布到多个系统上去,这种分布的机制,是通过将Mysql的某一台主机的数据复制到其它主机(Slave)上,并重新执行一遍来实现的。复制过程中一个服务器充当主服务器,而一个或多个其它服务器充当从服务器。主服务器将更新写入二进制日

Joe.Ye Joe.Ye 2023-03-12
0 0 0
MySQL查询数据不多,但却很慢的原因

MySQL查询数据不多,但却很慢的原因

这篇文章主要记录,造成查询数量不大的情况下,造成查询缓慢的原因,以及相应的解决方法。 环境说明: MySQL 版本 5.7.27 隔离级别:RR 锁等待造成查询速度很慢 MDL 锁 如开启如下事务: Session A Session B lock table t write;

Joe.Ye Joe.Ye 2023-03-12
0 0 0
MySQL慢查询

MySQL慢查询

概念 MySQL的慢查询,全名是慢查询日志,是MySQL提供的一种日志记录,用来记录在MySQL中响应时间超过阀值的语句。 具体环境中,运行时间超过long_query_time值的SQL语句,则会被记录到慢查询日志中。 long_query_time的默认值为10,意思是记录运行10秒以上的语句。

Joe.Ye Joe.Ye 2023-03-12
0 0 1
MySQL技巧

MySQL技巧

类型转换 SELECT CONVERT(`merchant_id`, CHAR) FROM `merchant_info` 对查询为null的值赋默认值 select ifnull(字段,0) from 表名 SELECT ifnull(SUM(r.refunded_amount), 0) as

Joe.Ye Joe.Ye 2023-03-12
0 0 1
MySQL创建表不支持事务

MySQL创建表不支持事务

需求:使用JDBC为指定数据库一次性创建多张表 博主刚开始的想法是希望一连串的建表动作就是一个事物,只要其中任何一个环节出现异常,就能引起事务回滚,结果就是创建数据库表失败。但是经过反复测试,发现创建其中一个数据库表失败并不影响创建其他数据库表成功,事务并没有发生回滚,因此怀疑创建表实际上是不支持

Joe.Ye Joe.Ye 2023-03-12
0 0 0
sql中left join,right join,inner join,full join之间的区别

sql中left join,right join,inner join,full join之间的区别

sql中的连接查询有inner join(内连接)、left join(左连接)、right join(右连接)、full join(全连接)四种方式,它们之间其实并没有太大区别,仅仅是查询出来的结果有所不同。 例如我们有两张表: users表 id name age 1 Joe.Y

Joe.Ye Joe.Ye 2023-03-12
0 0 0
Redis单体及集群支持的数据库数量

Redis单体及集群支持的数据库数量

Redis常被用作缓存、分布式锁、消息队列等的解决方案。Redis默认创建了16个数据库(db0~db15),而在Redis集群下只有一个db0数据库。 可以通过修改Redis的配置文件/redis/redis.conf中databases: 16字段的值,重启Redis即可完成配置。 Redis数

Joe.Ye Joe.Ye 2023-02-26
0 0 0
Redis 分区

Redis 分区

分区是分割数据到多个Redis实例的处理过程,因此每个实例只保存key的一个子集。 分区的优势 通过利用多台计算机内存的和值,允许我们构造更大的数据库 通过多核和多台计算机,允许我们扩展计算能力;通过多台计算机和网络适配器,允许我们扩展网络带宽 分区的不足 Redis的一些特性在分区方面表现的

Joe.Ye Joe.Ye 2023-02-26
0 0 1
Redis 管道技术

Redis 管道技术

Redis是一种基于客户端-服务端模型以及请求/响应协议的TCP服务。这意味着通常情况下一个请求会遵循以下步骤: 客户端向服务端发送一个查询请求,并监听Socket返回,通常是以阻塞模式,等待服务端响应 服务端处理命令,并将结果返回给客户端 Redis 管道技术 Redis 管道技术可以在服务

Joe.Ye Joe.Ye 2023-02-26
0 0 0
Redis 性能测试

Redis 性能测试

简介 Redis 性能测试是通过同时执行多个命令实现的。 Redis 性能测试的基本命令如下: redis-benchmark [option] [option value] 注意:该命令是在 Redis 的目录下执行的,而不是 Redis 客户端的内部指令 实例 以下实例同时执行 10000 个

Joe.Ye Joe.Ye 2023-02-26
0 0 0
MySQL类型转换CAST与CONVERT函数的用法

MySQL类型转换CAST与CONVERT函数的用法

MySQL 的CAST()和CONVERT()函数可用来获取一个类型的值,并产生另一个类型的值。两者具体的语法如下: CAST(value as type); CONVERT(value, type); 就是CAST(xxx AS 类型),CONVERT(xxx, 类型) mysql> SE

Joe.Ye Joe.Ye 2023-02-26
0 0 0
MySQL外键(FOREIGN KEY)的简单使用

MySQL外键(FOREIGN KEY)的简单使用

基本概念 1、MySQL中“键”和“索引”的定义相同,所以外键和主键一样也是索引的一种。不同的是MySQL会自动为所有表的主键进行索引,但是外键字段必须由用户进行明确的索引。用于外键关系的字段必须在所有的参照表中进行明确地索引,InnoDB不能自动地创建索引。 2、外键可以是一对一的,一个表的记录只

Joe.Ye Joe.Ye 2023-02-26
0 0 0
SQL查找是否存在,别再count了!

SQL查找是否存在,别再count了!

根据某一条件从数据库表中查询 『有』与『没有』,只有两种状态,那为什么在写SQL的时候,还要SELECT count(*)呢? 目前多数人的写法 多次REVIEW代码时,发现如现现象: 业务代码中,需要根据一个或多个条件,查询是否存在记录,不关心有多少条记录。普遍的SQL及代码写法如下 #####

Joe.Ye Joe.Ye 2023-02-26
0 0 0
1 6 7 8 9 10 11