数据库与缓存
数据库与缓存
杰锋
这个作者很懒,什么都没留下…
展开
-
DBeaver clickhouse 时区不对 时间少了8小时
DBeaver clickhouse 时区不对 时间少了8小时_clickhouse时区问题-CSDN博客转载 2024-04-12 09:21:06 · 171 阅读 · 0 评论 -
clickhouse大量mutations解决
遇到突然某张表慢的问题,经过排查,因clickhouse不建议频繁少量执行update操作,造成大量mutations,解决方式参考如下:clickhouse停止和避免mutations操作_clickhouse kill mutations-CSDN博客常用ClickHouse性能监控SQL汇总_clickhouse show processlist-CSDN博客转载 2024-03-20 14:53:38 · 334 阅读 · 0 评论 -
Docker安装mysql8.0
4、mysql8.0若使用SQLyog链接需改变mysql加密方式。原创 2023-03-02 22:27:38 · 278 阅读 · 0 评论 -
MySQL中IN和OR的查询效率和区别
最近遇到了一个网站卡死的问题,但是过了几分钟网站又好了,我让工作了 4 年的一个同事排查问题,他找了半天,毫无头绪。然后,我帮他找到了定时任务,其中有个 sql 查询,执行效率很慢,我建议将 or 改为 in,效率提升了几百倍。下面我们一起回顾一下这个问题。转载 2022-10-27 01:04:39 · 1585 阅读 · 0 评论 -
mysqldump数据备份
【代码】mysqldump数据备份。原创 2022-10-08 20:03:06 · 540 阅读 · 0 评论 -
Spring druid 加解密备注
输入你的数据库密码,输出的是加密后的结果。输出 privateKey、publicKey、password。1、执行命令加密数据库密码。2、需要多个加解密时。原创 2022-10-08 17:19:34 · 279 阅读 · 0 评论 -
MYSQL新建用户并授权(备注)
-- 创建用户SELECT * FROM mysql.userINSERT INTO mysql.user(HOST,USER,PASSWORD) VALUES("数据库IP地址","数据库用户名",PASSWORD("数据库密码"));FLUSH PRIVILEGES;-- 设置用户授权能力UPDATE mysql.user SET grant_priv='N' WHERE HOST='localhost';FLUSH PRIVILEGES;-- 设置远程访问权限GR.原创 2022-05-11 11:52:35 · 285 阅读 · 0 评论 -
ElasticSearch性能优化
硬件选择Elasticsearch 的基础是 Lucene,所有的索引和文档数据是存储在本地的磁盘中,具体的 路径可在 ES 的配置文件../config/elasticsearch.yml 中配置。磁盘在现代服务器上通常都是瓶颈。Elasticsearch 重度使用磁盘,你的磁盘能处理的吞吐量 越大,你的节点就越稳定。1、使用 SSD。就像其他地方提过的, 他们比机械磁盘优秀多了。2、使用 RAID 0。条带化 RAID 会提高磁盘 I/O,代价显然就是当一块硬盘故障时整个就故障了。不要 使用原创 2022-05-02 22:23:58 · 1934 阅读 · 0 评论 -
Redis缓存数据不一致和并发竞争怎么处理?
数据不一致问题描述:cache中数据与DB数据不一致业务场景:1、cache机带宽打满/网络波动,更新cache失败2、缓存rehash,节点异常,多次上下线解决方案:方案1:cache更新失败后,重试or延迟删除方案2:调短过期时间,DB重新加载,最终一致性方案3:拒绝rehash飘逸,采用缓存分层策略并发竞争问题描述:高并发访问场景,缓存miss,并发到DB查相同key业务场景:1、某车次缓存信息过期,仍有大量用户同时查询该车次信息2、某条原创 2022-04-15 22:16:30 · 774 阅读 · 0 评论 -
Redis缓存失效、穿透和雪崩问题怎么处理?
缓存失效问题描述:大量Key同时过期,cache访问miss,穿透到DB,DB压力大增,慢查率增大业务场景:1、同一批次的火车票,发布时,一次性加载到缓存,后续会同时缓存失效2、后台系统计算出热门微博,批量加载到缓存3、缓存预热,一次性加载最新N小时的数据解决方案:过期时间策略:base + random缓存穿透问题描述:查询一个不存在的key,每次访问都穿刺到DB,对DB造成压力业务场景:1、通过不存在的UID,访问不存在的用户2、通过不存在的车原创 2022-04-15 20:53:00 · 831 阅读 · 0 评论 -
MYSQL逻辑删除场景使用LEFT JION方式
由于left jion是获取左边所有信息,故遇到左表存在逻辑删除字段时,数据的查询需要先排除已经被逻辑删除的数据,deleted=0 (0为生效数据、1为已删除数据)-- 错误写法SELECT a.id,b.idFROM A a LEFT JOIN B b ON a.id=b.a_id WHERE a.deleted=0 AND b.deleted=0--正确写法SELECT a.id,b.idFROM (SELECT id FROM A WHERE deleted=0) a L原创 2022-03-17 00:05:28 · 1303 阅读 · 0 评论 -
更改MySQL数据库的编码为utf8mb4(兼容表情符颜字符)
更改MySQL数据库的编码为utf8mb4_woslx的博客-CSDN博客_mysql utf8mb4utf-8编码可能2个字节、3个字节、4个字节的字符,但是MySQL的utf8编码只支持3字节的数据,而移动端的表情数据是4个字节的字符。如果直接往采用utf-8编码的数据库中插入表情数据,java程序中将报SQL异常: java.sql.SQLException: Incorrect string value: ‘\xF0\x9F\x92\x94’ for column ‘name’ at rhttps:转载 2021-10-10 14:53:56 · 366 阅读 · 0 评论 -
Linux安装MySQL
Linux安装MySQL5.7: https://blog.csdn.net/qq_37598011/article/details/93489404启动mysql报错mysqld_safe error: log-error set to /var/log/mariadb/mariadb.log:https://blog.csdn.net/qq_34218345/article/details/106951035CentOS下以RPM方式安装MySQL5.5:htt.....原创 2021-10-01 16:47:25 · 79 阅读 · 0 评论 -
MySQL性能优化的最佳20+条经验
今天,数据库的操作越来越成为整个应用的性能瓶颈了,这点对于Web应用尤其明显。关于数据库的性能,这并不只是DBA才需要担心的事,而这更是我们程序员需要去关注的事情。当我们去设计数据库表结构,对操作数据库时(尤其是查表时的SQL语句),我们都需要注意数据操作的性能。这里,我们不会讲过多的SQL语句的优化,而只是针对MySQL这一Web应用最多的数据库。希望下面的这些优化技巧对你有用。1. 为查询缓存优化你的查询大多数的MySQL服务器都开启了查询缓存。这是提高性最有效的方法之一,而且这是被MySQ转载 2021-09-02 15:28:30 · 108 阅读 · 0 评论 -
Windows Redis 重启数据丢失解决方案,Windows重启后Redis数据丢失解决方案
1.修改配置 : redis.windows.conf 文件找到appendonly no 改为 appendonly yes找到appendfsync 设置为 appendfsync everysec2.修改完后保存退出,用cmd打开命令窗口启动redis3.输入redis-server.exe redis.windows.conf 来启动注:根据redis安装方式,上述修改文件选择zip安装:redis.windows.confmsi安装: redis.windows-s原创 2021-07-22 18:23:04 · 792 阅读 · 0 评论 -
Linux Redis 重启数据丢失解决方案,Linux重启后Redis数据丢失解决方案
在Linux系统设置一个参数(vm.overcommit_memory)即可解决。步骤如下:1、编辑 sysctl.conf 配置文件vi /etc/sysctl.conf 2、另起一行增加参数vm.overcommit_memory 配置,如下vm.overcommit_memory = 1 3、使配置文件生效sysctl -p 到这里已经结束,在Redis增加些数据,再重启Linux系统查看数据有没有丢失。...原创 2021-07-22 16:25:24 · 648 阅读 · 1 评论 -
Windows系统下安装配置redis
https://blog.csdn.net/bobiexian4166/article/details/99409226转载 2021-07-22 16:23:07 · 100 阅读 · 0 评论 -
sql优化的几种方法
1.对查询进行优化,应尽量避免全表扫描,首先应考虑在 where 及 order by 涉及的列上建立索引。 2.应尽量避免在 where 子句中对字段进行 null 值判断,否则将导致引擎放弃使用索引而进行全表扫描,如: select id from t where num is null 可以在num上设置默认值0,确保表中num列没有null值,然后这样查询: select id from t where num=0 3.应尽量避免在 where 子句中使用!=或<>操作.转载 2021-06-28 14:34:07 · 356 阅读 · 0 评论 -
Mybatis批量插入数据
由于项目需要生成多条数据,并保存到数据库当中,在程序中封装了一个List集合对象,然后需要把该集合中的实体插入到数据库中,项目使用了Spring+MyBatis,所以打算使用MyBatis批量插入,应该要比循环插入的效果更好,由于之前没用过批量插入,在网上找了一些资料后最终实现了,把详细过程贴出来。供以后查阅和学习。java代码:注意:这里循环的时候需new 出来新的对象,而不能通过循环改变属性的值就认为这是一个新的对象了,通俗的说就是new ReddemCode()要放在for循环的里面.转载 2020-10-16 13:07:48 · 209 阅读 · 0 评论 -
Oracle中如何创建使用SEQUENCES
<br />Oracle中SEQUENCES的使用<br />Oracle提供了sequence对象,由系统提供自增长的序列号,通常用于生成数据库数据记录的自增长主键或序号的地方. <br />下面介绍一下关于sequence 的生成,修改,删除等常用的操作: <br /><br />1. 创建 Sequence <br />使用如下命令新建sequence(用户需要有CREATE SEQUENCE 或者CREATE ANY SEQUENCE权限): <br />CREATE SEQUENCE test_转载 2010-08-20 18:12:00 · 1696 阅读 · 0 评论 -
Windows/Linux下MySql 不区分大小写设置问题
MySQL在Linux下数据库名、表名、列名、别名大小写规则:1、数据库名与表名是严格区分大小写2、表的别名是严格区分大小写3、列名与列的别名在所有的情况下均是忽略大小写的4、变量名也是严格区分大小写的注意:A、Linux下MySQL安装完后默认:区分表名的大小写,不区分列名的大小写B、改变表名的大小写区分规则的方法:用root帐号登录,在/etc/my.cnf 或 /转载 2014-04-16 12:44:13 · 715 阅读 · 0 评论 -
websphere下面报webapp.WebApp logError SRVE0293E 错误
1. 有修改程序情况: try-catch捕获的力度不够,错误的等级比Exception还要高,也就是说要用Throwable错误 a、有些地方要用Throwable来捕捉错误。(看具体的情况,是否引用了接口,但是又找不到实现类?) b、日志记录要全面,便于定位问题。为了避免每次都要修改代码,可以事先设置较全面的日志,上线时关闭,调试时可打开(开关放在数据库中原创 2014-03-13 18:30:52 · 9743 阅读 · 0 评论 -
ofbiz运行前台报ScreenRenderException+数据库语句问题
安装并导入ofbiz mysql数据, ant build完毕并startofbizBoth.bat, 访问 http://localhost:8080/ 报错: 解决: 该问题为ofbiz对应的数据库驱动版本问题,版本较低升级就OK: ./ofbiz\framework\entity\lib\jdbc, 如我的mysql是5.6, 我升级到 mysql-conn原创 2014-01-26 17:16:02 · 639 阅读 · 0 评论 -
MySQL-5.6.13解压版(zip版)安装配置教程
MySQL5.6.13解压版(zip版)安装配置教程 这两天洪哥刚试用了一下MySQL5.6.13,感觉还不错,有兄弟戏称是一个高富帅版本。现将MySQL5.6.13解压版(zip版)的安装配置过程记录如下,希望能给需要安装该版本的朋友一点参考作用。[下载MySQL 5.6.13]从MySQL官方网站mysql.com找到MySQL Community Server 5.6.1转载 2014-01-23 14:48:34 · 653 阅读 · 0 评论 -
oracle 连接问题
今天测试本地wcs,发现启动报错:SQL 状态:61000,错误码:20 , 使用工具连接为:The Network Adapter could not establish the connectio 其中google为: http://www.blogjava.net/xiangjava/archive/2010/06/16/323672.html原创 2014-01-09 11:33:51 · 5575 阅读 · 0 评论 -
Linux上Oracle 11g安装步骤图解
Oracle 11g下载地址:http://www.oracle.com/technetwork/database/enterprise-edition/downloads/index.html选择需要的oracle安装文件下载Oracle 11g 联机文档:http://www.oracle.com/pls/db112/homepage可以下载其PDF文档参考转载 2013-09-10 13:39:19 · 937 阅读 · 0 评论 -
从几幅架构图中偷得半点海量数据处理经验
(注:本文只是简简单单的截几幅图而已,要想更深入的学习和了解hadoop框架和mapreduce模式,或者对淘宝的数据魔方感兴趣的话,尽可参考此文:从Hadhoop框架与MapReduce模式中谈海量数据处理。) 最近对海量数据处理发生了不小的兴趣,特此从一些精彩文章中摘取几幅精彩的图片或片段,拿来给大家分享。所谓奇文共欣赏,好Architecture共品之。至于各位能从图中是窥得半点经转载 2011-12-20 16:27:32 · 705 阅读 · 0 评论 -
MongoDB 最佳实践
已经有很多关于 NoSQL 选择的文章了。影响你选择数据库的因素有:读/写操作的吞吐量,持久性,一致性,延迟性等等。Nathan Hurst 的文章“Visual Guide to NoSQL System” 很好的总结了这一点。选择合适的NoSQL数据库并不是本文要讨论的内容,但是请你在使用NoSQL前做一些调查。没有一个数据库可以适合所有情况。这篇文章假设你选择了MongoDB。转载 2012-09-06 01:37:11 · 344 阅读 · 0 评论 -
ofbiz数据库表结构设计
ofbiz数据库表结构设计(1)- PARTYofbiz数据库表结构设计(2)- CONTACT_MECHofbiz数据库表结构设计(3)- 订单ORDERofbiz数据库表结构设计(4)- 订单支付ORDER_PAYMENT_PREFERENCEofbiz数据库表结构设计(5)- 库存INVENTORY转载 2014-04-16 11:38:27 · 1591 阅读 · 0 评论 -
CentOS下以RPM方式安装MySQL5.5
首先去mySQL官网下载页面:http://dev.mysql.com/downloads/mysql/#downloads Select Platform 选择 Oracle & Red Hat Linux 4 & 5分别下载以下三个文件(由于我的机器是32位,下面是32位版本的包,如果你的机器是64位的请下载64位版本):1. Red Hat & Oracle转载 2014-04-02 13:27:00 · 589 阅读 · 0 评论 -
两种解决异常:“The last packet sent successfully to the server was 0 milliseconds ago. ”的办法
出现异常”The last packet sent successfully to the server was 0 milliseconds ago.“的大部分原因是由于数据库回收了连接,而系统的缓冲池不知道,继续使用被回收的连接所致的。 以mysql为例: 第一种解决办法,就是将mysql回收空闲连接的时间变长,mysql默认回...转载 2019-02-20 18:00:21 · 82729 阅读 · 5 评论 -
MySQL远程访问:错误码1130解决方案
错误描述: 错误代码:1130 Host ***.***.***.*** is not allowed to connect to this MySQL server解决方法:① 改表法:可能是你的帐号不允许从远程登陆,只能在localhost。这个时候只要在localhost的那台电脑,登入mysql后转载 2015-11-03 14:41:29 · 4789 阅读 · 2 评论 -
impossible to write to binary log since statement is in row format and BINLOG_FORMAT = STATEMENT
MySQL复制错误]Last_Errno: 1666 Last_Error: Error executing row event: 'Cannot execute statement: imposs收到email报警, Last_Error: Error executing row event: 'Cannot execute statement: impossible to write to转载 2014-07-30 11:45:11 · 3282 阅读 · 0 评论 -
mysqladmin: Can't turn off logging; error: 'Access denied; you need the SUPER privilege for this op
问题:在centOS上安装了mysql后,卸载了又重新安装,使用mysqladmin -u root password 'new password'更改密码,提示: mysqladmin: Can't turn off logging; error: 'Access denied; you need the SUPER privilege for this operation'"转载 2014-07-30 14:32:17 · 9679 阅读 · 1 评论 -
MYSQL5.5修改字符集报错:unknown variable 'default-character-set=utf8'
Linux上安装了Mysq 5.5,在配置文件/etc/my.cnf中设置字符集:default-character-set=utf8结果启动失败,查看日志,里面有如下错误:[ERROR] /usr/sbin/mysqld: unknown variable 'default-character-set=utf8'用mysql连接数据库服务,用show variables原创 2014-07-30 12:07:50 · 2308 阅读 · 0 评论 -
centos 自带mysql卸载时出现无法卸载情况
[dianyi@localhost ~]$ rpm -qa|grep mysqlmysql-libs-5.1.52-1.el6_0.1.x86_64[dianyi@localhost ~]$ rpm -e mysql-libs-5.1.52-1.el6_0.1.x86_64error: Failed dependencies: libmysqlclient.so.16转载 2014-07-30 14:49:38 · 499 阅读 · 0 评论 -
Oracle密码过期, 报:ORA-01017: 用户名/口令无效; 登录被拒绝
连接Oracle,以Oracle用户登陆:原创 2014-05-13 11:23:11 · 13661 阅读 · 0 评论 -
java 默认事务级别read committed对binlog_format的需求
java.sql.SQLException: Cannot execute statement: impossible to write to binary log since BINLOG_FORMAT = STATEMENT and at least one table uses a storage engine limited to row-based logging. InnoDB is转载 2014-04-08 17:58:48 · 851 阅读 · 0 评论 -
NoSQL 数据建模技术
顶3 踩本文由 酷壳coolshell 译自墙外文章“NoSQL Data Modeling Techniques”。这篇文章看完之后,你可能会对NoSQL的数据结构会有些感觉。我的感觉是,关系型数据库想把一致性,完整性,索引,CRUD都干 好,NoSQL只干某一种事,但是牺牲了很多别的东西。总体来说,我觉得NoSQL更适合做Cache。下面是正文——NoSQL转载 2012-05-23 00:47:52 · 669 阅读 · 0 评论 -
忘记 MySQL 的 root 帐号密码该怎么办
如果你忘了 MySQL 的 root 帐号密码,别担心,使用下面步骤就可以重设一个新密码:首先停止 MySQL 服务 “/etc/init.d/mysql stop”启动 MySQL 服务并屏蔽用户权限检查,可通过如下命令:mysqld_safe --skip-grant-tables 记住,当你使用这个参数启动服务时,任何人无需密码即可连接到 MySQL 并拥有最高权限,因此你需转载 2012-05-29 00:10:56 · 320 阅读 · 0 评论