
简介这是一份 Oracle Database 11g Express EditionXE的 Windows x64 安装资源包面向需要在本地搭建轻量级数据库环境的学习者、开发者与运维初学者。XE 版本免费、部署简单且占资源较少适合入门练习、开发测试或小型项目使用解决下载渠道有限、安装配置不便等问题。压缩包共 5 个文件以 iss 安装响应脚本、sql 升级脚本和 exe 安装程序为主其中 iss 文件分别对应安装、修复与卸载流程sql 脚本可用于生成必要的数据库初始化内容整体包体约 316.55MB。目前已有 2780 人学习下载资源结构清晰便于按需选用。通过该资源读者可获得完整的 Oracle XE 11g 安装与配置素材支持命令行静默安装与响应文件定制也能据此理解安装、升级、卸载各环节的关键步骤快速搭建本地实验环境。1. 这个压缩包到底是什么为什么你有可能会用到它看到“OracleXE112_Win64.zip”这个文件名第一反应通常有两种要么是数据库老手要给测试环境补一个能用的实例要么就是刚入门的开发者被各种教程指路去下载 Oracle 数据库结果搜出来一堆稀奇古怪的压缩包。这里先把这个文件名的含义拆清楚OracleXE 是 Oracle Database 11g Express Edition 的缩写也就是 Oracle 11g 快捷版112 代表 11.2.0.x 这个内部版本号Win64 说明是 64 位 Windows 平台的安装包最后的 zip 后缀意味着它不是直接双击就能用的安装程序而是需要先解压通常在解压后会得到一个 DISK1 目录里面才有真正的 setup.exe。OracleXE 在 Oracle 的产品线里定位很特殊它本质上是官方提供的免费入门级数据库专门给学习、开发、测试场景用的。和动不动就要好几个 GB、安装过程繁琐的企业版相比Express Edition 只有几百 MB 的规模安装快启动快占资源也少得多。更重要的是它的功能覆盖了大多数日常开发需要的核心特性SQL 查询、PL/SQL 存储过程、触发器、视图、序列、物化视图、Flashback、分区表部分限制等等这些你日常写业务代码时能遇到的大部分东西它都有。它和完整版 Oracle 使用的是同一套 SQL 引擎和优化器也就是说你在 XE 上写的 SQL、建的表结构未来迁移到企业版环境基本不会遇到不兼容的情况。那什么人会需要这个压缩包我大致归纳了三类。第一类是高校学生和转行学数据库的人。Oracle 在数据库领域的地位不用多说很多教材和课程用的就是 Oracle 的 SQL 语法但完整版在企业里的许可费用高、安装复杂学生党根本没必要折腾。XE 免费、轻量拿来练习建表、写查询、学 PL/SQL 完全够用。第二类是后端开发工程师。工作中公司里的数据库是 DBA 管的权限卡得很死不能随便建表、不能杀会话、看不到执行计划细节。本地装一个 XE不管是联调接口、验证 SQL 性能还是模拟生产环境的数据结构都非常方便。特别是使用 Java、Python、.NET 技术栈的朋友XE 这种“自包含”的数据库非常适合做本地开发环境。第三类是做小型项目部署的人。XE 允许单实例最多 11GB 的用户数据存储对于数据量不大的内部系统、工具类应用来说完全够用了。因为它的部署包对系统配置要求低不需要单独买一台高配服务器直接扔在普通的 Windows 机器上就能跑运维成本极低。如果你不属于这三类人群但看到这个文件还是想试试那也没有问题。这篇文章接下来的内容就是把你从“双击 setup.exe”那一刻之后的所有疑问都捋一遍包括安装、配置、联调、排错这些环节。我尽量把每一步的前因后果都讲清楚而不是只给你一份“照着点下一步”的傻瓜教程。2. 安装前后的关键准备与完整安装过程2.1 下载完别急着双击先检查这几项很多人在安装 Oracle 的过程中出问题其实根子不在安装本身而是前置环境没弄好。解压那个 zip 之前我建议你先花两分钟确认三件事。第一确认你的系统版本。OracleXE112_Win64 只支持 64 位 Windows包括 Windows 7 SP1 以上、Windows Server 2008 R2 以上、Windows 10/11 的 64 位版本。如果你是 32 位系统这个包根本装不上得去找名字里带 x86 的版本。怎么确认系统位数右键“此电脑”选“属性”看“系统类型”那一栏就行。第二关掉杀毒软件和 Windows Defender 的实时保护。这一步说起来有点像玄学但我真的见过好几台机器卡在安装到一半突然报错最后发现是杀毒软件把 Oracle 安装过程里的临时文件给隔离了。Oracle 的安装程序会在系统盘写大量临时文件而且它的一些服务运行方式在杀毒软件眼里“行为可疑”。装完之后再开回来就行这个建议只对安装过程有效。第三检查端口占用。OracleXE 装好后默认要占用两个端口1521 给数据库监听器8080 给内置的 HTTP 服务用于访问 Oracle Application Express 管理界面。其中 8080 端口在开发机上非常容易被其他软件占用比如 Tomcat、Spring Boot 内嵌的 Web 服务、各种本地调试工具。如果不提前检查等装完发现 8080 被占数据库服务都正常但管理页面死活打不开就有点被动了。检查方式很简单命令行执行netstat -ano | findstr :1521 :8080如果端口被占用你需要在安装完成后修改 Oracle 的 HTTP 端口配置这个我在后面的排错章节会详细说。2.2 安装过程的逐屏拆解每个选项都代表什么准备工作做完之后把 zip 解压。这里注意一点解压路径尽量不要带中文和空格避免一些老旧的 Oracle 组件在后续使用中因为路径编码出问题。我习惯解压到 D 盘根目录下的某个文件夹比如D:\oracle_xe_setup这样待会找起来也方便。进入 DISK1 文件夹双击 setup.exe安装向导就启动了。Oracle 11g XE 的安装流程不算复杂前后大概只有几步配置但每一步都有讲究。第一步是选择安装目录。默认装到C:\oraclexe\app\oracle\product\11.2.0\server。如果你 C 盘空间紧张可以改成其他盘但我建议不要改到中文路径下。这一步对未来使用影响最大的不是安装目录本身而是你之后所有 Oracle 相关工具都会默认读取这个路径下的配置文件比如tnsnames.ora和listener.ora。第二步是设置数据库口令。这个口令就是数据库超级管理员 SYS 和 SYSTEM 的口令。安装界面上会要求填两次确认。这里要特别提醒Oracle 11g 的口令默认区分大小写而且有复杂度要求太简单的口令像123456这种安装程序会直接弹警告不让你继续。我之前遇到过有人嫌麻烦非要设一个超级简单的口令结果换来换去折腾了很久。建议直接一步到位用大小写字母加数字组合比如Admin2024_XE这种。这个口令一定要记住后面所有管理操作都要用它。第三步是 Database Configuration 页面这里会让你选择内存分配和字符集。内存那栏OracleXE 本身被官方限制为最多使用 1GB 内存SGA PGA所以你在安装界面上填再大也没用系统会自动把剩余内存留给操作系统。我建议直接把内存拉满让 Oracle 自己管理内部组件的内存分配省得后面因为内存不足出现性能问题。字符集那栏默认是 ZHS16GBK 或 AL32UTF8国内开发的话建议选 AL32UTF8理由是它兼容性更好特别是涉及到移动端、前后端对接时UTF-8 编码能避免很多乱码问题。不过要注意如果以后打算和生产环境的 Oracle 数据库频繁交互最好保持和生产库一样的字符集不然通过数据库链或者导出导入工具搬数据时会有编码转换的坑。第四步是确认页面。这里会显示前面做的所有设置的摘要确认无误后就点击安装。整个安装过程大概五到十分钟取决于机器性能。期间屏幕上会滚动一些进度条看到“安装完成”的提示后第一步就算结束了。2.3 安装完成不等于能用先确认两个 Windows 服务Oracle 在 Windows 上运行的本质是若干后台服务。安装完成后打开服务管理器WinR 输入services.msc回车你会看到下面几个和 Oracle 相关的服务服务名称作用启动类型OracleServiceXE数据库实例本身自动OracleXETNSListener监听器对外提供 1521 端口自动OracleXEClrAgent.NET CLR 支持组件手动其中前两个服务建议保持自动启动。OracleServiceXE 是数据库的核心进程它挂掉了整个数据库就不可用OracleXETNSListener 负责接收客户端的连接请求它没起来的话即使数据库进程活着你也连不进去。这两个服务在安装完成后通常会自动启动但如果你的机器开机时间长了或者中途发生过异常关机服务可能处于停止状态。这时候在服务管理器里右键手动“启动”就行。OracleXEClrAgent 这个服务比较特殊它是给数据库内部的 .NET 存储过程用的普通开发场景基本用不到。我一般直接把它禁用掉省点系统资源。如果未来真的需要写 .NET CLR 存储过程再改回来就行了。还有一个隐藏的坑很多 Windows 防火墙会把 Oracle 的端口默认拦截掉。如果是本机自己的程序连接一般不受影响但如果是局域网内的其他电脑想连你的数据库必须在防火墙入站规则里放行 1521 端口。具体操作是控制面板 → Windows Defender 防火墙 → 高级设置 → 入站规则 → 新建规则 → 端口 → TCP 1521 → 允许连接。别嫌麻烦很多人远程连不上数据库排查半天最后发现就是防火墙在作祟。3. 安装完先别急着写 SQL——核心配置与联调3.1 用 SQL*Plus 验证安装成果附带连接方式的原理安装完成、服务也确认启动了下一步要做的第一件事就是验证数据库真的能用。Oracle 自带了一个命令行工具叫 SQL*Plus路径在安装目录的bin文件夹下默认是C:\oraclexe\app\oracle\product\11.2.0\server\bin\sqlplus.exe如果你在安装时改过路径就去对应的 bin 目录找。为了方便以后使用我建议把这个 bin 目录加到系统环境变量 PATH 里这样以后在任何命令行窗口直接输入sqlplus就能启动不用每次都写完整路径。打开命令行输入sqlplus程序会提示输入用户名和口令。先用安装时设置的口令登录system用户用户名: system 口令: [你安装时设置的口令]看到下面这个提示就说明数据库正常SQL等你敲几条命令试试select name, open_mode from v$database;如果能查询到一条记录说明数据库实例已经处于打开状态安装链路完全通畅。这一步是整个安装过程的“里程碑式验证”因为后面所有图形化工具、编程语言驱动、远程连接本质都是用各种方式重复“连到数据库”这件事。SQL*Plus 能连上说明数据库服务本身没问题后面就算遇到其他工具连接失败排查方向也清楚了——问题多半出在工具配置而不是数据库本身。连接方式这里多说一句。SQL*Plus 有好几种连接形态最常用的是几种sqlplus system/口令本机连接通过默认监听器走 1521 端口sqlplus system/口令localhost:1521/XE显式指定主机、端口、服务名sqlplus / as sysdba操作系统认证本机管理员直接以 sysdba 身份登录不需要口令第三种在数据库管理场景下非常有用特别是你忘了口令或者口令过期的时候可以用它进入系统后重新修改口令。我个人建议至少记住这三种用法日常排错大概率用得上。3.2 理解 SID、服务名、tnsnames.ora 的关系在 Oracle 的世界里有几个名词新手非常容易混淆SID、服务名Service Name、连接描述符。我见过太多人在这上面踩坑连不上数据库就归结为“Oracle 太难用”其实是没搞明白这几个概念之间的关系。SID 是数据库实例的唯一标识可以理解成数据库进程的“进程名”。OracleXE 装好后SID 固定是XE这个值对应 Windows 服务名中的 XE 后缀。服务名Service Name是数据库对外提供的“接入点标识”在连接串中通常写作XE。默认情况下服务名和 SID 是一致的但服务名的设计目的是为了让一个数据库可以对外提供多个不同的“逻辑名称”方便集群或多租户场景。XE 版本用默认的XE服务名就够了。真正让连接失败变多的是tnsnames.ora这个文件。它是 Oracle 客户端的“通讯录”把连接串的简写名映射到完整的主机、端口、服务名信息。XE 安装完成后这个文件在C:\oraclexe\app\oracle\product\11.2.0\server\network\admin目录下。打开它会看到类似下面的内容XE (DESCRIPTION (ADDRESS (PROTOCOL TCP)(HOST localhost)(PORT 1521)) (CONNECT_DATA (SERVER DEDICATED) (SERVICE_NAME XE) ) )这段配置的含义是以后任何工具里写XE作为连接标识就相当于告诉 Oracle 客户端“去向 localhost 的 1521 端口找名为 XE 的服务”。很多开发工具连不上 Oracle检查了半天发现是tnsnames.ora里 HOST 写的是本机名而本机的网络环境变了导致无法解析改成localhost或者具体的 IP 就好了。如果没有 tnsnames.ora 文件或者文件路径不在工具能读取到的位置也没关系。绝大多数编程语言驱动和图形化工具都支持“无 tnsnames 直连”也就是在连接串里显式写主机、端口、服务名比如 JDBC 里写成jdbc:oracle:thin:localhost:1521:XE另外注意这个 JDBC URL 的格式主机:端口:SID用的是 SID 而不是服务名。如果你在某些工具里遇到“请填写 SID”和“请填写服务名”的区别脑子里要有这根弦SID 填 XE服务名也填 XE但在连接串规范不同的工具里填错位置就会报 ORA-12505 或者 ORA-12514 错误。3.3 解锁 HR 示例用户顺便聊聊 XE 的账号体系OracleXE 安装完成后自带了一个HR示例用户Human Resources 人力资源演示模式里面有一些现成的表比如EMPLOYEES、DEPARTMENTS、JOBS等非常适合拿来练 SQL。但这个用户在默认情况下是锁定的需要手动解锁才能登录。解锁命令如下用 system 登录 SQL*Plus 后执行ALTER USER hr ACCOUNT UNLOCK; ALTER USER hr IDENTIFIED BY hr_password;第二行是顺手把 HR 的密码重置一下避免 HR 用户默认密码完全未知导致解锁了也没法登录。这组命令执行完HR 用户就能用了。用 HR 登录后执行SELECT COUNT(*) FROM user_tables;正常应该能看到 20 多张示例表。顺便把 XE 的账号体系说透。XE 里有两个超级管理员账号SYS 和 SYSTEM。SYS 是数据库的“元数据所有权人”数据字典、系统表都归它管登录时通常要带AS SYSDBA角色SYSTEM 是“操作管理员”负责日常管理操作创建用户、分配权限、查看性能视图这些都用 SYSTEM 就够了。日常开发中99% 的场景用 SYSTEM 登录就能解决。还有千万不要用 SYS 去跑业务查询、建业务表这是数据库管理的大忌因为 SYS 下的元数据极其庞大复杂不小心改了不该动的表整个数据库可能都会出问题。创建业务用户也是必须要会的操作。比如建一个名为MYAPP的用户给它默认表空间和权限CREATE USER myapp IDENTIFIED BY myapp123 DEFAULT TABLESPACE users QUOTA UNLIMITED ON users; GRANT CONNECT, RESOURCE TO myapp;CONNECT是登录权限RESOURCE是创建表、视图、存储过程等对象的权限。这两个角色通常够一个业务用户用了。如果后面发现缺少某些权限再按需求补充CREATE SESSION、CREATE PROCEDURE这些细粒度权限。4. 实战排错我踩过的那些经典坑4.1 安装没问题但 SQL*Plus 登录报 ORA-12560、ORA-12154 等经典错误装机之后最能让人崩溃的环节就是排错尤其当你照着教程一步步做却还是连不上时那种挫败感非常上头。Oracle 的报错信息存在一些近似但含义不同的代码我挑几个最常见的高频问题来聊。ORA-12560: TNS 协议适配器错误这个错误基本可以锁定为数据库服务没有启动。在服务管理器里找到OracleServiceXE右键启动然后再连一次。这里有个知识点启动 OracleServiceXE 本身可能需要几十秒如果服务显示“正在启动”状态你立刻去连接它也报错。等个二十秒左右再试心别急。ORA-12514: 监听程序当前无法识别连接描述符中请求的服务这个报错意味着监听器是活的但它不认识你连接的“服务名”。最常见的场景是你用sqlplus system/口令localhost:1521/ORCL去连——但 XE 实例的服务名是 XE不是 ORCL。把连接串里的服务名改成 XE 就行。还有一种情况是数据库实例还没完成向监听器的注册服务刚启动那十几秒内去连接可能也会触发这个错误同样等一会儿再试。ORA-12154: TNS: 无法解析指定的连接标识符这个报错说明你填了一个“连接名”但 tnsnames.ora 里找不到这个名字。要么是名字拼错了大小写Windows 下不区分大小写但最好保持一致要么是你改了 tnsnames.ora 文件后语法错误导致整个文件被忽略要么是工具找不到 tnsnames.ora 文件的路径。排查时可以先用系统环境变量看一下 Oracle 的 TNS_ADMIN 指向哪里echo %TNS_ADMIN%如果输出为空Oracle 客户端会按默认路径找。如果你手动改过文件就要确认文件格式没问题。tnsnames.ora 是个纯文本文件用记事本编辑保存没问题但要避免字符编码混入 BOM 头有些老版本 Oracle 驱动遇到 BOM 会直接解析失败。ORA-01017: 用户名/口令无效登录被拒绝这个就简单了密码错了。Oracle 11g 默认启用口令大小写敏感检查一下 Caps Lock 和密码中的大小写是否输入正确。如果确认无误但仍然报错可以用sqlplus / as sysdba登录后重新设置密码ALTER USER system IDENTIFIED BY 新口令;4.2 8080 端口被占用导致管理页面打不开教你改端口OracleXE 装好后内置了一个基于 HTTP 的 Application Express简称 APEX管理界面默认端口 8080。访问地址是http://localhost:8080/apex。这个界面可以管理 APEX 应用、监控数据库活动但是它确实没什么存在感就算打不开也不影响数据库本身的使用。如果你打开这个地址报错大概率是 8080 被其他程序占了。修改 Oracle 的 HTTP 端口很简单用 system 登录 SQL*Plus 后执行BEGIN DBMS_XDB.SETHTTPPORT(8081); END; /把端口改成 8081 后再访问http://localhost:8081/apex就能进管理页面了。改完之后没有回滚命令如果想改回来再执行一次就行。注意 Windows 防火墙只放行了 1521 的话8081 这个端口默认也是不能通过防火墙访问的远程访问时要额外加规则。4.3 网络热词里的“同病相怜”那些 Win64 软件下载安装的共性问题最近翻到网络上不少和“win64”相关的搜索热词什么matlab r2014b win64、ffmpeg 3.4 win64 static、tia portal v16 win64等。这些词虽然指向的软件不同但搜索人群面临的困境其实和我接触到的 OracleXE 用户高度重合拿到一个名字里带 Win64 的压缩包不知道先解压、再运行哪个文件、缺了什么运行库、为什么按教程做还是报错。这里把几个常见共性问题一起说掉。第一个共性问题分不清“绿色版”和“安装版”。有些 Win64 软件是解压即用的比如 ffmpeg 的 static 版本解压后直接打开 bin 目录里的 exe 就能用有些则必须走安装程序比如 OracleXE、TIA Portal。如果你把安装版直接解压出来就双击 exe往往会报“文件缺失”或者“配置未初始化”之类的错。拿到压缩包之后先花一分钟看看里面有没有setup.exe、install.exe或者 README 文件确定安装方式再动手。第二个共性问题运行库缺失。特别是偏底层的软件比如数据库、视频处理工具它们依赖微软 Visual C Redistributable。如果系统里缺少对应的运行库安装过程中可能不报错但启动时闪退或者提示“缺少 DLL”。解决办法是装一个集成包把常见的 2005-2022 版本都装齐。即使 64 位软件只需要 x64 运行库我仍建议把 x86 的也一起装上因为不少软件里会内嵌 32 位辅助工具。第三个共性问题路径里有中文或者空格。这个问题在 OracleXE 里特别敏感但同样出现在很多 Win64 软件上。尽量保持安装路径全英文目录层级不要太深。如果你在解压阶段就遇到文件“无法复制”或者“文件名过长”大概率也是路径问题。这时候把文件挪到盘符根目录下比如D:\ffmpeg、D:\oracle_xe_setup问题基本就缓解了。4.4 一个容易被忽略的坑OracleXE 的 11GB 数据量限制很多人装完 XE 用完一时爽直到某天导入数据或者跑批量任务时报 ORA-01536 错误表空间超出配额才发现不对劲。OracleXE 在用户数据存储上限制最大 11GB实际受版本约束一旦达到这个容量数据库会拒绝继续写入数据而不是自动扩容。这个限制对学习和开发来说完全够用但如果你拿它跑一个数据量持续增长的业务系统就要留个心眼。解决办法有三个方向定期清理历史数据把超出限制的部分迁移到 MySQL 或 PostgreSQL 这类开源数据库或者直接上 Oracle 标准版/企业版。对于个人项目我建议还是在项目规划阶段就估算清楚数据量别等跑了一两年突然写不进去了才发现这个限制。5. 图形化工具联调与日常使用经验5.1 几个好用的 Oracle 图形化客户端怎么配连接串SQL*Plus 虽好但整天在命令行里看表格输出眼睛迟早要瞎。推荐几个图形化工具按个人习惯选一个用就行。Oracle 官方出品的 SQL Developer 是免费的功能全支持代码提示、执行计划可视化、PL/SQL 调试唯一的缺点是界面有点复古。连接配置界面里连接名随便写用户名填 system口令填安装设置的密码主机名填 localhost端口 1521服务名填 XE选择“服务名”而不是“SID”作为连接类型就行。DBeaver 是另一个我非常推荐的工具社区版免费支持几乎所有主流数据库。下载后选择 Oracle 驱动它会让你填写 JDBC URL格式是jdbc:oracle:thin:localhost:1521:XE这个你手填就行。注意 DBeaver 连接 Oracle 首次会自动下载驱动文件如果你的网络环境受限可能需要在驱动管理里手动指定本地驱动 JAR 文件路径一般从 Oracle 官方下载 ojdbc8 或 ojdbc11 驱动即可。还有一个在 Oracle 生态里用户量很大的商业客户端是 PL/SQL Developer它对 Oracle 的深度支持做得非常细致但它是收费软件而且很久没更新了。如果公司买了正版许可用它写 PL/SQL 效率确实高但对个人开发者来说 DBeaver 或 SQL Developer 完全够用了。5.2 用 Python 或 Java 连 OracleXE 的最小可运行示例图形化工具连上数据库只是第一步真正的业务开发还要从代码层面连接。这里给两个最小示例都是我自己验证可跑的版本。Python 连 OracleXE 需要安装 cx_Oracle 库pip install cx_Oracle然后写一个最小脚本import cx_Oracle conn cx_Oracle.connect(system, 你的口令, localhost:1521/XE) cursor conn.cursor() cursor.execute(select name from v$database) row cursor.fetchone() print(Connected to:, row[0]) cursor.close() conn.close()Oracle 11g XE 自带的客户端库和 cx_Oracle 的版本兼容性偶尔会有问题如果你执行时报 DLL 加载失败先确认安装目录 bin 下的 oci.dll 在系统 PATH 中或者把C:\oraclexe\app\oracle\product\11.2.0\server\bin直接加到环境变量 PATH 前面。Java 连 OracleXE 需要先下载 ojdbc 驱动 JAR然后写标准 JDBC 代码Class.forName(oracle.jdbc.OracleDriver); Connection conn DriverManager.getConnection( jdbc:oracle:thin:localhost:1521:XE, system, 你的口令); Statement stmt conn.createStatement(); ResultSet rs stmt.executeQuery(SELECT name FROM v$database); if (rs.next()) { System.out.println(Connected to: rs.getString(1)); } rs.close(); stmt.close(); conn.close();JDBC 的 URL 中XE那个位置是 SID 而不是服务名这在上文已经提到过。如果你在工具里看到某种连接方式要求填“服务名”那 URL 格式一般会变成jdbc:oracle:thin://localhost:1521/XE中间多了//注意区分。5.3 备份、恢复和导入导出数据安全的基本功数据库装上、代码也跑通了但如果你没有备份意识早晚有一天会在一场“为什么我的数据没了”的惨剧中追悔莫及。OracleXE 的备份工作比很多人想象中简单我最常用的方式是 Data Pump 工具。导出全部数据在命令行执行expdp system/口令localhost:1521/XE schemasmyapp directoryDATA_PUMP_DIR dumpfilemyapp_backup.dmp logfileexpdp.logschemas参数指定导出的用户DATA_PUMP_DIR是 Oracle 默认的转储目录对应磁盘上安装目录下的admin\XE\dpdump文件夹。导入时用impdpimpdp system/口令localhost:1521/XE schemasmyapp directoryDATA_PUMP_DIR dumpfilemyapp_backup.dmp如果导入的目标库中已经存在同名用户可能会报对象已存在的错误可以先DROP USER myapp CASCADE再重新导入。注意操作前确认这个用户是真的要删的。还有一种更古老的备份方式是 exp/imp它们是 Data Pump 的前身性能差一些但兼容老版本数据库。Oracle 11g 里 exp/imp 仍然可用如果你要从很老的 9i、10g 数据库导数据可能反而只能用传统 exp。记住两个命令族的区别即可exp/imp是老工具expdp/impdp是新工具优先用新的。5.4 自动备份的个性化设置Windows 计划任务 expdp数据库要长期使用备份就不能靠手动执行而是要让系统自动跑。Windows 上可以用计划任务程序配合一个简单的批处理脚本实现每天凌晨自动全量备份。批处理脚本大概长这样echo off set DT%date:~0,4%%date:~5,2%%date:~8,2% set BK_DIRD:\oracle_backup if not exist %BK_DIR% mkdir %BK_DIR% expdp system/口令localhost:1521/XE schemasmyapp directoryDATA_PUMP_DIR dumpfilemyapp_%DT%.dmp logfileexpdp_%DT%.log然后把脚本交给计划任务程序触发器设为每天凌晨 2 点操作选择“启动程序”指向这个批处理文件。这样每天会生成一个带日期后缀的 dump 文件保留最近 7 天的备份即可。你还可以写一行forfiles命令自动删除 7 天前的旧备份文件forfiles /p %BK_DIR% /s /m *.dmp /d -7 /c cmd /c del path到这里一个省心的小型数据库环境就算真正成型了安装、配置、联调、备份全链路都打通了。6. 我的一些最终心得与建议写到最后还是想分享一点个人体会。很多人在学习数据库时不由自主地产生一种“敬畏感”觉得 Oracle 这种庞然大物只有专业 DBA 才能碰。其实当你真正把 XE 装起来、跑通之后再回头看就会发现它的核心逻辑和 MySQL、PostgreSQL 并没有本质差异——都是监听端口、验证身份、执行 SQL、返回结果。OracleXE112 作为一个“缩小版”的 Oracle最大的价值不仅是免费更是让你用极低的成本踩一遍真实生产环境的坑口令管理、权限体系、监听配置、备份恢复这些东西在哪个数据库上都是通用的。我自己的经验是数据库这类基础设施光看不练是没有用的。从安装那一刻起就把每一步都当成学习机会端口为什么默认是 1521tnsnames.ora 为什么要存在service 和 SID 有什么区别这些概念一旦在实际操作中遇到就永远不会忘。等你把 XE 玩熟了未来面对任何一套生产级数据库至少不会心里发怵。最后再分享一个小技巧如果你以后需要在多台机器之间迁移或复制环境直接把整个C:\oraclexe目录拷贝到另一台机器的相同路径再运行一次 bin 下的lsnrctl start和oradim -startup -sid XE有很大概率能直接跑起来。这个操作只能作为临时方案正经迁移最好还是用 expdp 导数据但应急的时候这个“弯道”能帮你省下重新安装配置的一大把时间。不管你是刚开始学 Oracle还是已经工作多年需要搭一个本地测试环境OracleXE112_Win64 这个压缩包都很值得保留一份在硬盘里。它不大装起来不费事但关键时候真的能救急。本文还有配套的精品资源点击获取