首页
关于
壁纸
直播
留言
友链
统计
Search
1
《三国志英杰传》攻略
6,136 阅读
2
Emby客户端IOS破解
6,001 阅读
3
白嫖Emby
5,983 阅读
4
《吞食天地1》金手指代码
5,317 阅读
5
破解emby-server
4,258 阅读
moonjerx
game
age-of-empires
zx3
san-guo-zhi
尼尔:机械纪元
net
emby
learn-video
docker
torrent
photoshop
route
minio
git
ffmpeg
im
vue
gitlab
typecho
svn
alipay
nasm
srs
mail-server
tailscale
kkfileview
aria2
webdav
synology
redis
oray
chemical
mxsite
math
π
x-ui
digital-currency
server
nginx
baota
k8s
http
cloud
linux
shell
database
vpn
esxi
rancher
domain
k3s
ewomail
os
android
windows
ios
app-store
macos
develop
java
javascript
uniapp
nodejs
hbuildx
maven
android-studio
jetbrain
jenkins
css
mybatis
php
python
hardware
hard-disk
pc
RAM
software
pt
calibre
notion
office
language
literature
philosophy
travel
登录
Search
标签搜索
ubuntu
mysql
openwrt
zerotier
springboot
centos
openvpn
jdk
吞食天地2
synology
spring
idea
windows11
吞食天地1
transmission
google-play
Japanese
xcode
群晖
kiftd
MoonjerX
累计撰写
377
篇文章
累计收到
465
条评论
首页
栏目
moonjerx
game
age-of-empires
zx3
san-guo-zhi
尼尔:机械纪元
net
emby
learn-video
docker
torrent
photoshop
route
minio
git
ffmpeg
im
vue
gitlab
typecho
svn
alipay
nasm
srs
mail-server
tailscale
kkfileview
aria2
webdav
synology
redis
oray
chemical
mxsite
math
π
x-ui
digital-currency
server
nginx
baota
k8s
http
cloud
linux
shell
database
vpn
esxi
rancher
domain
k3s
ewomail
os
android
windows
ios
app-store
macos
develop
java
javascript
uniapp
nodejs
hbuildx
maven
android-studio
jetbrain
jenkins
css
mybatis
php
python
hardware
hard-disk
pc
RAM
software
pt
calibre
notion
office
language
literature
philosophy
travel
页面
关于
壁纸
直播
留言
友链
统计
搜索到
377
篇与
moonjerx
的结果
2021-08-27
小说站-维护-清理无效小说存储
1.清理指定id的小说所有内容DROP PROCEDURE IF EXISTS clear_invalid_novel; CREATE PROCEDURE clear_invalid_novel() BEGIN DECLARE bookid varchar(255) DEFAULT '1431094810327994368'; DELETE FROM book_content WHERE index_id in (SELECT id FROM book_index WHERE book_id=bookid); DELETE FROM book_content0 WHERE index_id in (SELECT id FROM book_index WHERE book_id=bookid); DELETE FROM book_content1 WHERE index_id in (SELECT id FROM book_index WHERE book_id=bookid); DELETE FROM book_content2 WHERE index_id in (SELECT id FROM book_index WHERE book_id=bookid); DELETE FROM book_content3 WHERE index_id in (SELECT id FROM book_index WHERE book_id=bookid); DELETE FROM book_content4 WHERE index_id in (SELECT id FROM book_index WHERE book_id=bookid); DELETE FROM book_content5 WHERE index_id in (SELECT id FROM book_index WHERE book_id=bookid); DELETE FROM book_content6 WHERE index_id in (SELECT id FROM book_index WHERE book_id=bookid); DELETE FROM book_content7 WHERE index_id in (SELECT id FROM book_index WHERE book_id=bookid); DELETE FROM book_content8 WHERE index_id in (SELECT id FROM book_index WHERE book_id=bookid); DELETE FROM book_content9 WHERE index_id in (SELECT id FROM book_index WHERE book_id=bookid); DELETE FROM book_index WHERE book_id=bookid; DELETE FROM book WHERE id=bookid; END; call clear_invalid_novel();2.删除无效的小说文本delete from book_content where index_id not in(SELECT id from book_index); delete from book_content0 where index_id not in(SELECT id from book_index); delete from book_content1 where index_id not in(SELECT id from book_index); delete from book_content2 where index_id not in(SELECT id from book_index); delete from book_content3 where index_id not in(SELECT id from book_index); delete from book_content4 where index_id not in(SELECT id from book_index); delete from book_content5 where index_id not in(SELECT id from book_index); delete from book_content6 where index_id not in(SELECT id from book_index); delete from book_content7 where index_id not in(SELECT id from book_index); delete from book_content8 where index_id not in(SELECT id from book_index); delete from book_content9 where index_id not in(SELECT id from book_index);3.整合表内容create table book_content_test as SELECT id, index_id,content from ( SELECT * FROM book_content0 B0 WHERE B0.index_id in (SELECT id FROM book_index WHERE book_id='1431142380391714816') union all SELECT * FROM book_content1 B1 WHERE B1.index_id in (SELECT id FROM book_index WHERE book_id='1431142380391714816') union all SELECT * FROM book_content2 B2 WHERE B2.index_id in (SELECT id FROM book_index WHERE book_id='1431142380391714816') union all SELECT * FROM book_content3 B3 WHERE B3.index_id in (SELECT id FROM book_index WHERE book_id='1431142380391714816') union all SELECT * FROM book_content4 B4 WHERE B4.index_id in (SELECT id FROM book_index WHERE book_id='1431142380391714816') union all SELECT * FROM book_content5 B5 WHERE B5.index_id in (SELECT id FROM book_index WHERE book_id='1431142380391714816') union all SELECT * FROM book_content6 B6 WHERE B6.index_id in (SELECT id FROM book_index WHERE book_id='1431142380391714816') union all SELECT * FROM book_content7 B7 WHERE B7.index_id in (SELECT id FROM book_index WHERE book_id='1431142380391714816') union all SELECT * FROM book_content8 B8 WHERE B8.index_id in (SELECT id FROM book_index WHERE book_id='1431142380391714816') union all SELECT * FROM book_content9 B9 WHERE B9.index_id in (SELECT id FROM book_index WHERE book_id='1431142380391714816') ) as T1;
2021年08月27日
143 阅读
0 评论
0 点赞
2021-08-27
mysql执行存储过程
示例1-- 创建存储过程之前需判断该存储过程是否已存在,若存在则删除 DROP PROCEDURE IF EXISTS init_reportUrl; -- 创建存储过程 CREATE PROCEDURE init_reportUrl() BEGIN -- 定义变量 DECLARE s int DEFAULT 0; DECLARE report_id varchar(255); DECLARE report_url varchar(256); -- 定义游标,并将sql结果集赋值到游标中 DECLARE report CURSOR FOR select reportId,reportUrl from patrolReportHistory; -- 声明当游标遍历完后将标志变量置成某个值 DECLARE CONTINUE HANDLER FOR NOT FOUND SET s=1; -- 打开游标 open report; -- 将游标中的值赋值给变量,注意:变量名不要和返回的列名同名,变量顺序要和sql结果列的顺序一致 fetch report into report_id,report_url; -- 当s不等于1,也就是未遍历完时,会一直循环 while s<>1 do -- 执行业务逻辑 update patrolreporthistory set reportUrl = CONCAT('patrolReport.html?monitorId=',substring(report_url,15,1),'&reportId=',report_id) where reportId=report_id; -- 将游标中的值再赋值给变量,供下次循环使用 fetch report into report_id,report_url; -- 当s等于1时表明遍历以完成,退出循环 end while; -- 关闭游标 close report; END;-- 执行存储过程 call init_reportUrl()示例2-- 创建存储过程之前需判断该存储过程是否已存在,若存在则删除 DROP PROCEDURE IF EXISTS sys_config_uniform_price; -- 创建存储过程 CREATE PROCEDURE sys_config_uniform_price() BEGIN -- 定义变量 DECLARE exe_flag int DEFAULT 0; DECLARE _company_no varchar(255); -- 定义游标,并将sql结果集赋值到游标中 DECLARE obj_config CURSOR FOR SELECT DISTINCT company_no from cms_sys_config WHERE is_sys = 0; -- 声明当游标遍历完后将标志变量置成某个值 DECLARE CONTINUE HANDLER FOR NOT FOUND SET exe_flag=1; -- 打开游标 open obj_config; -- 将游标中的值赋值给变量,注意:变量名不要和返回的列名同名,变量顺序要和sql结果列的顺序一致 fetch obj_config into _company_no; -- 当s不等于1,也就是未遍历完时,会一直循环 while exe_flag<>1 do -- 执行业务逻辑 INSERT INTO `cms_sys_config` ( `id`, `company_no`, `IS_SYS`, `is_switch`, `name`, `keyword`, `conf_value`, `available`, `create_by`, `create_date`, `update_by`, `update_date`, `remarks`, `del_flag` ) VALUES ( UUID(), _company_no, '0', '1', '是否开启出证统一价', 'is_uniform_price', '0', '0', '1', CURRENT_TIME(), '1', CURRENT_TIME(), '', '0' ); INSERT INTO `cms_sys_config` ( `id`, `company_no`, `IS_SYS`, `is_switch`, `name`, `keyword`, `conf_value`, `available`, `create_by`, `create_date`, `update_by`, `update_date`, `remarks`, `del_flag` ) VALUES ( UUID(), _company_no, '0', '1', '是否开启出证统一价', 'is_uniform_price', '0', '0', '1', CURRENT_TIME(), '1', CURRENT_TIME(), '', '0' ); -- 将游标中的值再赋值给变量,供下次循环使用 fetch obj_config into _company_no; -- 当s等于1时表明遍历以完成,退出循环 end while; -- 关闭游标 close obj_config; UPDATE cms_sys_config SET id = REPLACE(id, '-', ''); END; -- 执行存储过程 call sys_config_uniform_price()
2021年08月27日
92 阅读
0 评论
0 点赞
2021-08-27
SpringBoot读取配置文件,赋值给静态变量
SpringBoot读取配置文件,赋值给静态变量方法一:xml通过bean注入{lamp/}方法二:使用set方法注入1、配置文件2、赋值静态变量—注意set函数的写法@Component @PropertySource({"classpath:port.properties"}) public class IpPortConfig { public static String ip; public static int port; public static int reStart; @Value("${demo.ip}") public void setIp(String ip) { this.ip = ip; } @Value("${demo.port}") public void setPort(int port) { this.port = port; } @Value("${demo.reStart}") public void setReStart(int reStart) { this.reStart = reStart; } }3.属性名和set方法名不必一致方法三:通过中间变量赋值import javax.annotation.PostConstruct; import org.springframework.beans.factory.annotation.Value; import org.springframework.stereotype.Component; @Component public class Test { public static String url = "/dev/xx"; @Value("${url}") public String tempUrl = "/dev/xx"; @PostConstruct public void init() { url = tempUrl; } }{card-describe title="1.@PostConstruct说明"}被@PostConstruct修饰的方法会在服务器加载Servlet的时候运行,并且只会被服务器调用一次,类似于Serclet的inti()方法。被@PostConstruct修饰的方法会在构造函数之后,init()方法之前运行。{/card-describe}{card-describe title="2.@PreConstruct说明"}被@PreConstruct修饰的方法会在服务器卸载Servlet的时候运行,并且只会被服务器调用一次,类似于Servlet的destroy()方法。被@PreConstruct修饰的方法会在destroy()方法之后运行,在Servlet被彻底卸载之前。(详见下面的程序实践){/card-describe}
2021年08月27日
245 阅读
0 评论
0 点赞
2021-08-27
maven出现:Failed to execute goal on project ...: Could not resolve dependencies for project ...
1、我的项目结构是一个父项目,多个子项目目录如下:2、我这里就举个例子,所以应用的也就是core和domain这两个项目。3、两个项目都继承父项目4、在模块中domain依赖于core,在core中执行完clean和install之后,本地仓库也存在依赖,但是在domain中进行install就会出现Failed to execute goal on project ...: Could not resolve dependencies for project ... 这样的错误,最后发现原来是自己没有首先对父项目也就是interface-test项目进行clean和install ,5、总结、在父项目下有的子项目在首次运行clean 和install前应该先运行父项目的clean和install.直接对父项目打包,即可完成所有子项目打包
2021年08月27日
256 阅读
0 评论
0 点赞
2021-08-26
top命令详解
top命令是Linux下常用的性能分析工具,能够实时显示系统中各个进程的资源占用状况,类似于Windows的任务管理器top参数详解第一行,任务队列信息,同 uptime 命令的执行结果系统时间:07:27:05运行时间:up 1:57 min,当前登录用户: 3 user负载均衡(uptime) load average: 0.00, 0.00, 0.00 average后面的三个数分别是1分钟、5分钟、15分钟的负载情况。 load average数据是每隔5秒钟检查一次活跃的进程数,然后按特定算法计算出的数值。如果这个数除以逻辑CPU的数量,结果高于5的时候就表明系统在超负荷运转了第二行,Tasks — 任务(进程)总进程:150 total, 运行:1 running, 休眠:149 sleeping, 停止: 0 stopped, 僵尸进程: 0 zombie第三行,cpu状态信息0.0%us【user space】— 用户空间占用CPU的百分比。0.3%sy【sysctl】— 内核空间占用CPU的百分比。0.0%ni【】— 改变过优先级的进程占用CPU的百分比99.7%id【idolt】— 空闲CPU百分比0.0%wa【wait】— IO等待占用CPU的百分比0.0%hi【Hardware IRQ】— 硬中断占用CPU的百分比0.0%si【Software Interrupts】— 软中断占用CPU的百分比第四行,内存状态1003020k total, 234464k used, 777824k free, 24084k buffers【缓存的内存量】第五行,swap交换分区信息2031612k total, 536k used, 2031076k free, 505864k cached【缓冲的交换区总量】备注:可用内存=free + buffer + cached对于内存监控,在top里我们要时刻监控第五行swap交换分区的used,如果这个数值在不断的变化,说明内核在不断进行内存和swap的数据交换,这是真正的内存不够用了。第四行中使用中的内存总量(used)指的是现在系统内核控制的内存数,第四行中空闲内存总量(free)是内核还未纳入其管控范围的数量。纳入内核管理的内存不见得都在使用中,还包括过去使用过的现在可以被重复利用的内存,内核并不把这些可被重新使用的内存交还到free中去,因此在linux上free内存会越来越少,但不用为此担心。第六行,空行第七行以下:各进程(任务)的状态监控PID — 进程idUSER — 进程所有者PR — 进程优先级NI — nice值。负值表示高优先级,正值表示低优先级VIRT — 进程使用的虚拟内存总量,单位kb。VIRT=SWAP+RESRES — 进程使用的、未被换出的物理内存大小,单位kb。RES=CODE+DATASHR — 共享内存大小,单位kbS —进程状态。D=不可中断的睡眠状态 R=运行 S=睡眠 T=跟踪/停止 Z=僵尸进程%CPU — 上次更新到现在的CPU时间占用百分比%MEM — 进程使用的物理内存百分比TIME+ — 进程使用的CPU时间总计,单位1/100秒COMMAND — 进程名称(命令名/命令行)详解VIRT:virtual memory usage 虚拟内存1、进程“需要的”虚拟内存大小,包括进程使用的库、代码、数据等2、假如进程申请100m的内存,但实际只使用了10m,那么它会增长100m,而不是实际的使用量RES:resident memory usage 常驻内存1、进程当前使用的内存大小,但不包括swap out2、包含其他进程的共享3、如果申请100m的内存,实际使用10m,它只增长10m,与VIRT相反4、关于库占用内存的情况,它只统计加载的库文件所占内存大小SHR:shared memory 共享内存1、除了自身进程的共享内存,也包括其他进程的共享内存2、虽然进程只使用了几个共享库的函数,但它包含了整个共享库的大小3、计算某个进程所占的物理内存大小公式:RES – SHR4、swap out后,它将会降下来DATA1、数据占用的内存。如果top没有显示,按f键可以显示出来。2、真正的该程序要求的数据空间,是真正在运行中要使用的。top 运行中可以通过 top 的内部命令对进程的显示方式进行控制。内部命令如下:s – 改变画面更新频率l – 关闭或开启第一部分第一行 top 信息的表示t – 关闭或开启第一部分第二行 Tasks 和第三行 Cpus 信息的表示m – 关闭或开启第一部分第四行 Mem 和 第五行 Swap 信息的表示N – 以 PID 的大小的顺序排列表示进程列表P – 以 CPU 占用率大小的顺序排列进程列表M – 以内存占用率大小的顺序排列进程列表h – 显示帮助n – 设置在进程列表所显示进程的数量q – 退出 tops – 改变画面更新周期top使用方法使用格式:top [-] [d] [p] [q] [c] [C] [S] [s] [n]参数说明:d:指定每两次屏幕信息刷新之间的时间间隔。当然用户可以使用s交互命令来改变之。p:通过指定监控进程ID来仅仅监控某个进程的状态。q:该选项将使top没有任何延迟的进行刷新。如果调用程序有超级用户权限,那么top将以尽可能高的优先级运行。S:指定累计模式。s:使top命令在安全模式中运行。这将去除交互命令所带来的潜在危险。i:使top不显示任何闲置或者僵死进程。c:显示整个命令行而不只是显示命令名。常用命令说明Ctrl+L:擦除并且重写屏幕K:终止一个进程。系统将提示用户输入需要终止的进程PID,以及需要发送给该进程什么样的信号。一般的终止进程可以使用15信号;如果不能正常结束那就使用信号9强制结束该进程。默认值是信号15。在安全模式中此命令被屏蔽。i:忽略闲置和僵死进程。这是一个开关式命令。q:退出程序r:重新安排一个进程的优先级别。系统提示用户输入需要改变的进程PID以及需要设置的进程优先级值。输入一个正值将使优先级降低,反之则可以使该进程拥有更高的优先权。默认值是10。S:切换到累计模式。s:改变两次刷新之间的延迟时间。系统将提示用户输入新的时间,单位为s。如果有小数,就换算成m s。输入0值则系统将不断刷新,默认值是5 s。需要注意的是如果设置太小的时间,很可能会引起不断刷新,从而根本来不及看清显示的情况,而且系统负载也会大大增加。f或者F:从当前显示中添加或者删除项目。o或者O:改变显示项目的顺序l:切换显示平均负载和启动时间信息。m:切换显示内存信息。t:切换显示进程和CPU状态信息。c:切换显示命令名称和完整命令行。M:根据驻留内存大小进行排序。P:根据CPU使用百分比大小进行排序。T:根据时间/累计时间进行排序。W:将当前设置写入~/.toprc文件中。查看多核CPU命令mpstat -P ALL 和 sar -P ALL 说明:sar -P ALL > aaa.txt 重定向输出内容到文件 aaa.txt1 top 命令,然后按数字“1”可监控每个逻辑CPU的状况:观察上图,服务器有8个逻辑CPU,实际上是1个物理CPU。如果不按1,则在top视图里面显示的是所有cpu的平均值。2 命令:mpstat -P ALL 3 命令:sar -P ALL输出较多,可grep或者重定向至文件查看进程字段排序默认进入top时,各进程是按照CPU的占用量来排序的,在【top视图 01】中进程ID为14210的java进程排在第一(cpu占用100%),进程ID为14183的java进程排在第二(cpu占用12%)。可通过键盘指令来改变排序字段,比如想监控哪个进程占用MEM最多,我一般的使用方法如下:敲击键盘“b”(打开/关闭加亮效果),top的视图变化如下:我们发现进程id为12363的“top”进程被加亮了,top进程就是视图第二行显示的唯一的运行态(runing)的那个进程,可以通过敲击“y”键关闭或打开运行态进程的加亮效果。敲击键盘“x”(打开/关闭排序列的加亮效果),top的视图变化如下:可以看到,top默认的排序列是“%CPU”。通过”shift + >”或”shift + <”可以向右或左改变排序列,下图是按一次”shift + >”的效果图:视图现在已经按照%MEM来排序了。改变进程显示字段敲击“f”键,top进入另一个视图,在这里可以编排基本视图中的显示字段:这里列出了所有可在top基本视图中显示的进程字段,有””并且标注为大写字母的字段是可显示的,没有””并且是小写字母的字段是不显示的。如果要在基本视图中显示“CODE”和“DATA”两个字段,可以通过敲击“r”和“s”键:“回车”返回基本视图,可以看到多了“CODE”和“DATA”两个字段:Linux查看物理CPU个数、核数、逻辑CPU个数复制代码总核数 = 物理CPU个数 X 每颗物理CPU的核数总逻辑CPU数 = 物理CPU个数 X 每颗物理CPU的核数 X 超线程数查看物理CPU个数cat /proc/cpuinfo| grep "physical id"| sort| uniq| wc -l查看每个物理CPU中core的个数(即核数)cat /proc/cpuinfo| grep "cpu cores"| uniq查看逻辑CPU的个数cat /proc/cpuinfo| grep "processor"| wc -l复制代码查看CPU信息(型号)cat /proc/cpuinfo | grep name | cut -f2 -d: | uniq -c查看内 存信息cat /proc/meminfo
2021年08月26日
159 阅读
0 评论
0 点赞
1
...
64
65
66
...
76
您的IP: