1.1理解分时技术 随着计算器处理能力的逐步提高,计算机处理多道程序成为了可能。 所谓分时技术,就是把处理器的运行时间分成很短的时间片,按时间片轮流把处理器给各程序使用。这样在时间线上表现为线性,但是在体感上感觉是一起执行,好像每个程序都在独占计算机有一样。主要应用于个人PC与服务器。 区别与实时系统,就是在没有获得程序结果之前,只执行本程序。这种一般应用于军事实时控制,要求计算机对于外来信息能以足够快的速度进行处理,并在对被控对象允许时间范围内作出快速响应。 分时技术实时技术支持多程序是否速度
2024-11-08前言 本篇文章学习书籍:《数据库系统概论》第5版 王珊 萨师煊编著学习软件:Navicat Premium 15 && SSMS采用数据库:SQL Sever说明:虽然数据库是SQL Sever 有些书上的语句执行不了,貌似书采用的是Oracle数据库的SQL,不过没关系,初学我们最重要的是掌握其思想,很多思想和方法语句在其它数据库都是通用的,大同小异,只是有可能一些实现语句不同而已。考虑到很多小伙伴需要PPT,这里附上链接: 我的武功秘籍:,希望可以一起交流学习。还有其它学习时总结的目录笔记
2024-11-08在这之前先把Mysql卸载,记录一下卸载步骤。参考尚硅谷康师傅mysql教程98集 1.停止mysql服务 systemctl stop mysqld 2.查看mysql的rpm软件包 rpm -qa |grep -i mysql 3.删除这些查询到的软件包 yum remove mysql-community-libs.x86_64 先删libs,再删除剩下的两个。 4.删除与mysql相关的linux本地文件 先查找到这些文件 find / -name mysql 再删除对应文件 rm -r
2024-11-08前期,我已经做完了Prometheus,Grafana 1、安装mysql_exporter wget https://github.com/prometheus/mysqld_exporter/releases/download/v0.12.1/mysqld_exporter-0.12.1.linux-amd64.tar.gz tar zxf mysqld_exporter-0.12.1.linux-amd64.tar.gz -C /usr/local/ cd /usr/local/my
2024-11-08前言 在有些情况下需要用到MybatisPlus查询原生SQL,MybatisPlus其实带有运行原生SQL的方法,我这里列举三种 方法一 这也是网上流传最广的方法,但是我个人认为这个方法并不优雅,且采用${}的方式代码审计可能会无法通过,会被作为代码漏洞 public interface BaseMapper<T> extends com.baomidou.mybatisplus.core.mapper.BaseMapper<T> { @Select("${nativeSql}")
2024-11-08一、kernel配置 kernel.shmall 共享内存总页数,这个值推荐设置为物理内存大小除以分页大小。 查看分页大小:getconf PAGE_SIZE 1G内存设置大小:1 * 1024 * 1024 * 1024 / 4096 = 262144 kernel.shmmax 最大共享内存,一般为物理内存的一半。 查看当前内存:grep MemTotal /proc/meminfo MemTotal: 995676 kB (1G左右) 1MB(兆字节) = 1024KB(千字节) 1KB
2024-11-08在MySQL中,行锁和表锁是用于控制并发访问数据的两种锁定级别。行锁锁定单个数据行,而表锁锁定整个表。行锁通常用于提高并发性,但有时会升级为表锁,这通常发生在以下情况下: 需要注意,表锁通常会降低并发性,因为它会限制多个事务同时访问同一表的能力。因此,在设计数据库和应用程序时,应根据实际需求仔细选择锁的级别,并尽量避免不必要的锁升级。对于大多数应用程序,行级锁是首选,因为它提供了更好的并发性和性能。但在某些情况下,表级锁可能是必要的,例如执行表级操作或确保操作的原子性。
2024-11-08CFileDialog经常用,但经常忘,现归纳整理下,方便今后查询。 例子: CFileDialog openDlg( TRUE, "Material File(*.material)|*.material", NULL, OFN_HIDEREADONLY | OFN_OVERWRITEPROMPT, "Material File(*.material)|*.material||", this);
2024-11-08从上周起,服务器Oracle数据库出现问题,用不到半天,就会报maxsession(150)的问题,肯定是数据库的会话超过最大数了。 由于服务器跑的是文件传输应用,占用的请求和会话肯定很大,因此用户数不大就已经让oracle的会话数达到最大值。 处理方式不外乎两种:扩大oracle最大session数以及清除inactive会话,当然还有,就是从数据库连接池和程序bug上面下手。 从各处收集了一些查看当前会话的语句,记录一下: 1.select count(*) from v$sessio
2024-11-08事务原理 redo log 保持持久性: 首先原来的情况是我们做一组操作的时候,先去操作bufferpool缓冲区,如果没有,那么后台线程将数据页换入换出到缓冲区,然后我们对这个buffer pool进行修改,为脏页,在写回磁盘的时候宕机了,那么不能保证持久性了,所以引出了redolog redo log 在这里出现就是将更新的操作立马更新到redologbuffer中,然后等事务提交的时候,那么直接将redologbuffer的文件写回追加到磁盘的 log文件中,实现持久化。这样下次
2024-11-08