学习黑客Active Directory 入门指南(五)
Active Directory 入门指南(五):管理工具、安全基础与学习路径 🛠️🛡️📚
大家好!欢迎来到 “Active Directory 入门指南” 系列的最后一篇。在前四篇中,我们已经全面探讨了Active Directory的逻辑结构、物理组件、关键服务、核心对象管理、强大的组策略功能以及确保一致性的操作主机角色。
在本篇中,我们将介绍一些常用的Active Directory管理工具,讨论AD安全的基础原则,并为你提供一些开始学习和实践AD的建议和资源。让我们完成这次AD的入门之旅!
9. AD管理工具 🛠️
微软提供了多种工具来管理Active Directory环境,从图形用户界面 (GUI) 工具到强大的命令行和脚本工具。
工具名称 | 常用缩写 | 主要用途 | 访问方式 (通常) |
---|---|---|---|
Active Directory用户和计算机 | ADUC | 管理用户、组、计算机、组织单位 (OU) 等日常对象。是最常用的AD管理工具之一。 | 在DC上通过“服务器管理器”->“工具”,或安装RSAT后在管理工作站上运行 dsa.msc |
Active Directory管理中心 | ADAC | ADUC的现代化替代品,基于PowerShell构建,提供更丰富的功能(如AD回收站图形界面、精细密码策略管理)和PowerShell历史记录查看。 | 在DC上通过“服务器管理器”->“工具”,或安装RSAT后从开始菜单启动 |
Active Directory站点和服务 | ADSS | 管理AD站点、子网、站点链接、DC间的复制拓扑和计划,以及某些服务(如全局编录服务器)的配置。 | 在DC上通过“服务器管理器”->“工具”,或安装RSAT后运行 dssite.msc |
Active Directory域和信任关系 | ADDT | 管理域信任关系(包括林信任)、用户主体名称 (UPN) 后缀、提升域功能级别和林功能级别。 | 在DC上通过“服务器管理器”->“工具”,或安装RSAT后运行 domain.msc |
Active Directory架构 | ADSchema | 查看和修改AD架构(例如,添加新的对象类或属性)。默认不安装,需要注册 schmmgmt.dll 才能在MMC中添加。 | 运行 regsvr32 schmmgmt.dll ,然后在MMC (mmc.exe ) 中添加管理单元 |
组策略管理控制台 | GPMC | 创建、链接、编辑、备份、还原和管理组策略对象 (GPO)及其应用。提供组策略结果和建模向导。 | 在DC上默认安装,或安装RSAT后从开始菜单启动,或运行 gpmc.msc |
DNS管理器 | DNSMgmt | 管理DNS区域、记录(特别是AD集成的DNS区域中的SRV记录等)。 | 在作为DNS服务器的DC上通过“服务器管理器”->“工具”,或安装RSAT后运行 dnsmgmt.msc |
PowerShell (Active Directory模块) | PS | 最强大的命令行和脚本工具,用于自动化和高级AD管理。提供了大量的cmdlets来查询和操作AD对象。 | 在DC上默认可用,或安装RSAT后导入 ActiveDirectory 模块 |
服务器管理器 (Server Manager) | - | Windows Server的中心管理控制台,用于添加/删除AD DS角色和其他服务器角色,监控DC健康状况,启动其他管理工具。 | 在Windows Server上自动启动 |
LDP.exe | LDP | 一个轻量级的LDAP客户端工具,用于执行原始LDAP查询、连接、绑定、搜索、修改、添加、删除AD中的对象。对排错和深入理解LDAP交互很有用。 | 通常包含在支持工具或RSAT中 |
NTDSUtil.exe | NTDSUtil | 一个命令行的AD数据库管理工具,用于执行一些高级和维护任务,如FSMO角色管理、元数据清理、AD数据库脱机碎片整理等。 | 在DC的命令提示符或PowerShell中运行 |
事件查看器 (Event Viewer) | - | 查看与AD相关的事件日志(如目录服务日志、DNS服务器日志、安全日志中的登录事件),用于故障排除和安全审计。 | 运行 eventvwr.msc |
远程服务器管理工具 (Remote Server Administration Tools - RSAT):
为了避免直接在域控制器上进行日常管理操作(这是一种安全最佳实践),管理员通常会在自己的管理工作站(如Windows 10/11客户端)上安装RSAT。RSAT包含上述大部分GUI管理工具和PowerShell模块,允许管理员远程管理AD和其他服务器角色。
常用PowerShell Cmdlets示例:
# 获取用户jdoe的所有属性
Get-ADUser -Identity "jdoe" -Properties *# 创建一个新用户
New-ADUser -Name "Jane Doe" -UserPrincipalName "janedoe@company.com" -SamAccountName "janedoe" -Path "OU=Users,OU=Sales,DC=company,DC=com" -Enabled $true -ChangePasswordAtLogon $true# 查找所有操作系统为Windows 10的计算机
Get-ADComputer -Filter 'OperatingSystem -like "*Windows 10*"' -Properties OperatingSystem | Select-Object Name, OperatingSystem# 列出域中所有的组策略对象
Get-GPO -All# 移动用户到一个新的OU
Move-ADObject -Identity "CN=John Smith,OU=OldOU,DC=company,DC=com" -TargetPath "OU=NewOU,DC=company,DC=com"
10. AD安全基础 🛡️
保护Active Directory至关重要,因为AD控制着对组织大部分IT资源的访问。如果AD被攻陷,整个组织的网络都可能面临风险。
- 最小权限原则 (Principle of Least Privilege):仅授予用户、服务和计算机账户完成其工作所需的最低限度的权限。避免过度分配管理员权限。
- 强密码策略和账户锁定:通过GPO强制执行复杂的密码要求(长度、复杂性、历史记录、有效期)和账户锁定策略(在多次失败登录尝试后锁定账户)。
- 定期审计和监控:
- 监控关键安全事件,如管理员登录、账户更改、组策略更改、DC上的可疑活动。
- 定期审查高权限组(如Domain Admins, Enterprise Admins, Schema Admins)的成员。
- 保护高权限账户和组:
- 严格控制Domain Admins、Enterprise Admins等内置高权限组的成员数量。
- 为管理员账户使用单独的、非特权账户进行日常工作,仅在需要执行管理任务时使用特权账户。
- 考虑使用特权访问管理 (Privileged Access Management - PAM) 解决方案或分层管理模型 (Tier Model)。
- 定期更新和修补域控制器:确保DC操作系统和AD组件及时打上最新的安全补丁,以防范已知漏洞。
- 物理安全:严格控制对域控制器的物理访问。如果攻击者可以物理接触DC,他们可能能够绕过许多安全措施。
- 禁用或限制NTLM:NTLM协议相对较弱,应尽可能使用Kerberos。通过策略限制或禁用NTLM的使用。
- AD回收站 (AD Recycle Bin):启用AD回收站功能(需要林功能级别至少为Windows Server 2008 R2),以便在意外删除AD对象时可以轻松恢复。
- 备份和灾难恢复计划:定期备份Active Directory(特别是系统状态备份),并测试恢复过程。
- 分层管理模型 (Tier Model / Red Forest / ESAE):一种将IT资产和管理权限隔离到不同层级(Tier 0, Tier 1, Tier 2)的安全架构,以限制凭据泄露的影响范围。Tier 0包含最高价值的资产,如DC、PKI服务器和拥有这些系统控制权的账户。
11. 如何开始学习和实践?🚀
掌握Active Directory需要理论学习和大量的动手实践。
-
搭建实验环境 (Home Lab):
- 使用虚拟机软件(如Oracle VirtualBox (免费), VMware Workstation Player (个人免费), Hyper-V (Windows内置))创建虚拟机。
- 至少安装一台Windows Server虚拟机作为域控制器,并安装AD DS角色。
- 安装一台或多台Windows客户端虚拟机(如Windows 10/11)并将其加入域。
- 提示:微软通常提供评估版的Windows Server和Windows客户端,可用于学习和测试。
-
从基础开始:
- 在你的实验环境中,练习创建和管理用户、组和OU。
- 熟悉ADUC和ADAC工具。
- 尝试不同的用户账户选项和组类型/作用域。
-
实践组策略:
- 创建简单的GPO,例如设置桌面背景、禁用控制面板访问、配置密码策略。
- 将GPO链接到不同的OU,观察其应用顺序和继承行为。
- 学习使用GPMC进行GPO管理和故障排除(如组策略结果向导)。
-
学习PowerShell for AD:
- PowerShell是现代Windows管理(包括AD)的核心。尽早开始学习和使用Active Directory PowerShell模块。
- 从简单的
Get-ADUser
,Get-ADComputer
,Get-ADGroup
开始,然后尝试New-ADUser
,Set-ADUser
等。
-
阅读官方文档和书籍:
- Microsoft Learn (docs.microsoft.com):微软官方文档是学习AD最权威和最全面的资源。
- 经典书籍:如Sybex出版的 “Mastering Windows Server” 系列,或专门针对AD的书籍。
-
参与在线课程和动手实验平台:
- Microsoft Learn:提供许多免费的在线学习路径和模块。
- Pluralsight, Udemy, Coursera, CBT Nuggets:提供高质量的付费视频课程。
- TryHackMe, Hack The Box:这些平台虽然更侧重于网络安全和渗透测试,但它们有大量关于Active Directory攻击和防御的实验室,可以让你从攻击者的视角理解AD的弱点,从而更好地保护它。
-
加入社区和论坛:
- 参与如Reddit的r/sysadmin、r/activedirectory等社区,提问、分享经验。
Active Directory是一个庞大而复杂的系统,但通过系统的学习和持续的实践,你可以逐步掌握它。本系列入门指南为你提供了一个坚实的起点,涵盖了AD的核心概念、组件、功能和管理基础。希望它能激发你进一步探索AD的兴趣,并在你的IT职业生涯中助你一臂之力。
感谢你跟随本系列的学习!祝你在Active Directory的探索之路上一切顺利!
相关文章:
学习黑客Active Directory 入门指南(五)
Active Directory 入门指南(五):管理工具、安全基础与学习路径 🛠️🛡️📚 大家好!欢迎来到 “Active Directory 入门指南” 系列的最后一篇。在前四篇中,我们已经全面探讨了Active…...
【第三篇】 SpringBoot项目中的属性配置
简介 SpringBoot支持多种配置文件格式,包括application.properties、yml和yaml等。本文章将详细介绍这三种配置文件的内容格式和详细用法,以及在程序中如何对配置文件中的属性进行读取。文章内容若存在错误或需改进的地方,欢迎大家指正&#…...
处理金融数据,特别是股票指数数据,以计算和分析RSRS(相对强度指数)
Python脚本,用于处理金融数据,特别是股票指数数据,以计算和分析RSRS(相对强度指数)指标。以下是代码的逐部分解释: 1. **导入库**: - `pandas`:用于数据处理和CSV文件操作。 - `numpy`:用于数值计算。 - `ElasticNet`:来自`sklearn.linear_model`,用于线性…...
C++面试2——C与C++的关系
C与C++的关系及核心区别的解析 一、哲学与编程范式:代码组织的革命 过程式 vs 多范式混合 C语言是过程式编程的典范,以算法流程为中心,强调“怎么做”(How)。例如,实现链表操作需手动管理节点指针和内存。 C++则是多范式语言,支持面向对象(OOP)、泛型编程(模板)、函…...
Linux云计算训练营笔记day10(MySQL数据库)
Linux云计算训练营笔记day10(MySQL数据库) 目录 Linux云计算训练营笔记day10(MySQL数据库)ifnull别名聚合函数group byHAVING 子查询关联查询 ifnull 在DQL语句中可以使用函数或表达式 函数 IFNULL(arg1,arg2) 如果arg1为NULL,函…...
深度解析:AWS NLB 与 ALB 在 EKS 集群中的最佳选择
前言 AWS 提供多种弹性负载均衡器,包括应用程序负载均衡器 (ALB)、网络负载均衡器 (NLB)、网关负载均衡器 (GWLB) 和经典负载均衡器 (CLB)。本文重点介绍 ALB 和 NLB,因为它们是 EKS 集群最相关的选项。 在确定合适的负载均衡器类型时,需要…...
nginx模块使用、过滤器模块以及handler模块
一、如何使用nginx的模块 1.ngx_code.c: #include "ngx_config.h" #include "ngx_conf_file.h" #include "nginx.h" #include "ngx_core.h" #include "ngx_string.h" #include "ngx_palloc.h" #include "n…...
基于PageHelper的分页查询
基于PageHelper的分页查询 ‘PageHelper是基于java的一个开源框架,用于在MyBatis等持久层框架中方便地进行分页查询操作。它提供了一组简单易用的API和拦截器机制,可以帮助开发者快速集成和使用分页功能。 PageHelper的主要功能包括: 分页…...
Linux518 YUM源仓库回顾(需查)ssh 服务配置回顾 特定任务配置回顾
计划配仓库YUM源 为什么我在/soft文件夹下 使用yum install --downloadonly --downloaddir /soft samba 为什么文件夹下看不到samba文件 exiting because “Download Only” specified 计划过 计划配SSH 参考 ok了 计划配置特定任务解决方案 code: 两端先配好网络 测试好s…...
AI 制作游戏美术素材流程分享(程序员方向粗糙版)
AI 制作游戏美术素材分享(程序员方向粗糙版) 视频讲解: 抖音:https://www.douyin.com/user/self?from_tab_namemain&modal_id7505691614690561295&showTabpost Bilibili: https://www.bilibili.com/video/BV1ojJGzZEve/ 写在最前面: 本方法比较粗糙,只对对美术风…...
山东大学计算机图形学期末复习12——CG13下
CG13下 BSP树 BSP (Binary Space Partition)表示二叉空间分割。 使用这种方法可以使我们在运行时使用一个预先计算好的树来得到多边形从后向前的列表,它的复杂度为O(n)。 它的基本思想是基于这样一个事实:任何平面都可以将空间分…...
Muduo网络库大总结
Muduo网络库大总结 目录 目的知识储备IO模型 阻塞与非阻塞五种IO模型 epoll原理 select/poll的缺点epoll的优势LT与ET模式 Reactor模型muduo核心模块扩展功能 目的 理解阻塞、非阻塞、同步、异步的概念掌握Unix/Linux五种IO模型深入理解epoll原理及优势掌握Reactor模型设计学…...
LLMs:《POE报告:2025年春季人工智能模型使用趋势》解读
LLMs:《POE报告:2025年春季人工智能模型使用趋势》解读 导读:2025年5月13日,该报告基于 Poe 平台的用户数据,分析了 2025 年春季人工智能模型的使用趋势。报告指出,人工智能格局快速演变,通用文…...
机器学习(13)——LGBM(2)
一、LightGBM算法简介 (一)背景 机器学习中的树模型 在机器学习领域,基于树的模型(如决策树、随机森林、梯度提升树等)是非常重要的算法类别。它们具有很强的可解释性,能够很好地处理非线性关系ÿ…...
翻到了一段2005年写的关于需求的文字
那时的俺还很稚嫩,很多东西都不懂。 另外 hfghfghfg其实是俺的一个马甲,早年间在delphibbs时用的。 来自:hfghfghfg, 时间:2005-01-20 13:16, ID:2971188我到客户那里的情况 一边要和他聊天 一边改报表。 一张报表 …...
MCP - Cline 接入 高德地图 Server
文章目录 一、准备1、注册、认证高德开放平台账号2、创建应用、获取 Key3、用量管理2、Cline 配置模型 二、接入三、测试官方测试 - 出行规划专属地图 四、关于 高德 MCP Server - AI时代的出行服务中台1、产品定位2、技术架构亮点3、核心API能力矩阵4、开发者优势5、典型应用场…...
Linux的MySQL头文件和找不到头文件问题解决
头文件 #include <iostream> #include <mysql_driver.h> #include <mysql_connection.h> #include <cppconn/statement.h> #include <cppconn/resultset.h> #include <cppconn/prepared_statement.h> #include <cppconn/exception.h&g…...
进程和线程的区别和联系
二者概念 进程 运行起来一个程序就会在操作系统产生一个或多个进程 进程属于软件资源。 进程是操作系统中资源分配的基本单位。 每个进程拥有独立的 内存空间、文件描述符、系统资源。 进程之间相互隔离,一个进程崩溃不会直接影响其他进程。 操作系统管理进程…...
SHAP分析图的含义
1. 训练集预测结果对比图 表征含义: 展示模型在训练集上的预测值(红色曲线)与真实值(灰色曲线)的对比。通过曲线重合度可直观判断模型的拟合效果。标题中显示的RMSE(均方根误差)量化了预测值与…...
PointNet++:点云处理的升级版算法
在三维计算机视觉和机器学习领域,点云数据的处理一直是一个关键问题。点云是由一系列三维坐标点组成的集合,这些点可以描述物体的形状和结构。然而,由于点云的无序性和不规则性,传统的处理方法往往难以直接应用。PointNet算法的出…...
PostGIS实现矢量数据转栅格数据【ST_AsRaster】
ST_AsRaster函数应用详解:将矢量数据转换为栅格数据 [文章目录] 一、函数概述 二、函数参数与分组说明 三、核心特性与注意事项 四、示例代码 五、应用场景 六、版本依赖 七、总结 一、函数概述 ST_AsRaster是PostGIS中用于将几何对象(如点、线…...
【PyQt5实战】五大对话框控件详解:从文件选择到消息弹窗
对话框是人机交互的重要组件,PyQt5提供了一系列标准对话框满足不同场景需求。本文将深入解析QDialog及其子类的使用方法,助你快速掌握GUI开发核心交互功能。 对话框基础:QDialog QDialog是所有对话框的基类,支持模态/非模态两种…...
机器学习-人与机器生数据的区分模型测试 - 模型选择与微调
内容继续机器学习-人与机器生数据的区分模型测试 整体模型的准确率 X_train_scaled pd.DataFrame(X_train_scaled,columns X_train.columns ) X_test_scaled pd.DataFrame(X_test_scaled,columns X_test.columns)from ngboost.distns import Bernoulli # 模型训练和评估 m…...
学习黑客Active Directory 入门指南(四)
Active Directory 入门指南(四):组策略的威力与操作主机角色 📜👑 大家好!欢迎来到 “Active Directory 入门指南” 系列的第四篇。在前几篇中,我们已经构建了对AD逻辑结构、物理组件、关键服务…...
十一、STM32入门学习之FREERTOS移植
目录 一、FreeRTOS1、源码下载:2、解压源码 二、移植步骤一:在需要移植的项目中新建myFreeRTOS的文件夹,用于存放FREERTOS的相关源码步骤二:keil中包含相关文件夹和文件引用路径步骤三:修改FreeRTOSConfig.h文件的相关…...
Spring ioc和Aop
IOC 在传统Java当中,我们的对象都需要new关键字来生成,这在面对很多对象的情况产生了不必要的麻烦,因为我不需要在一个项目中一直做重复的事情,那怎么办把,自然而然的一些好的框架就诞生了,避免我们去做这…...
动态内存管理2+柔性数组
一、动态内存经典笔试题分析 分析错误并改正 题目1 void GetMemory(char *p) {p (char *)malloc(100); } void Test(void) {char *str NULL;GetMemory(str);strcpy(str, "hello world");printf(str); } int main() {Test();return 0; }错误的原因: …...
USB传输速率 和 RS-232/RS-485串口协议速率 的倍数关系
一、技术背景 RS-232:传统串口标准,典型速率 115.2 kbps(最高约 1 Mbps)。RS-485:工业串口标准,典型速率 10 Mbps(理论最高可达 50 Mbps)。USB:不同版本差异巨大&#x…...
多线程代码案例-4 线程池
1、引入 池是一个非常重要的概念,我们有常量池,数据库连接池,线程池,进程池,内存池…… 池的作用: 1、提前把要用的对象准备好 2、用完的对象也不立即释放,先留着以备下次使用,提…...
JSON Schema 高效校验 JSON 数据格式
在数据交换和API开发中,JSON 已成为最流行的数据格式之一。但你是否遇到过这些困扰? 接收的JSON字段缺失关键数据?数值类型意外变成了字符串?嵌套结构不符合预期? JSON Schema 正是解决这些问题的利器。本文将带你全…...
机器学习09-正规方程
机器学习笔记:正规方程(Normal Equation) 概述 正规方程是线性回归中求解参数的一种解析方法。它基于最小化损失函数(如最小二乘法)来直接计算出参数的最优值。在机器学习中,这种方法尤其适用于特征数量不…...
Java大师成长计划之第26天:Spring生态与微服务架构之消息驱动的微服务
📢 友情提示: 本文由银河易创AI(https://ai.eaigx.com)平台gpt-4-turbo模型辅助创作完成,旨在提供灵感参考与技术分享,文中关键数据、代码与结论建议通过官方渠道验证。 在现代微服务架构中,服务…...
Linux 文件(1)
1. 文件 1.1 文件是什么 一个文件,是由其文件属性与文件内容构成的。文件属性又称为一个文件的元数据,因此如果一个文件,内容为空,这个文件依然要占据磁盘空间。 1.2 文件在哪里 一个文件,如果没有被打开ÿ…...
程序代码篇---python向http界面发送数据
文章目录 前言 前言 本文简单接受了python向http界面发送数据...
【iOS】探索消息流程
探索消息流程 Runtime介绍OC三大核心动态特性动态类型动态绑定动态语言 方法的本质代码转换objc_msgSendSELIMPMethod 父类方法在子类中的实现 消息查找流程开始查找快速查找流程慢速查找流程二分查找方法列表父类缓存查找 动态方法解析动态方法决议实例方法类方法优化 消息转发…...
院校机试刷题第六天:1134矩阵翻转、1052学生成绩管理、1409对称矩阵
一、1134矩阵翻转 1.题目描述 2.解题思路 很简单的模拟题,甚至只是上下翻转,遍历输出的时候先把最下面那一行输出即可。 3.代码 #include <iostream> #include <vector> using namespace std;int main() {int n;cin >> n;vector&l…...
DeepSeek在简历筛选系统中的深度应用
一、多模态解析引擎的技术突破 1.1 复杂格式的精准解析 针对简历格式多样性挑战,DeepSeek采用三级解析架构: 格式标准化层:基于Transformer的DocParser模型支持200+种文档格式转换视觉特征提取:使用改进的YOLOv8进行证书印章识别(mAP@0.5达93.7%)语义重构模块:通过注意…...
c++多线程debug
debug demo 命令行查看 ps -eLf|grep cam_det //查看当前运行的轻量级进程 ps -aux | grep 执行文件 //查看当前运行的进程 ps -aL | grep 执行文件 //查看当前运行的轻量级进程 pstree -p 主线程ID //查看主线程和新线程的关系 查看线程栈结构 pstack 线程ID 步骤&…...
【回溯 剪支 状态压缩】# P10419 [蓝桥杯 2023 国 A] 01 游戏|普及+
本文涉及知识点 C回溯 位运算、状态压缩、枚举子集汇总 P10419 [蓝桥杯 2023 国 A] 01 游戏 题目描述 小蓝最近玩上了 01 01 01 游戏,这是一款带有二进制思想的棋子游戏,具体来说游戏在一个大小为 N N N\times N NN 的棋盘上进行,棋盘…...
CUDA 纹理入门
一、什么是CUDA纹理 CUDA纹理是NVIDIA GPU提供的一种特殊内存访问机制,它允许高效地访问和过滤结构化数据。纹理内存最初是为图形渲染设计的,但在通用计算(GPGPU)中也很有用。 二、纹理内存的优势 缓存优化:纹理内存有专用的缓存,适合空间局部性好的访问模式 硬件过滤:支…...
大模型微调步骤整理
在对深度学习模型进行微调时,我通常会遵循以下几个通用步骤。 第一步是选择一个合适的预训练模型。PyTorch 的 torchvision.models 模块提供了很多经典的预训练模型,比如 ResNet、VGG、EfficientNet 等。我们可以直接使用它们作为模型的基础结构。例如,加载一个预训练的 Re…...
【GPT入门】第39课 OPENAI官方API调用方法
【GPT入门】第39课 OPENAI官方API调用方法 1. OPENAI 免费API2. openai调用最简单的API3.apiKey提取到环境变量 1. OPENAI 免费API 需要科学上网,可以调用 gpt-4o-mini 的 api, 使用其它旧的GPT,反而可能需要收费,例如 gpt-3.5-turbo 2. op…...
【DeepSeek论文精读】11. 洞察 DeepSeek-V3:扩展挑战和对 AI 架构硬件的思考
欢迎关注[【AIGC论文精读】](https://blog.csdn.net/youcans/category_12321605.html)原创作品 【DeepSeek论文精读】1. 从 DeepSeek LLM 到 DeepSeek R1 【DeepSeek论文精读】7. DeepSeek 的发展历程与关键技术 【DeepSeek论文精读】11. 洞察 DeepSeek-V3ÿ…...
MySQL事务的一些奇奇怪怪知识
Gorm事务有error却不返回会发生什么 Gorm包是大家比较高频使用。正常的用法是,如果有失败返回error,整体rollback,如果不返回error则commit。下面是Transaction的源码: // Transaction start a transaction as a block, return …...
C语言内存函数与数据在内存中的存储
一、c语言内存函数 1、memcpy函数是一个标准库函数,用于内存复制。功能上是用来将一块内存中的内容复制到另一块内存中。用户需要提供目标地址、源地址以及要复制的字节数。例如结构体之间的复制。 memcpy函数的原型是:void* memcpy(void* …...
Power BI Desktop运算符和新建列
1.运算符 运算符 含义 加 - 减 * 乘 / 除 ^ 幂 运算符 含义 等于 > 大于 < 小于 > 大于等于 < 小于等于 <> 不等于 运算符 含义 && 与 || 或 not 非 & 字符串连接 in 包含 not in 不包含 2.新建列 …...
windows 安装gdal实现png转tif,以及栅格拼接
windows 安装gdal实现png转tif,以及栅格拼接 一、安装gdal 网上有很多安装gdal的方法,此处通过osgeo4w安装gdal 1.下载osgeo4w 下载地址 https://trac.osgeo.org/osgeo4w/ 2、安装osgeo4w exe文件安装,前面部分很简单,就不再…...
【嵙大o】C++作业合集
参考: C swap(交换)函数 指针/引用/C自带-CSDN博客 Problem IDTitleCPP指针CPP引用1107 Problem A编写函数:Swap (I) (Append Code)1158 Problem B整型数据的输出格式1163 Problem C时间:24小时制转12小时制1205…...
论信息系统项目的采购管理
论信息系统项目的采购管理 背景一、规划采购管理二、实施采购三、控制采购结语 背景 某市为对扶贫对象实施精确识别、精确帮扶、精确管理,决定由民政部门牵头,建设家庭经济状况分析及市、县(区)、镇(街)三级…...
创建型:单例模式
目录 1、核心思想 2、实现方式 2.1 饿汉式 2.2 懒汉式 2.3 枚举(Enum) 3、关键注意事项 3.1 线程安全 3.2 反射攻击 3.3 序列化与反序列化 3.4 克隆保护 4、适用场景 1、核心思想 目的:确保一个类仅有一个实例 功能:…...