- 博客(40)
- 收藏
- 关注
原创 Lock wait timeout exceeded; try restarting transaction
但这只是临时缓解,根本问题还是优化 SQL 和事务设计。数据库,表示事务等待获取锁的时间超过了。,需要优化事务顺序,避免循环依赖。你的场景是在哪种操作下发生的?
2025-03-27 20:48:58
406
原创 CentOS 7上安装Conda
这里使用的是Miniconda,如果需要完整的Anaconda,可以更改下载链接。安装完成后,激活Conda环境。安装脚本通常会自动将Conda路径添加到。然后安装程序会询问安装路径,默认路径通常是。运行安装脚本后会显示一些许可协议内容,按。若显示Conda版本信息,则安装成功!使用默认路径,或输入自定义路径。:如果您使用自定义路径,请将。键阅读协议,最后输入。
2024-11-01 10:21:26
1071
原创 Postgresql中和时间相关的字段类型及其适用场景
跨时区应用: 使用。本地时间应用: 使用或。纯日期(无时间): 使用DATE。持续时间或间隔: 使用INTERVAL。与具体时区相关的时间: 使用或。选择哪种时间类型取决于应用场景,是否需要时区转换,以及存储的时间是否包含日期、时间或两者兼有。
2024-10-24 17:20:33
1471
原创 Token和Refresh Token
刷新令牌提高了用户体验和安全性,允许客户端在访问令牌过期时自动续期,而不需要让用户重新登录。获取令牌需要重新进行身份验证,操作复杂且影响用户体验。刷新令牌通过分离短期的访问令牌和长期的刷新令牌,可以平衡用户体验和安全需求,同时减少服务器的负载。
2024-09-05 19:15:04
2282
原创 MySQL中的system_time_zone和time_zone的比较
是操作系统级别的时区设置,反映服务器的本地时间,不可修改。time_zone是 MySQL 中会话或全局的时区设置,控制时间数据的处理和显示,可以根据需要灵活调整。
2024-08-21 16:44:08
1646
1
原创 MySQL时间戳用BIGINT和TIMESTAMP类型的比较
存储效率TIMESTAMP占用空间较小(4 字节),但仅适用于 1970 到 2038 年的时间范围。BIGINT占用空间较大(8 字节),但可以存储更大的范围和更高精度的时间。查询效率:两者在索引上都表现良好,但TIMESTAMP自动处理时区,适合时间范围查询。BIGINT适合存储和查询不需要时区处理的时间戳。选择哪种类型取决于你的应用需求。如果需要时区支持并且时间范围在 2038 年之前,TIMESTAMP是更好的选择。如果需要处理更高精度或更大范围的时间戳,BIGINT更合适。
2024-08-21 16:15:38
1042
原创 Maven和JAVA_HOME的关系
运行依赖Maven需要Java环境来运行,所以它依赖于JAVA_HOME来定位JDK。编译和运行工具: 通过JAVA_HOMEMaven知道在哪里找到Java编译器(javac)和运行时(java),这些是编译和运行Java代码所必须的。一致性: 在配置开发环境时,确保JAVA_HOME指向正确的JDK版本对于Maven和其他Java工具的正常工作至关重要。简单来说,JAVA_HOME为Maven提供了Java环境的路径,Maven则在项目的构建和管理过程中利用这个路径来执行Java相关的任务。
2024-06-23 14:40:28
798
原创 Python发送邮件
另外,请注意在实际应用中要注意安全问题,不要将敏感信息硬编码在代码中,最好通过环境变量或者配置文件来管理,最好将上述示例代码根据业务场景封装成一个工具类。替换为你要发送邮件的收件人的地址,并确保你的 QQ 邮箱允许通过 SMTP 发送邮件(有时需要在 QQ 邮箱的设置中启用)。模块来实现发送电子邮件。模块连接到了 QQ 邮箱的 SMTP 服务器,并发送了一封简单的邮件。这里使用 的是Python 中的。在这个示例中,我们使用了。
2024-05-06 20:08:11
440
原创 Postgresql复制序列(sequence)
然后,使用查询结果中的信息在数据库 B 中重新创建序列。的序列的定义,包括所在的模式(schema)、数据类型、起始值和增量等信息。确保在数据库 B 中使用适当的起始值和增量值来与数据库 A 中的序列相匹配。
2024-04-28 18:07:59
689
原创 MySQL中的interactive_timeout和wait_timeout
参数指定了交互式连接的超时时间,即当一个客户端连接到 MySQL 服务器时,在该连接处于空闲状态并且没有发出任何查询或者交互操作时,服务器等待的时间长度。参数也是控制连接超时的一个参数,它指定了非交互式连接的超时时间。:适用于用户和数据库服务器之间有交互操作的连接,例如命令行客户端连接或者用户通过应用程序与数据库服务器进行交互的连接。:适用于没有用户交互操作的连接,例如应用程序和数据库服务器之间的连接。:可以通过以下 SQL 命令查看当前的。的值,MySQL 会自动关闭连接。:可以通过以下方式之一来设置。
2024-04-24 15:38:09
2991
原创 MySQL的ROW_NUMBER()的使用
需求:hh_data表中有date_time和value两个主要业务字段,其中date_time颗粒度为小时,现需要将按序查询出的数据每相邻4条相加的value值并匹配第1个date_time的场景。要实现上述描述的功能,在这里可以使用 MySQL 中的一些聚合函数和日期函数来计算指定时间段内每 4 个小时的数据总和,并使用第一个 datetime 来匹配这个和。替换为你想要查询的时间段的起始时间和结束时间。此外,确保在 datetime 字段上有索引,以确保查询的效率。替换为你的实际表名,并将。
2024-04-17 18:12:44
580
原创 Java希尔排序
希尔排序是一种改进的插入排序算法,也称为缩小增量排序。它通过将待排序的数组按照一定的间隔分割成若干个子序列,然后对这些子序列进行插入排序,随着排序进行,逐渐减小间隔,直至间隔为1,最后对整个数组进行一次插入排序。这样做的好处是,在初始阶段,子序列中的元素较少,插入排序的代价较小,而且数组中的元素已经基本有序,这样一来,后续的插入排序效率就会提高。
2024-01-31 21:42:32
677
1
原创 Java选择排序
选择排序是一种简单直观的排序算法,其基本思想是每一轮从待排序的元素中选择最小(或最大)的元素,将其与当前位置的元素交换。在这个例子中的步骤3中添加了判断条件,避免不必要的交换,算是进行了小小的优化。
2024-01-14 22:16:49
673
原创 Java冒泡排序
这里提供了两个版本的冒泡排序实现:普通冒泡排序和优化后的冒泡排序。在优化后的版本中,增加了一个标志位 swapped,用于判断是否发生了交换,如果没有发生交换则说明数组已经有序,可以提前退出循环,从而减少不必要的比较。冒泡排序是一种简单的排序算法,它通过比较和交换相邻元素的方式,使得列表中的元素逐渐移动到正确的位置。
2024-01-07 22:21:38
600
原创 git merge指定的文件
在执行合并之前,请确保你已经切换到目标分支。如果你只想在合并时包含特定类型的文件(例如,只合并。文件,而不是整个分支。请注意,上述命令使用了通配符。文件被包含在合并中。
2023-11-20 10:56:45
1140
原创 Java的Stream和Python的Pandas的对比
Java 中的 Stream 流和 Python 中的 Pandas 库都提供了处理数据的功能,但它们有一些关键的区别。
2023-11-18 12:47:41
850
原创 PostgreSQL设置主键从1开始自增
在 PostgreSQL 中,设置主键从1开始自增并重新开始自增是通过序列(sequence)来实现的。
2023-11-17 11:10:49
2074
原创 JAVA中时间戳和LocalDateTime的互转
时间戳转LocalDateTIme要将时间戳转换为Java的对象,你可以使用Java 8或更高版本中的java.time包。以下是将时间戳转换为的示例代码:java上述代码中,我们首先使用方法从时间戳创建了一个Instant对象,然后使用ZoneId定义了一个时区(你可以根据需要选择不同的时区),最后,我们使用atZone()方法将Instant转换为,然后使用方法将其转换为。请确保替换示例代码中的时间戳和时区以适应你的实际需求。
2023-08-25 15:31:25
5697
原创 Windows快速关闭占用某端口的进程
这个命令将列出占用端口8848的进程的信息,包括进程ID(PID)。打开命令提示符(Command Prompt)。这将强制关闭占用指定端口的进程。
2023-08-24 15:28:04
2455
原创 IDEA快速设置Services窗口
现在微服务下面会有很多SpringBoot服务,Services窗口方便我们管理各个SpringBoot服务,但有时IDEA打开项目后无法的看到Services窗口,以下步骤可以解决!
2023-08-22 15:55:35
1072
原创 浏览器和Postman能直接访问,Java代码无法访问URL
背景是需要调用谷歌地图API, 这里要开VPN的哈, 但效果是浏览器和Postman能直接正常访问,Java代码无法访问,提示“Connection timed out”。
2023-07-17 16:59:16
3258
4
原创 CentOS 7之ifconfig
1.直接ifconfig,提示找不到此命令2. yum install ifconfig, 又报错提示: Cannot find a valid baseurl for repo: base/7/x86_63. 修改网络配置文件,vi /etc/sysconfig/network-scripts/ifcfg-ens33,注意标红的位置名称可能会 不一样,我这里是 ifcfg-ens33,在最后一行把ONBOOT=no,改为ONBOOT=yes,最后重启网络 service netw...
2021-10-27 19:03:11
1345
原创 VSCode快速生成HTML
生成html模板:!(只有一个英文感叹号) 然后回车或TAB键即可格式化代码:Shift + Alt + F(Windows下)添加或取消注释:Ctrl + /生成纯标签: 单个:div, 多个:div*3, 父子:ul>li*3 ul>li*3>a, tr*3>td*4(3行4列) table>tr*3>td*4 兄弟:h1+div*3+ul>li*3 (注:若直接复制vscode没有提示,则尝试先去掉最后一个字符再补全)..
2021-10-26 17:08:44
2637
原创 Error: command ‘x86_64-linux-gnu-gcc‘ failed with exit status 1
记一次在ubuntu中python3环境下的报错' error: command 'x86_64-linux-gnu-gcc' failed with exit status 1 ',解决方案如下:sudo apt-get install python3 python-dev python3-dev \ build-essential libssl-dev libffi-dev \ libxml2-dev libxslt1-dev zlib1g-dev \ pytho
2021-04-08 16:16:22
909
原创 Celery多进程并发加锁
背景:在celery中多worker下多进程并发的情况下,对有些公共数据涉及到进程安全问题,所以需要对这些数据进行加锁操作。 在Python中threading是多线程,而mutiprocessing是多进程。我们这里多worker采用的是mutiprocessing1. 创建一个锁lock = multiprocessing.Lock()2. 获取锁lock.acquire()3. 保证redis中num对应值的安全性Redis.write("num", str(i...
2021-04-08 16:10:41
2508
2
原创 PostgreSQL导入导出CSV
需求:在代码中用pgsql命令导入海量csv数据。因为数据量大,用传统insert的方式效率太低,所以这里采用psql命令在登录下用 PostgreSQL 的 COPY 导入CSVPGPASSWORD=123456 psql -h 127.0.0.1 -p 5432 -d db_name -data -U postgres -c "\copy public.tab_name FROM './test.csv' WITH csv header delimiter ',' encoding 'UTF8';.
2021-03-23 10:29:52
4825
1
原创 No module named ‘psycopg2‘
这种情况,网上大概有如下几种方法:1. pip installpsycopg2,大部分人第一反应应该都能想到2.sudo apt-get install libpq-dev 或 yum install libpq-dev3.我这里是在docker中布署,上述操作仍然无效,最后发现是基础python镜像的原因,我这里将FROM python:3.7-alpine换成FROMpython:3.7.6就好了,再说下这两的区别,alpine镜像,简洁、小巧,基本是个空镜像。基于alpine的p...
2021-03-16 10:28:06
6674
原创 CentOS 7搭建YetiForce CRM开源系统
YetiForce CRM官网链接:https://yetiforce.com/官方安装链接:https://yetiforce.com/en/knowledge-base/documentation/implementer-documentation/item/crm-installation 准备文件 xampp-linux-x64-7.4.13-1-installer.runYetiForceCRM-6.1.0-complete.zip2.安装xamppchm...
2021-01-27 14:21:33
1201
原创 Mysql保存表情时报错SQLException: Incorrect string value: ‘\x
将字段的字符由utf8改为 utf8mb4 ,原来是这个改为如下因为MySQL原来的“utf8”只支持每个字符最多三个字节,而真正的UTF-8即后来的utf8mb4是每个字符最多四个字节,而原来的三个字节不满足表情字符的长度...
2020-12-08 16:19:03
425
原创 VSCode 清除终端
背景: 发现用vsCode写node后台服务的情况下,终端不能像idea或eclipse那样方便的清除日志信息,体验不好大概流程:先打开设置 - > keyboard Shortcuts ->搜索 "workbench.action.terminal.clear" -> 输入"Ctrl K"(可自定义) ->回车生效图示如下:...
2019-10-29 14:17:21
27021
4
原创 Java中字符串CST的时间日期转换
在工作过程中,一些业务免不了接触到了一些对时间字符串的处理,整理如下:转换诸如 “ Wed, 17 Oct 2018 20:17:40 CST”,“ Wed, 17 Oct 2018 20:17:40 BST”等字符时间样式@Testpublic void parseString2Date1()throws Exception{ //首先这种时间格式应该是美国时间的一种格式,因...
2018-10-22 11:46:11
6235
1
原创 Java中重复调用异常方法
直接上demo,首先给出一种不合理的方式,因为就有童鞋会这么做的,就是在异常的catch中继续调用本身。public class HelloWorld { public static void main(String[] args){ test(); } public static void test(){ try { ...
2018-08-17 17:24:42
4543
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人