管理口令安全和资源(二)
DBMS_METADATA
DBMS_METADATA
是 Oracle 数据库中的一个包,它提供了用于管理数据库元数据的工具和过程。元数据是关于数据的数据,它描述了数据库的结构,包括表、视图、索引、存储过程、用户和其他数据库对象的信息。DBMS_METADATA
包允许用户获取、修改和重建数据库对象的元数据。
DBMS_METADATA
包在 Oracle 9i Release 2(9.2.0.1)中首次引入,并在后续的 Oracle 数据库版本中得到增强和更新。以下是一些 DBMS_METADATA
包的主要功能和用途:
- 获取元数据:可以获取数据库中各种对象的DDL(数据定义语言)语句,例如表、索引、视图、触发器等。
- 修改元数据:可以对获取到的DDL语句进行修改,然后重新应用到数据库中。
- 重建对象:可以使用修改后的DDL语句来重建数据库对象。
- 版本控制:
DBMS_METADATA
包可以处理不同版本的DDL语句,使得在不同数据库版本之间迁移对象变得更加容易。 - 导出和导入:可以用来导出对象的元数据,并在其他数据库中导入这些元数据。
以下是一些使用DBMS_METADATA
包的基本示例:
-- 获取特定表的DDL
DECLAREddl_text CLOB;
BEGINddl_text := DBMS_METADATA.GET_DDL('TABLE', 'MY_TABLE', 'MY_SCHEMA');DBMS_OUTPUT.PUT_LINE(ddl_text);
END;
/
-- 修改并重新创建对象
DECLAREddl_text CLOB;new_ddl_text CLOB;
BEGINddl_text := DBMS_METADATA.GET_DDL('TABLE', 'MY_TABLE', 'MY_SCHEMA');-- 对ddl_text进行必要的修改new_ddl_text := ddl_text; -- 假设这里已经进行了修改DBMS_METADATA.SET_TRANSFORM_PARAM(DBMS_METADATA.SESSION_TRANSFORM, 'PRETTY', TRUE);DBMS_METADATA.APPLY_TRANSFORM(new_ddl_text);-- 执行新的DDL语句来重建对象EXECUTE IMMEDIATE new_ddl_text;
END;
/
在使用 DBMS_METADATA
包时,需要注意以下几点:
- 权限:用户需要具有相应的权限才能访问和修改数据库对象的元数据。
- 版本兼容性:不同版本的 Oracle 数据库中,
DBMS_METADATA
包的行为可能会有所不同,因此在跨版本使用时需要注意兼容性问题。 - 性能影响:操作大量元数据可能会对数据库性能产生影响,因此应谨慎使用。
配置文件(Profile)
在 Oracle 数据库中,配置文件(Profile)是一组资源限制和密码参数,用于管理数据库用户会话使用的资源限制和密码策略。以下是如何使用 DROP PROFILE
命令来删除配置文件的说明:
- 删除配置文件:
要删除一个配置文件,可以使用DROP PROFILE
命令。但是,如果配置文件正在被一个或多个用户使用,那么你必须首先确保没有用户正在使用该配置文件,或者你可以使用CASCADE
选项来同时从所有使用该配置文件的用户中撤销它。
这个命令将尝试删除名为DROP PROFILE developer_prof;
developer_prof
的配置文件。如果没有任何用户使用这个配置文件,那么它将被成功删除。 - 使用 CASCADE 选项:
如果你尝试删除一个正在被用户使用的配置文件,可以使用CASCADE
选项。这将撤销该配置文件与所有用户的关联,并删除配置文件。
这个命令将撤销DROP PROFILE developer_prof CASCADE;
developer_prof
配置文件与所有使用它的用户的关联,并删除该配置文件。
注意事项:
- 默认配置文件不能被删除:默认配置文件(通常命名为
DEFAULT
)不能被删除,因为它是一个系统保留的配置文件,用于为新用户设置默认的资源限制和密码参数。 - 权限:要删除配置文件,用户必须具有
DROP PROFILE
系统权限。 - 检查现有用户:在删除配置文件之前,最好先检查是否有用户正在使用该配置文件。可以使用以下查询来查找使用特定配置文件的用户:
SELECT username, profile FROM dba_users WHERE profile = 'developer_prof';
- 备份数据:在执行删除操作之前,建议先备份相关的数据库对象和数据,以防万一需要恢复。
在执行这些操作时,请确保你了解它们的影响,并在生产环境中谨慎操作。
资源管理
管理CPU时间、逻辑I/O和内存,以确保没有单个用户或会话能够独占系统资源。这些限制可以在不同级别实施,并通过配置文件定义。以下是如何使用配置文件和RESOURCE_LIMIT初始化参数来管理资源:
会话级别限制
资源限制可以在会话级别实施,这意味着限制适用于用户的整个会话。例如,您可以限制会话可以使用的CPU时间总量。
调用级别限制
资源限制也可以在调用级别实施,这意味着限制适用于单个SQL语句或数据库调用。
使用CREATE PROFILE命令定义限制
可以使用CREATE PROFILE命令来定义资源限制。以下是一个示例:
CREATE PROFILE app_user_limit LIMITSESSIONS_PER_USER 5CPU_PER_SESSION 1000CPU_PER_CALL 200CONNECT_TIME 45IDLE_TIME 5;
使用RESOURCE_LIMIT初始化参数启用资源限制
要启用资源限制,需要设置RESOURCE_LIMIT初始化参数。这可以通过ALTER SYSTEM命令完成:
ALTER SYSTEM SET RESOURCE_LIMIT = TRUE;
注意事项
- 一旦启用了资源限制并将配置文件分配给用户,数据库将实施指定的限制。
- 重要的是要仔细规划和测试资源限制,以避免对用户活动产生意外的限制。
- RESOURCE_LIMIT参数默认设置为FALSE,这意味着即使您定义了带有资源限制的配置文件,它们也不会被实施,直到您将RESOURCE_LIMIT设置为TRUE。
- 请确保您具有更改系统参数和创建配置文件的适当权限。
启用资源限制
将初始化参数 RESOURCE LIMIT 设置为 TRUE。
通过使用 ALTER SYSTEM 命令启用该参数来强制执行资源限制。
执行以下命令以启用资源限制:
ALTER SYSTEM SET RESOURCE LIMIT=TRUE;
会话级别
资源名称 | 描述 |
---|---|
CPUPERSESSION | 每个会话的CPU时间,以百分之一秒为单位计算 |
SESSIONSPERUSER | 每个用户名允许的并发会话数 |
CONNECTTIME | 连接时间,以分钟为单位计算 |
IDLETIME | 非活动时间周期,以分钟为单位计算 |
LOGICALREADSPERSESSION | 每个会话的数据块数(包括物理和逻辑读) |
PRIVATESGA | SGA中的私有空间,以字节为单位计算(仅适用于共享服务器模式) |
调用级别
设置名称 | 资源描述 |
---|---|
CPU_PER-CALL | 每次调用消耗的CPU时间,以百分之一秒为单位计算 |
LOGICAL_READS_PER_CALL | 每次调用可以读取的数据块数量 |
这个表格展示了在调用级别上可以设置的资源限制,其中CPU_PER-CALL
限制了每次数据库调用可以使用的CPU时间,而LOGICAL_READS_PER_CALL
限制了每次调用可以读取的数据块数量。这些设置有助于控制资源的使用,防止单个调用占用过多资源。
使用DBMS_RESOURCE_MANAGER
包来创建和维护资源管理元素
资源管理元素/操作 | 描述 |
---|---|
资源消费者组(Resource Consumer Group) | 将会话分组,以便可以按组管理资源使用。 |
资源计划(Resource Plan) | 定义了如何分配资源给不同的消费者组。 |
资源分配方法(Resource Allocation Method) | 确定如何将资源(如CPU、I/O)分配给消费者组的方法。 |
资源计划指令(Resource Plan Directives) | 在资源计划中定义的具体规则,指定了哪些消费者组可以获得多少资源。 |
使用DBMS_RESOURCE_MANAGER 包 | 用于创建和维护资源管理器元素的PL/SQL包。 |
管理权限(ADMINISTER_RESOURCE_MANAGER) | 需要ADMINISTER_RESOURCE_MANAGER 系统权限来创建和管理资源管理器元素。 |
以下是如何使用DBMS_RESOURCE_MANAGER
包来创建资源管理元素的示例:
-- 创建资源消费者组
EXEC DBMS_RESOURCE_MANAGER.CREATE_CONSUMER_GROUP('power_users', 'Group for power users');
-- 创建资源计划
EXEC DBMS_RESOURCE_MANAGER.CREATE_PLAN('my_plan', 'Plan for managing resources');
-- 创建资源计划指令
EXEC DBMS_RESOURCE_MANAGER.CREATE_PLAN_DIRECTIVE('my_plan', 'power_users', cpu_p1 => 80);
-- 启用资源计划
EXEC DBMS_RESOURCE_MANAGER.ACTIVATE_PLAN('my_plan');
资源计划(Resource Plans)
资源计划概述
- 资源消费者组归属:资源计划定义了哪些资源消费者组(Resource Consumer Groups)属于该计划。每个资源计划可以包含一个或多个消费者组。
- 资源分配指令:资源计划包含了如何在消费者组之间分配资源的指令。这些指令决定了每个组可以使用的资源量,例如CPU时间、并行服务器会话数、会话数等。
资源计划的内容
- 消费者组分配:在资源计划中,您可以将不同的消费者组分配到不同的计划中,以便根据业务需求管理资源。
- 资源分配规则:资源计划中的指令(Directives)定义了资源分配的规则。这些规则可以是优先级分配、百分比分配或者绝对数量分配。
以下是一些资源计划中的关键点: - 优先级:可以设置消费者组的优先级,以便在资源紧张时,优先级较高的组可以获得更多的资源。
- 份额:可以分配给每个消费者组一定比例的资源份额,例如,可以设置两个消费者组A和B,其中A获得60%的CPU时间,B获得40%的CPU时间。
- 限制:可以设置每个消费者组可以使用的资源上限,例如,可以限制一个组最多只能有10个并行会话。
示例
以下是一个简单的资源计划示例,它定义了两个消费者组及其资源分配:
-- 创建资源计划
EXEC DBMS_RESOURCE_MANAGER.CREATE_PLAN('my_resource_plan', 'Plan for managing database resources');
-- 将消费者组添加到资源计划
EXEC DBMS_RESOURCE_MANAGER.CREATE_CONSUMER_GROUP('group_high', 'High priority group');
EXEC DBMS_RESOURCE_MANAGER.CREATE_CONSUMER_GROUP('group_low', 'Low priority group');
-- 为资源计划添加指令
EXEC DBMS_RESOURCE_MANAGER.CREATE_PLAN_DIRECTIVE('my_resource_plan', 'group_high', cpu_p1 => 80);
EXEC DBMS_RESOURCE_MANAGER.CREATE_PLAN_DIRECTIVE('my_resource_plan', 'group_low', cpu_p1 => 20);
-- 激活资源计划
EXEC DBMS_RESOURCE_MANAGER.ACTIVATE_PLAN('my_resource_plan');
在这个示例中,my_resource_plan
资源计划包含两个消费者组 group_high
和 group_low
,其中 group_high
被分配了80%的CPU资源,而 group_low
被分配了剩余的20%的CPU资源。
资源分配方法
CPU分配方法
- CPU方法:定义了如何分配CPU资源给各个资源消费者组。可以基于百分比或份额来分配CPU时间。
会话和队列管理
- 活动会话池和排队:允许限制特定消费者组可以同时进行的活动会话数量。如果会话数量超过限制,额外的会话将被放入队列中等待。
并行度限制
- 并行度限制:设置查询可以使用的最大并行度(Degree of Parallelism, DOP)。这有助于控制并行操作对系统资源的使用。
消费者组自动切换
- 自动消费者组切换:允许基于特定条件(如会话等待时间)自动将会话从一个消费者组切换到另一个消费者组。
最大估计执行时间
- 最大估计执行时间:为消费者组中的操作设置最大允许的执行时间。如果操作超过这个时间,可能会被中断或重新排队。
Undo配额
- Undo配额:限制消费者组可以使用的Undo空间量。这有助于防止单个用户或应用程序消耗过多的Undo空间。
以下是如何设置这些资源计划指令的示例:
-- 设置CPU分配方法
EXEC DBMS_RESOURCE_MANAGER.CREATE_PLAN_DIRECTIVE('myplan', 'mygroup', 'CPU_P1', 40);
-- 设置活动会话池和排队
EXEC DBMS_RESOURCE_MANAGER.CREATE_PLAN_DIRECTIVE('myplan', 'mygroup', 'ACTIVE_SESSION_POOL', 10);
EXEC DBMS_RESOURCE_MANAGER.CREATE_PLAN_DIRECTIVE('myplan', 'mygroup', 'QUEUEING_P1', TRUE);
-- 设置并行度限制
EXEC DBMS_RESOURCE_MANAGER.CREATE_PLAN_DIRECTIVE('myplan', 'mygroup', 'PARALLEL_DEGREE_LIMIT_P1', 4);
-- 设置自动消费者组切换
EXEC DBMS_RESOURCE_MANAGER.CREATE_PLAN_DIRECTIVE('myplan', 'mygroup', 'SWITCH_GROUP', 'targetgroup', 'SESSION_WAIT_TIME', 30);
-- 设置最大估计执行时间
EXEC DBMS_RESOURCE_MANAGER.CREATE_PLAN_DIRECTIVE('myplan', 'mygroup', 'MAX_EST_EXEC_TIME', 3600);
-- 设置Undo配额
EXEC DBMS_RESOURCE_MANAGER.CREATE_PLAN_DIRECTIVE('myplan', 'mygroup', 'UNDO_POOL', '10M');
在实际应用中,需要根据具体的资源管理需求和策略来调整这些指令的参数。
相关文章:
管理口令安全和资源(二)
DBMS_METADATA DBMS_METADATA 是 Oracle 数据库中的一个包,它提供了用于管理数据库元数据的工具和过程。元数据是关于数据的数据,它描述了数据库的结构,包括表、视图、索引、存储过程、用户和其他数据库对象的信息。DBMS_METADATA 包允许用户…...
【漏洞预警】FortiOS 和 FortiProxy 身份认证绕过漏洞(CVE-2024-55591)
文章目录 一、产品简介二、漏洞描述三、影响版本四、漏洞检测方法五、解决方案 一、产品简介 FortiOS是Fortinet公司核心的网络安全操作系统,广泛应用于FortiGate下一代防火墙,为用户提供防火墙、VPN、入侵防御、应用控制等多种安全功能。 FortiProxy则…...
Cadence笔记--原理图导入PCB
1、以PMU6050为例,首先在原理图双击PMU6050器件,在PCB_Footprint目录填写PCB封装名称并且保存,如下图所示: 2、确保原理图命名的名称不一样,否则会出错,这里PMU6050更改了NC等名称,如下图所示&a…...
TOSUN同星TsMaster使用入门——3、使用系统变量及c小程序结合panel面板发送报文
本篇内容将介绍TsMaster中常用的Panel面板控件以及使用Panel控件通过系统变量以及c小程序来修改信号的值,控制报文的发送等。 目录 一、常用的Panel控件介绍 1.1系统——启动停止按钮 1.2 显示控件——文本框 1.3 显示控件——分组框 1.4 读写控件——按钮 1.…...
Redis 缓存穿透、击穿、雪崩 的区别与解决方案
前言 Redis 是一个高性能的键值数据库,广泛应用于缓存、会话存储、实时数据分析等场景。然而,在高并发的环境下,Redis 缓存可能会遇到 缓存击穿、缓存穿透 和 缓存雪崩 这三大问题。这些问题不仅影响系统的稳定性和性能,还经常出…...
用Cursor生成一个企业官网前端页面(生成腾讯、阿里官网静态页面)
用Cursor生成一个企业官网前端页面 第一版: <!DOCTYPE html> <html lang"zh-CN"> <head><meta charset"UTF-8"><meta name"viewport" content"widthdevice-width, initial-scale1.0"><…...
北京市房屋建筑物轮廓shp数据arcgis高度字段内容下载分析
标题中的“北京市房屋建筑物轮廓shp数据arcgis高度字段”涉及到的是地理信息系统(GIS)中的数据格式和属性字段。在GIS领域,SHP(Shapefile)是一种常见的矢量数据格式,用于存储地理空间特征,如点、…...
深度学习常见术语解释
正例与负例: 在分类任务中,通常将目标类别称为正例(positive),非目标类别称为负例(negative)。 True Positives(TP): 被正确地划分为正例的个数,…...
《内网穿透:网络拓展与安全防护的平衡艺术》
一、引言:开启内网穿透的大门 在当今数字化浪潮席卷全球的时代,网络已成为人们生活和工作中不可或缺的一部分。我们日常使用的网络,如同一个庞大而复杂的生态系统,其中内网和外网犹如两个相互关联却又有所区别的世界。 想象一下…...
文件读取和输入输出
文件指针 在C语言中,文件操作是通过文件指针来进行的。文件指针是一个指向 FILE 结构的指针,用于标识和操作一个文件。 FILE *fp; 常用的文件操作函数 fopen:打开文件。fclose:关闭文件。fread:从文件中读取数据。…...
【Linux系列】查看服务器是否使用了 SSD 的多种方法
💝💝💝欢迎来到我的博客,很高兴能够在这里和您见面!希望您在这里可以感受到一份轻松愉快的氛围,不仅可以获得有趣的内容和知识,也可以畅所欲言、分享您的想法和见解。 推荐:kwan 的首页,持续学…...
基础入门-传输加密数据格式编码算法密文存储代码混淆逆向保护安全影响
知识点: 1、传输格式&传输数据-类型&编码&算法 2、密码存储&代码混淆-不可逆&非对称性 一、演示案例-传输格式&传输数据-类型&编码&算法 传输格式 JSON XML WebSockets HTML 二进制 自定义 WebSockets:聊天交互较常…...
通过idea创建的springmvc工程需要的配置
在创建的spring mvc工程中,使用idea开发之前需要配置文件包括porm.xml、web.xml、springmvc.xml 1、porm.xml 工程以来的spring库,主要包括spring-aop、spring-web、spring-webmvc,示例配置如下: <project xmlns"http:/…...
PyTest自学-认识PyTest
1 PyTest自学-认识PyTest 1.1 PyTest可以用来做什么? PyTest是一个自动化测试框架,支持单元测试和功能测试,有丰富的插件,如,pytest-selemium, pytest-html等。 1.2 安装pytest 使用pip install -U pytest。 1.3 py…...
JavaScript系列(31)--装饰器详解
JavaScript装饰器详解 🎨 今天,让我们深入探讨JavaScript的装饰器(Decorators)。装饰器是一种用于修改类和类成员的强大语言特性,它让我们能够以声明式的方式增强类的功能。 装饰器基础概念 🌟 …...
培养未来:2024年少儿编程教育的实践与思考
目录 引言 : 正文: 一、Scratch教学的深化 二、代码编程的多样化 三、赛教融合驱动 四、社区互动与共同成长 结语 : 引言 : 在快速发展的科技时代,编程教育作为培养未来技术人才的重要环节,不断经历…...
ComfyUI-PromptOptimizer:文生图提示优化节点
ComfyUI-PromptOptimizer 是 ComfyUI 的一个自定义节点,旨在优化文本转图像模型的提示。它将用户输入的提示转换为更详细、更多样化、更生动的描述,使其更适合生成高质量的图像。无需本地模型。 1、功能 提示优化:优化用户输入的提示以生成…...
用户中心项目教程(三)---再谈nvm,nodejs和神器Geek
目录 1.昨日回顾 2.nodejs&&nvm使用 2.1问题抛出 2.2解决方案 3.geek的使用 3.1页面展示 3.2下载链接 3.3如何使用 4.按照官方文档操作 4.1官方文档 4.2我的演示 4.3可能出现的问题 1.昨日回顾 我依稀记得昨天的时候关于这个umi3相关的兼容性问题导致的这个…...
CSS布局新视角:BFC(块级格式化上下文)的作用与优势
在CSS布局的世界中,BFC(Block Formatting Context,块级格式化上下文)是一个既重要又神秘的概念。它不仅是解决复杂布局问题的关键工具,也是提升页面性能和用户体验的重要手段。本文将从新视角出发,深入探讨…...
智能化植物病害检测:使用深度学习与图像识别技术的应用
植物病害一直是农业生产中亟待解决的问题,它不仅会影响作物的产量和质量,还可能威胁到生态环境的稳定。随着人工智能(AI)技术的快速发展,尤其是深度学习和图像识别技术的应用,智能化植物病害检测已经成为一…...
Spring Boot Actuator 详细介绍
Spring Boot Actuator 详细介绍 1. 简介 Spring Boot Actuator 是 Spring Boot 提供的一个用于监控和管理应用程序的强大功能模块。它可以帮助我们了解应用程序的运行状况、指标收集、环境信息、日志级别管理等。 2. 添加依赖 2.1 在 pom.xml 中添加以下依赖: …...
微软确认Win10停更不碍Microsoft 365使用!未来是否更新成谜
快科技1月17日消息,微软澄清了关于Windows 10停止支持后Microsoft 365办公套件使用情况的误解。 前两天微软更新支持文档,表示2025年10月14日Windows 10停止支持之后,Microsoft 365应用程序将不再支持Windows 10设备,引发用户担忧…...
uniapp 微信小程序 editor 富文本编辑器
<view class"inp boxsizing"><view class"contentBox"><!-- 富文本编辑器 --><view classwrapper><view classtoolbar tap"format"><view :class"formats.bold ? ql-active : " class"iconfon…...
数据结构学习笔记——排序
排序 1. 排序相关概念 稳定性:关键字相同的数据记录,排序后相对顺序仍保持不变 例如,两个25,在排序完后,有*的25仍在后方,说明该排序算法是稳定的 内部排序:数据元素全部放在内存中的排序 外…...
CSS 样式 margin:0 auto; 详细解读
一、基本语法 margin 属性是用于设置元素的外边距,它可以接受一个、两个、三个或四个值。 margin:0 auto 是一种简洁的写法,其中包含了两个值。 二、值的含义 第一个值 0 表示元素的上下外边距为 0。这意味着该元素的顶部和底部与相邻元素或父元素之间…...
leetcode24-两两交换链表中的节点
leetcode 24 思路 本题仍然引入虚拟头节点来实现会更加简单,因为不用单独考虑对于头节点进行交换的场景对于边界条件考虑更少,交换的步骤按照下图中的步骤来 首先将dummy->22->11->3 但是在第一步的时候,dummy->2,…...
项目开发实践——基于SpringBoot+Vue3实现的在线考试系统(六)
文章目录 一、考试管理模块实现1、添加考试功能实现1.1 页面设计1.2 前端功能实现1.3 后端功能实现1.4 效果展示2、考试管理功能实现2.1 页面设计2.2 前端功能实现2.3 后端功能实现2.3.1 后端查询接口实现2.3.2 后端编辑接口实现2.3.3 后端删除接口实现2.4 效果展示二、代码下载…...
flutter的web页面
有几个服务器 有几个后台 直接通过web端进去虽然说很方便,但… 于是把web页面镶嵌到应用里面去, 这样就换了个方式打开web页面了 比如这里有有个列表 这里是写死了,活的列表可以通过io去获取 import package:flutter/material.dart; imp…...
YOLOv10改进,YOLOv10检测头融合RFAConv卷积,添加小目标检测层(四头检测)+CA注意机制,全网首发
摘要 空间注意力已广泛应用于提升卷积神经网络(CNN)的性能,但它存在一定的局限性。作者提出了一个新的视角,认为空间注意力机制本质上解决了卷积核参数共享的问题。然而,空间注意力生成的注意力图信息对于大尺寸卷积核来说是不足够的。因此,提出了一种新型的注意力机制—…...
使用vue-next-admin框架后台修改动态路由
vue-next-admin框架是一个基于 Vue 3 和 Vite 构建的后台管理系统框架。它采用了最新的前端技术栈,旨在提供一个高效、灵活、现代化的管理后台解决方案。该框架主要用于构建功能丰富且易于定制的管理后台应用,适合各种中大型项目。 其主要特点包括&am…...
Windows蓝牙驱动开发-经典蓝牙音频
本文介绍 Windows 中的蓝牙经典音频功能。 蓝牙经典音频支持通过高级音频分发配置文件(A2DP)和单声道播放和通过免手配置文件(HFP)进行立体声音频播放。 Windows 支持各种音频编解码器和采样率,具体取决于 Windows 版本、耳机的功能以及音频设备的播放或捕获功能的当…...
力扣动态规划-3【算法学习day.97】
前言 ###我做这类文章一个重要的目的还是给正在学习的大家提供方向(例如想要掌握基础用法,该刷哪些题?建议灵神的题单和代码随想录)和记录自己的学习过程,我的解析也不会做的非常详细,只会提供思路和一些关…...
如何将本地电脑上的文件夹设置为和服务器的共享文件夹
将本地电脑上的文件夹设为与服务器共享的文件夹,通常是在本地开启文件共享,并配置相应的权限,使服务器可以访问该文件夹。以下以 Windows 系统为例说明具体操作步骤: 一、在本地电脑上设置共享文件夹 选择文件夹 找到需要共享的文…...
自己搭建远程桌面服务器-RustDesk(小白版)
1.RustDesk简介 此软件主要功能为远程各种设备(其中包括Windows、macOS、Linux、iOS、Android、Web等) 支持文件传输(可直接拷贝远程电脑的文件,类似向日葵的远程文件) 支持内网穿透(支持端口映射&#…...
一文读懂服务器的HBA卡
什么是 HBA 卡 HBA 卡,全称主机总线适配器(Host Bus Adapter) ,是服务器与存储装置间的关键纽带,承担着输入 / 输出(I/O)处理及物理连接的重任。作为一种电路板或集成电路适配器,HBA…...
Android SystemUI——CarSystemBar车载状态栏(九)
上一篇文章我们介绍了车载开发中的 CarSystemUI,而车载开发中的状态栏也被 CarSystemBar 所取代,这里我们就来看看一下车载系统中的状态栏——CarSystemBar。 一、车载状态栏创建 1、CarSystemBar 源码位置:/packages/apps/Car/SystemUI/src/com/android/systemui/car/sy…...
干货答疑分享记录:as导入问题,LSP含义,分屏进入SplashScreen
背景: vip学员群经常会有学员遇到一些常见的android framework开发问题,近期收集整理一些疑问,主要有以下3个: 1、android studio对源码进行导入时候,老是无法跳转到系统source code 2、学员在群里询问dumpOtherPro…...
WPS数据分析000001
目录 一、表格的新建、保存、协作和分享 新建 保存 协作 二、认识WPS表格界面 三、认识WPS表格选项卡 开始选项卡 插入选项卡 页面布局选项卡 公式选项卡 数据选项卡 审阅选项卡 视图选项卡 会员专享选项卡 一、表格的新建、保存、协作和分享 新建 ctrlN------…...
单独编译QT子模块
单独编译QT子模块 系统 win qt-everywhere-src-5.12.12 下载源码: https://download.qt.io/archive/qt/5.12/5.12.12/single/ 参考: https://doc.qt.io/qt-5/windows-building.html 安装依赖 https://doc.qt.io/qt-5/windows-requirements.html Per…...
Ubuntu20.4和docker终端指令、安装Go环境、安装搜狗输入法、安装WPS2019:保姆级图文详解
目录 前言1、docker、node、curl版本查看终端命令1.1、查看docker版本1.2、查看node.js版本1.3、查看curl版本1.4、Ubuntu安装curl1.5、Ubuntu终端保存命令 2、安装docker-compose、Go语言2.1、安装docker-compose2.2、go语言安装步骤2.3、git版本查看 3、Ubuntu20.4安装搜狗输…...
HarmonyOS NEXT应用开发边学边玩系列:从零实现一影视APP (五、电影详情页的设计实现)
在上一篇文章中,完成了电影列表页的开发。接下来,将进入电影详情页的设计实现阶段。这个页面将展示电影的详细信息,包括电影海报、评分、简介以及相关影人等。将使用 HarmonyOS 提供的常用组件,并结合第三方库 nutpi/axios 来实现…...
电子杂志制作平台哪个好
作为一个热爱分享的人,我试过了好几个平台,终于找到了几款比较好用得电子杂志制作平台,都是操作界面很简洁,上手非常快的工具。 FLBOOK:这是一款在线制作H5电子画册软件,提供了各种类型的模板,可支持添加…...
1.写在前面
按照惯例,第一篇文章是要先介绍下专栏的风格、思路,以免需求不一致的同学误入,耽误大家时间。 本教程将系统的讲解若依前、后端的全部功能点,适合有面试需求的小伙伴,或者想提升自己能力的同学。本教程是免费教程。对源…...
JavaWeb 前端基础 html + CSS 快速入门 | 018
今日推荐语 指望别人的救赎,势必走向毁灭——波伏娃 日期 学习内容 打卡编号2025年01月17日JavaWeb 前端基础 html CSS018 前言 哈喽,我是菜鸟阿康。 今天 正式进入JavaWeb 的学习,简单学习 html CSS 这2各前端基础部分&am…...
redis做为缓存,mysql的数据如何与redis进行同步呢?
Redis作为缓存与MySQL之间的数据同步问题,特别是涉及到双写一致性(即缓存与数据库的写操作要保持一致)时,通常有两种常见的解决方案。它们分别适用于不同的一致性要求和延迟容忍度。以下是两种常见的解决方案的详细解释࿱…...
TCP 重传演进:TCP RACK Timer 能替代 RTO 吗
本文的建议适用于想改变 TCP 行为的新协议设计,还是那句话,不要抄 TCP 做 yet another TCP。 RTO 一直是 TCP 传输过程所要尽量避免的,因为它会将状态带入 Loss 进而 Go-Back-N,这是一个昂贵的操作。But 在 Fast-Retransmit 被引…...
React Native的现状与未来:从发展到展望
每周跟踪AI热点新闻动向和震撼发展 想要探索生成式人工智能的前沿进展吗?订阅我们的简报,深入解析最新的技术突破、实际应用案例和未来的趋势。与全球数同行一同,从行业内部的深度分析和实用指南中受益。不要错过这个机会,成为AI领…...
替换数字
目录 题目 思路 代码 题目 给定一个字符串 s,它包含小写字母和数字字符,请编写一个函数,将字符串中的字母字符保持不变,而将每个数字字符替换为number。 例如,对于输入字符串 "a1b2c3",函数应…...
[cg] UE5 调试技巧
UE 中 rhi命令的提交是在render 线程,而graphics api 真正的执行是在rhi 线程, 今天想看下rhi的底层调用,但由于是通过task执行的,无法获取到render thread传入的地方,调试起来不太方便。 可通过开启下面的命令来调试 …...
Git相关命令
一:基础认识 1.Git 三种状态 Working Directory :本地工作目录,工作区Staging Area:添加文件,用于commit前,暂存区.git directory(Repository):本地仓库,存储commit数据࿰…...