嵌入式Linux开发实战:从单片机到系统构建与调试进阶

【Qt-4】QT基于qhttp-server搭建http服务器 QT搭建http服务器 阅读详情

1. 项目概述:一个普通人的嵌入式逆袭起点

26岁,月薪7k,在一线城市挣扎,这大概是很多初入嵌入式行业的同行都经历过的阶段。我就是从那个阶段过来的,用了不到三年的时间,薪资从7k跳到了30k。这不是什么天赋异禀的故事,更像是一个普通工程师在摸清行业脉络、补齐关键技能后,水到渠成的结果。很多人问我嵌入式这条路怎么走,网上有各种“学习路线图”,但那些图往往只告诉你“要学什么”,却没告诉你“为什么学”以及“学了怎么用”。今天,我就结合自己的亲身经历,拆解一下从入门到进阶,那些真正让我薪资翻倍的实战技能和认知转变。嵌入式不是一个孤立的“写代码”工种,它横跨硬件、软件、系统、算法,你的价值取决于你能在哪个链条上解决多复杂的问题。7k的时候,我眼里只有单片机和外设;30k的时候,我关注的是系统稳定性、功耗优化、量产成本和团队协作。这篇文章(上篇)会重点聚焦在 技术栈的纵向深化与横向拓展 ,这是实现第一次薪资跃迁的核心。

2. 技术栈构建:从单片机到Linux系统的跨越

我最初的工作是STM32开发,也就是大家常说的“单片机”层面。7k的薪资,对应的就是完成功能模块:用HAL库或者标准库驱动个UART、SPI、ADC,实现业务逻辑。这个阶段的关键是“熟练”,但天花板也很明显。我意识到,如果只停留在调通外设、实现功能的层面,很难有大的突破。真正的转折点始于我主动啃下了 嵌入式Linux 这块硬骨头。

2.1 为什么是嵌入式Linux?

当时公司有个老项目需要从裸机迁移到Linux平台,任务艰巨,没人愿意接。我主动请缨,原因很简单:这是市场上高薪岗位的普遍要求。智能家居、工业网关、车载娱乐系统、网络设备,但凡复杂一点的嵌入式产品,几乎都跑在Linux上。它提供了进程管理、内存管理、网络协议栈、丰富的文件系统和驱动框架,让你能专注于应用开发,而不是重复造轮子。从单片机到Linux,你面对的不再是单一的 main() 函数循环,而是一个多进程、多线程的微型服务器。这种思维模式的转变,是薪资提升的第一道分水岭。

注意:不要被“Linux”吓到。嵌入式Linux开发和服务器Linux运维是两码事。我们的核心是 交叉编译、内核裁剪、根文件系统构建、驱动开发 和 上层应用编程 。一开始不需要你精通内核源码,但必须理解整个系统从源码到镜像的构建流程。

2.2 核心技能拆解:Buildroot/Yocto vs. 纯手动

搭建嵌入式Linux开发环境是第一个拦路虎。网上教程五花八门,很容易让人懵。这里必须理清一个概念: 构建系统 。早期我跟着教程,手动用 busybox 制作根文件系统,用 crosstool-ng 编译工具链,再编译内核。这个过程极其繁琐,且难以复用和团队协作。直到我接触了 Buildroot 和 Yocto 。

  • Buildroot :我的入门首选。它像是一个“一键生成”系统。你通过 make menuconfig 进行图形化配置,选择目标架构、内核版本、需要的工具(如 gcc , gdb )、库(如 alsa-lib , openssl )和应用程序(如 dropbear , lighttpd ),然后一条 make 命令,它就能自动下载源码、打补丁、配置、编译,最终生成完整的内核镜像、根文件系统以及工具链。它简单、快速,非常适合产品相对固定、不需要频繁定制包版本的中小型项目。我第一个成功的Linux板子跑起来的系统就是用Buildroot构建的,这给了我巨大的信心。
  • Yocto :更强大,也更复杂。它不是一个工具,而是一个框架和一套方法论。Yocto通过“层(layer)”和“配方(recipe)”来管理所有软件包,能构建出高度定制化、可重复性极强的Linux发行版。它适合大型、产品线复杂、对软件版本和许可证管理有严格要求的公司(比如很多车规级、工业级产品)。学习曲线陡峭,但一旦掌握,你就是团队里的核心资产。

我的建议是: 新手从Buildroot实战开始,快速获得正反馈;在有项目经验后,必须深入理解Yocto的核心思想 ,至少能读懂 bitbake 配方,因为很多大厂都用它。这直接决定了你在面试时,是“会用Linux”还是“懂Linux系统构建”。

2.3 驱动开发:从看门狗到字符设备

在Linux下,硬件操作不再直接读写寄存器,而是通过 驱动 。这是嵌入式Linux工程师的硬核技能。我从最简单的“看门狗驱动”开始练手。在STM32上,看门狗可能就几行配置代码;在Linux下,你需要:

  1. 编写一个字符设备驱动框架( file_operations )。
  2. 在 open 、 release 、 ioctl 等函数中实现具体的硬件操作逻辑。
  3. 将驱动编译成模块( .ko 文件)或直接编入内核。
  4. 编写对应的用户空间测试程序,通过 ioctl 与驱动交互。

这个过程让我深刻理解了 用户空间与内核空间的边界 、 内存映射(mmap) 、 中断处理(顶半部/底半部) 、 设备树(Device Tree) 等核心概念。设备树尤其重要,它取代了老旧的内核板级文件,用文本文件( .dts )描述硬件资源,使得内核源码与具体板卡解耦。学会修改和调试设备树,是解决硬件兼容性问题的关键。

3. 开发效率革命:VSCode与调试艺术

当项目代码量从单片机的几千行暴涨到Linux应用的数万甚至数十万行时,一个好的开发环境能极大提升效率和幸福感。我彻底抛弃了Source Insight和简单的编辑器,投入了 VSCode 的怀抱。

3.1 VSCode嵌入式开发配置实战

网上有很多STM32的VSCode配置教程,但针对嵌入式Linux交叉编译环境的完整配置方案不多。我的配置核心是以下几个扩展和设置:

  1. C/C++扩展 (Microsoft) :这是核心。关键不在于安装,而在于配置 c_cpp_properties.json 。

    {
        "configurations": [
            {
                "name": "Linux-ARM",
                "includePath": [
                    "${workspaceFolder}/**",
                    // 这里指向你的交叉编译工具链的头文件路径,例如:
                    "/opt/toolchain/gcc-linaro-arm-linux-gnueabihf/arm-linux-gnueabihf/include",
                    // 以及你构建的Linux内核头文件路径:
                    "/path/to/your/linux/build/usr/include"
                ],
                "defines": ["__ARM_ARCH_7A__", "__LINUX__"],
                "compilerPath": "/opt/toolchain/gcc-linaro-arm-linux-gnueabihf/bin/arm-linux-gnueabihf-gcc",
                "cStandard": "c11",
                "cppStandard": "c++17",
                "intelliSenseMode": "gcc-arm"
            }
        ],
        "version": 4
    }
    

    正确配置后,代码跳转、自动补全、错误检查才会基于目标平台(ARM)的库工作,否则会提示一堆找不到头文件的错误。

  2. CMake Tools扩展 :如果你的项目使用CMake(现代嵌入式Linux应用的趋势),这个扩展必不可少。它能帮你配置、构建、调试CMake项目。你需要设置 CMake: Generator 为 Unix Makefiles ,并指定工具链文件( -DCMAKE_TOOLCHAIN_FILE=arm-linux-gnueabihf.cmake )。

  3. Remote - SSH扩展 :这是王牌功能。我通常在Ubuntu物理机或强劲的虚拟机上做编译,在Windows笔记本上用VSCode写代码。通过SSH扩展,我可以直接连接到远程Linux服务器,像操作本地文件一样编辑代码,所有插件(如C/C++智能感知)都在远程服务器上运行,完美解决环境问题。

3.2 调试:从printf到GDB+gdbserver

printf 大法在复杂系统调试中效率太低。必须掌握 交叉调试 。我的标准流程是:

  1. 在目标板(开发板)上启动 gdbserver : gdbserver :2345 ./your_app 。
  2. 在主机VSCode中,配置 launch.json ,使用交叉编译工具链里的 gdb (如 arm-linux-gnueabihf-gdb ),并指定目标IP和端口。
  3. 在VSCode中设置断点,启动调试,即可实现源码级单步调试、查看变量、查看内存。

这个技能在排查内存泄漏、死锁、段错误等疑难杂症时,是终极武器。一次成功的复杂问题调试经历,在面试中讲出来,比罗列十个项目都有说服力。

4. 项目实战深化:从智能小车到产品思维

学习路线图上的知识点是散的,项目才能把它们串起来。我利用业余时间,基于树莓派(相当于一个高性能的ARM开发板)做了一个 智能小车 项目。这个项目看似简单,却几乎覆盖了嵌入式Linux应用开发的所有核心环节:

  1. 系统定制 :用Buildroot为树莓派构建一个最精简的Linux系统,只包含必要的驱动和库,去掉所有图形界面,系统启动时间优化到5秒以内。这个过程锻炼了我对内核配置、文件系统裁剪、启动脚本( inittab , rcS )的理解。
  2. 驱动应用 :通过Python或C语言调用 wiringPi 或直接操作 /sys/class/gpio 来控制电机驱动模块(如L298N),实现小车前进后退。这巩固了Linux下硬件控制的基本方法。
  3. 网络通信 :在小车上运行一个TCP/UDP服务器,用手机APP或电脑客户端发送控制指令。我实现了简单的协议解析,这涉及到socket编程、多线程/多进程处理并发连接。
  4. 视频流 :使用 libcamera 或 V4L2 接口捕获USB摄像头或树莓派相机画面,通过 FFmpeg 编码,再利用 live555 或 GStreamer 搭建一个RTSP流媒体服务器,在手机端实时观看小车视角。这部分涉及多媒体框架,难度较大,但做出来成就感极高。
  5. 简单AI功能 :在树莓派上部署一个轻量级AI模型(如使用TensorFlow Lite或PyTorch Mobile),实现简单的图像识别,比如识别交通标志牌,让小车做出反应。这是切入 嵌入式AI 领域的绝佳敲门砖。

这个项目不再是一个“实验”,而是一个 微型产品 。我开始思考:电源管理(如何省电?)、系统稳定性(死机了怎么办?看门狗如何设计?)、用户交互(如何配置Wi-Fi?)、OTA升级(如何远程更新程序?)。这种 产品思维 ,是区分“代码工人”和“工程师”的关键。在面试中,我讲述这个项目时,重点不是“我实现了什么功能”,而是“我遇到了什么问题(比如视频流卡顿)”、“我如何分析问题(查CPU占用、网络带宽)”、“我尝试了哪些解决方案(调整编码参数、改用UDP)”、“最终如何权衡选择(牺牲一点画质保证实时性)”。这完美呼应了下一章要说的面试准备。

5. 面试突围:八股文与项目表达的平衡术

薪资跃迁最终要经过面试这一关。嵌入式面试离不开所谓的“八股文”,但死记硬背绝对不行。我的策略是: 用项目经验去理解八股文,用八股文的知识体系去升华项目经验 。

5.1 经典问题深度剖析

面试官问“进程和线程的区别”,标准答案是:进程是资源分配单位,线程是CPU调度单位;进程有独立地址空间,线程共享进程地址空间。这不够。我会结合项目展开:

  • “在我的智能小车项目中,视频流服务器是一个进程,它又创建了多个线程:一个线程专门负责从摄像头抓取帧(I/O密集型),一个线程负责编码(CPU密集型),还有一个线程负责网络发送。这样设计是因为线程间共享视频数据缓冲区,通信效率高。但我也很小心地用了互斥锁来保护共享缓冲区,避免数据竞争。如果我用多进程,共享数据就需要用共享内存或消息队列,复杂度就上来了,但好处是某个模块(比如编码线程)崩溃了不会拖垮整个视频服务进程。”
  • 接着他可能会问“那线程崩溃了怎么办?” 这就可以引出进程间通信、守护进程、系统监控和自动重启等设计。

再比如“中断的上半部和下半部”。我会结合之前写的看门狗驱动或者网络驱动例子:“在网卡驱动中,收到数据包触发硬中断,我在上半部里只做最紧急的事——把数据从硬件FIFO快速拷贝到内核的缓冲区( sk_buff ),然后立刻触发一个软中断(作为下半部)。在下半部(比如 net_rx_action )中,才去进行协议栈的复杂处理。这是为了保证中断响应速度,防止长时间关中断导致系统丢中断。”

5.2 项目介绍的结构化表达

介绍项目时,切忌平铺直叙。我用 STAR法则 来组织语言:

  • Situation(情境) :项目背景是什么?要解决什么问题?(例如:“为了解决传统遥控小车距离受限、无法实时观察环境的问题,我独立开发了一个基于树莓派的网络智能小车平台。”)
  • Task(任务) :我的具体职责和目标是什么?(“我的目标是实现小车的远程控制、实时视频传输和简单的自动避障功能。”)
  • Action(行动) :我具体做了什么?这里要嵌入技术关键词。(“我采用Buildroot定制了最小Linux系统以优化启动速度。使用多线程编程模型,主线程处理控制指令,单独线程通过V4L2接口抓取视频并用FFmpeg编码。为了降低延迟,我对比了TCP和UDP,最终在局域网内采用UDP传输视频流,并实现了简单的丢包重传机制。在AI部分,我选用TensorFlow Lite框架,将预训练的MobileNet模型量化后部署,实现了对几种常见物体的识别。”)
  • Result(结果) :取得了什么成果?最好有量化指标。(“最终系统启动时间从默认的20秒减少到5秒,视频延迟控制在300ms以内,在树莓派4B上整体CPU占用率低于70%。该项目代码已在GitHub开源,获得了XX个star。”)

5.3 那些容易踩的坑

  1. 盲目追求广度,忽视深度 :简历上罗列一堆“了解”、“熟悉”。面试官随便挑一个深入问,比如“你用过I2C,那在Linux驱动里,I2C设备是如何注册和匹配的?设备树里对应的节点怎么写?”就露馅了。不如把一两个项目做深做透。
  2. 对底层原理一知半解 :知道内存分配用 malloc ,但说不清 malloc 在Linux下是调用 brk 还是 mmap ?用户空间的内存和内核空间的内存有什么关系?虚拟地址到物理地址的转换过程?这些底层知识是应对大厂面试的利器。
  3. 忽视软技能和系统思维 :嵌入式不是孤岛。你是否考虑过代码的可测试性?如何设计日志系统方便排查现场问题?如何进行功耗测试和优化?有没有版本管理和持续集成的意识?这些“非直接编码”的能力,往往是决定你能否胜任更高阶职位的关键。

我从7k到30k的路上,最大的感触是:嵌入式这条路, 广度决定你能做什么,深度决定你能做多好,而将技术转化为稳定、可靠、可量产的产品的能力,直接决定了你的市场价值 。下篇我会重点讲讲在达到30k这个平台后,如何向系统架构师、技术专家方向突破,包括深入内核与驱动优化、拥抱Rust等现代语言、以及嵌入式AI(TinyML)的落地实践。这条路没有捷径,但每一步都算数。

EXCEL VBA从入门到精通 前言 本书通过丰富的实例和案例,帮助读者更好地理解和应用Excel VBA编程,同时也介绍了常用的工具、资源、社区和协作平台等,方便读者进行进一步的学习和开发。我强烈推荐这本书给所有希望学习和掌握Excel VBA编程的读者。多样化的资源和工具介绍:本书介绍了丰富的工具和资源,包括官方文档、在线教程、代码库、论坛、博客等,方便读者进行进一步的学习和开发。详细的讲解和丰富的示例:本书从语法和对象开始讲解,通过丰富的实例和案例,帮助读者更好地理解和应用Excel VBA编程。第一节:什么是VBA 5。 阅读详情

相关推荐

飞牛Docker部署Zerotier后无法访问?三步搞定SSH权限配置!

本文详细解析了在飞牛NAS上通过Docker部署Zerotier后无法访问的常见问题及解决方案。重点介绍了SSH权限配置、tun模块加载和Docker容器权限设置等关键步骤,帮助用户快速解决虚拟网络接口的权限问题,确保Zerotier节点间的正常通信。

qq_27496129的博客 793

oracle9i 恢复数据库,Oracle9i RMAN备份及恢复步骤(zt)

1、切换服务器归档模式,如果已经是归档模式可跳过此步:%sqlplus /nolog (启动sqlplus)SQL> conn / as sysdba (以DBA身份连接数据库)SQL> shutdown immediate; (立即关闭数据库)SQL> startup mount (启动实例并加载数据库,但不打开)SQL> alter database archivelo...

weixin_30015183的博客 202

TEM图像处理实战指南:从基础操作到金属材料分析

本文提供了一份全面的透射电镜(TEM)图像处理实战指南,涵盖从基础操作到金属材料深度分析的全流程。重点讲解了TEM图像预处理、选区电子衍射(SAED)标定、高分辨像(HRTEM)分析及STEM图像应用等核心技能,并结合金属材料(如铝合金、钢)的析出相鉴定、位错分析和界面结构研究等实际案例,帮助研究者从原始数据中准确提取晶体结构、缺陷及成分信息。

weixin_29284201的博客 210

Oracle备份与恢复案例 (zt)

一. 理解什么是数据库恢复 当我们使用一个数据库时,总希望数据库的内容是可靠的、正确的,但由于计算机系统的故障(硬件故障、软件故障、网络故障、进程故障和系统故障)影响数据库系统的操作,影响数据库中数据的正确性,甚至破坏数据库...

cuixie2370的博客 124

Plant simulation、Flexsim、Automod、Emulate3D、VisuaComponent仿真软件对比

E3D在行业内以展示效果好,入门阶段易学易用人机界面友好,电控仿真连接方便不需要借助其他第三方软件,E3D平台开放度较高用户DIY程度强,数据分析功能针对要评定对象的KPI的可根据项目或者使用者需求进行评定。3.支持导入导出多种格式的文件,比如dwg、dxf、fbx、obj、3ds、step、stp、iges、skp、stl、wrl、 bmp 等等。3.软件自带模型组件库程序代码开放,用户可以引用、修改、拷贝,按照自己的逻辑修改模型,或者创建模型并保存到组件库与别人共享。3. 支持导出布局图片。

qq_43342303的博客 3580

Figma到Axure一键转换:Axhub Extension保姆级教程(含常见问题解决)

本文提供Axhub Extension的保姆级教程,详细讲解如何将Figma设计稿一键转换为Axure高保真交互原型。教程涵盖环境准备、核心转换四步走流程,并重点解决JSON导入失败、样式错乱、复杂组件转换等常见问题,旨在打通Figma与Axure之间的数据孤岛,大幅提升设计师和产品经理的原型制作效率。

night的博客 1576

zt_oracle10g rac real application cluster ocr and voting disk备份恢复

http://blog.youkuaiyun.com/tianlesoftware/article/details/5467273 ...

126

HDI盲埋孔设计规范:高速PCB信号完整性落地指南

盲埋孔是高密度互连(HDI)PCB实现高速信号完整性的关键技术,其本质是通过控制过孔stub长度、优化回流路径和提升布线密度,解决GHz级信号在传统通孔结构下出现的谐振、串扰与EMI超标问题。其设计核心在于叠层物理约束、电气参数建模与工艺能力协同,涉及stub长度计算、反焊盘尺寸推导、孔壁粗糙度Rz控制等关键指标。广泛应用于DDR4、PCIe Gen4、USB3.2等高速接口的PCB设计中,尤其在车载ADAS、5G基站及FPGA载板等对SI/PI要求严苛的场景中成为刚性门槛。

weixin_34416754的博客 437

oracle每天一次差异备份,Oracle的差异增量备份和累积增量备份(zt)

在rman增量备份中,有差异增量和累积增量的概念1、概念差异增量:是备份上级及同级备份以来所有变化的数据块,差异增量是默认增量备份方式累积增量:是备份上级备份以来所有变化的块因为累积增量是备份上级备份以来所有变化的数据块,所以累积增量需要更多的备份时间,同时需要较小的恢复时间;而差异增量正好相反,它可以备份同级备份以来变化的数据块。所以会减少备份时间,但需要更多的恢复时间.在oracle 9中增量...

weixin_39746282的博客 314

【RL in VLA】VLA中的强化学习

本文提出了一种名为 Reinforcement Learning Distilled Generalist(RLDG) 的方法,通过强化学习生成高质量训练数据来微调机器人基础模型。通过在多个精确操作任务上的实验,我们证明了 RLDG 在成功率和泛化能力上显著优于使用人类演示的传统微调方法。RLDG 不仅减少了对人类演示数据的依赖,还展示了在复杂多阶段任务中的灵活性和有效性。

三木今天学习了嘛の博客 2257

C#上位机开发:西门子/三菱PLC通信,新手直接上手

对着西门子S7协议文档看半天,连“DB块地址怎么写”都搞不懂;写三菱PLC代码时,分不清MC协议和Modbus的区别,代码改来改去连不上;好不容易跑通代码,换个PLC型号又报错,不知道哪里出问题;后来发现,新手学PLC通信根本不用先啃协议文档——先跑通“能通信”的代码,再慢慢理解底层逻辑,效率至少提升3倍。西门子PLC:用S7NetPlus库(新手最友好),实现以太网通信,支持S7-200 SMART/1200/1500;

这里只有干货:从 Modbus 通信到 MES 对接,从 YOLO 训练到工控机部署,带你搞定工业软件开发全流程。 880

oracle bfile备份,整理的一些oracle备份笔记 (zt)

1.联机热备份的一般步骤:a.设置数据库为archivelog模式startup mount;alter system set log_archive_dest_n='location=d:oraclearchive'; --修改spfile设置归档目录alter database archivelog ;archive log start;alter database open;arvchive...

weixin_39579127的博客 152

yolov8 PTQ和QAT量化实战(源码详解)

量化():是指将高精度浮点数(FP32)转换为低精度(8bit或4bit)整数的过程,它是模型部署中的一种非常重要的优化方法,可以在较少的精度损失下,大幅提供神经网络的效率和性能。目前主流的神经网络量化方式有PTQ和QATPTQ是训练后量化(),无需数据集和训练,直接量化模型权重QAT是量化感知训练(),量化后需要在数据集上继续微调训练。QAT过程中,我们首先需要选择哪些层需要进行finetune训练,并利用FP32对应层的输出作为监督进行训练。

@bangbang的博客 5327

controlfile文件的备份与恢复(zt)

http://hi.baidu.com/edeed/blog/item/809fb6fd52bdfd1008244d41.htmlOracle的控制文件controlfile有以下4种备份恢复方法。注意:本文模拟controlfile故障均是直接删除控制文件。1.    使用RMAN工具备份恢复controlfileRMAN参数选项”CONFIGURE CONTROLFILE AUTOBACK

oracel数据库、数据仓库、JAVA开发的专栏 824

汉书HE8,好用的汇编代码编写工具

汉书HE8,好用的汇编代码编写工具早期编写汇编代码所用功能强大

WINCC7.3破解文件

WINCC7.3硬件够破解文件,有需要的下载!WINCC7.3硬件够破解文件,有需要的下载!

冷备份+归档日志的恢复[zt]

论坛上有人问起,能用以前的冷备份+冷备份以来的所有归档日志将数据库恢复到当前状态么?原帖地址:http://www.itpub.net/676840.html ref: http://ningoo.itpub.net/post/2149/232909 冷备份是一致的,如果冷备份包含所有的datafile,controlfile,online redo logfile,并且将所有的这些文件全...

weixin_30488313的博客 96

win10 跳过U8环境检测的IE WebControls.rar

win10 安装u8的时候 提示IE WebControls 不通过,这个工具可以欺骗u8的检查。 跳过U8环境检测的IE WebControls。提示导入失败后,重新检测通过。

Oracle DataGuard standby库日常管理(zt)

一、日常管理1.1 备用服务器的管理模式与只读模式1、启动到管理模式SQL>shutdown immediateSQL>startup nomount pfile=?/dbs/inittestdbsdby.oraSQ...

cuichanmai5324的博客 206

LinePhone3.2.7(android端最新版本) sip客户端

SIP客户端For android:LinePhone3.2.7(最新版本),官网地址:http://www.linphone.org/

简单冷备份恢复操作步骤(ZT)

OS:WINDOWS 2000,WINDOWS2003 ORACLE: 9201 冷备份数据必须是数据库不在open状态下。 以下步骤会给出详细的过程: 1): 关闭DB : shutdown immediate; 2):copy oradata目录下的所有文件, 包括数据文件, 控制文件,redo,等,还需要copy 密码文件 在目录ora92下 的database 中的pwd 文件...

weixin_30244889的博客 75

Oracle的差异增量备份和累积增量备份(zt)

在rman增量备份中,有差异增量和累积增量的概念 1、概念 差异增量:是备份上级及同级备份以来所有变化的数据块,差异增量是默认增量备份方式 累积增量:是备份上级备份以来所有变化的块 因为累积增...

101

oracle联机热备份的原理及rman增量备份原理(zt)

要求归档模式 SQL>; archive log list; Database log mode Archive Mode Automatic archival Ena...

cuixie2370的博客 128

OCP DBA考证轻松过关详解(ZT)

终于把 OCP DBA 的课程都考完了,累啊!总的来说ORACLE的认证值得考。本人有CCNP、MCSE证书,但通过DBA的考试,觉得不仅加深了对现代数据库的了解,还丰富了计算机科学的知识结构。我觉得,从某种角度来说,ORACLE数据库甚至具备一些操作系统的功能。 ORACLE的考试,要记住的东西相当多,考试要求基本上是以原始的命令行方式,而不是图形界面操作,因此表的名字,以及相应...

abc123098098的博客 177

rman大全 (zt)

rman大全1:to back the controlfile using rman备份控制文件run{ allocate channel dev1 type disk format 'c:backup%U'; backup c...

cuifan5176的博客 147

Oracle学习的一些建议 zt

学习Oracle是一个漫长艰辛的过程。如果没有兴趣,只是被迫学习,那么是很难学好的。学习到一定程度的时候,要想进一步提高,就不得不接触很多Oracle之外的东西,如Unix,如网络、存储等。因此,要真的决心学好Oracle,就一...

cuixiejiao6874的博客 154

ZT 用早期的冷备份和以后的归档日志是否能将数据恢复到归档日志结尾?

http://www.itpub.net/viewthread.php?tid=220971&extra=page%3D1%26amp%3Bfilter%3Dtype%26amp%3Btypeid%3D2&pag...

cuantiaowei3015的博客 94

Oracle面试试题及答案(zt)

 =========================================================== 作者: JuliaYe2008(http://juliaye2008.itpub.net)发表于:2008.03.20 15:43分类: Oracle 出处:http://juliaye2008.itpub.net/post/37038/457758----------

zhaosg198312的专栏 2421

rman好在哪里(ZT)

rman好在哪里(ZT)http://inthirties.com:90/thread-1250-1-1.html rman作为oracle强大的备份、恢复工具,确实让dba们省了不少心,她的优势究竟在哪里呢?1、备份。 和普通热备相比,rman的方式非常简单。如果参数设置好了,甚至只需backup database这一句即可。而且rman的优化功能可以

855

Oracle各版本区别(zt)

Oracle EE(企业版, Enterprise Edition), SE(标准版, Standard Edition), SE1(标准版1, Standard Edition One) 区别是什么?...

cuixie2370的博客 582
上一篇: AI视频生成本地部署实战:从Stable Video Diffusion到Seedance生态搭建
下一篇: 数学建模竞赛制胜关键:线性代数核心板块与实战应用全解析
cuixie2370
博客等级 码龄10年 17粉丝 842原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符  | 博主筛选后可见
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值