Oracle 12c在Windows环境下安装
适合初学者使用的Oracle 12c在Windows环境下安装步骤、参数配置、常见问题及参数调优的详细补充说明。
一、Oracle 12c安装步骤
1. 准备工作
在安装Oracle 12c之前,确保你的系统满足以下要求:
操作系统:Oracle 12c支持的Windows版本包括Windows 7、Windows 8、Windows 10以及Windows Server 2008、2012和2016。请确保你的操作系统是64位版本,因为Oracle 12c不支持32位版本。
内存:至少需要2GB RAM,推荐使用4GB或更多,以确保数据库运行流畅。对于大型数据库和高并发环境,建议使用8GB或更高的内存。
硬盘空间:至少需要10GB的可用空间。根据安装选项和数据库大小,可能需要更多的空间。建议在安装前检查硬盘空间。
用户权限:确保你有管理员权限。安装Oracle数据库需要对系统进行更改,因此必须以管理员身份运行安装程序。
2. 下载Oracle 12c
(1)访问Oracle官方网站:
打开浏览器,访问 [Oracle Technology Network](https://www.oracle.com/database/technologies/),在页面中找到Oracle Database 12c的下载链接。
(2)选择适合Windows的版本:
在下载页面,选择“Oracle Database 12c Release 1 (12.1.0.2) for Microsoft Windows (x64)”链接。确保选择64位版本。
(3)注册或登录Oracle账号:
如果没有Oracle账号,需要注册一个。注册后登录,才能下载软件。
(4)下载安装文件:
下载完成后,文件通常为ZIP格式,文件名可能类似于`winx64_12c_database.zip`。
3. 解压安装文件
(1) 选择解压路径:
将下载的ZIP文件解压到一个目录,例如 `C:\Oracle\12c`。确保该目录有足够的权限,以便安装程序可以访问。
(2)检查解压完整性:
确保解压后的文件完整,通常解压后会包含多个文件夹和文件,如`database`、`install`、`readme`等。
4. 开始安装
(1) 以管理员身份运行安装程序:
进入解压目录,找到 `setup.exe` 文件,右键点击并选择“以管理员身份运行”。这样可以确保安装程序拥有足够的权限进行系统更改。
(2)安装向导:
安装向导启动后,选择“安装数据库软件”选项。你会看到一个欢迎页面,点击“下一步”继续。
(3). 选择安装类型:
在“安装类型”页面,选择“创建和配置数据库”选项。这个选项将引导你完成数据库的创建和配置。
(4)选择安装位置:
默认安装路径为 `C:\app\oracle\product\12.1.0\dbhome_1`。可以根据需要更改,但建议使用默认路径,以避免后续配置问题。
(5)选择数据库配置:
在“数据库配置”页面,选择“典型安装”以便于配置,或选择“高级安装”以自定义设置。如果是新手,建议选择典型安装。
(6)输入Oracle用户名和密码:
输入Oracle管理员(SYS和SYSTEM)的密码。确保密码符合复杂性要求(至少8个字符,包含字母和数字)。强烈建议记住这个密码,因为后续连接数据库时需要使用。
(7)配置数据库选项:
在“数据库身份”页面,输入数据库名(SID),例如`ORCL`。SID是数据库的唯一标识符,通常选择简单易记的名称。
(8)选择网络配置:
在网络配置页面,通常选择默认设置,点击“下一步”。这将自动配置Oracle Listener,允许客户端连接到数据库。
(9)选择存储选项:
选择“文件系统”作为存储选项,通常对于初学者来说,这是最简单的选择。
(10)确认安装设置:
检查所有设置,确认无误后点击“安装”。在此步骤,你可以查看安装摘要,确保所有信息正确。
5. 安装过程
安装过程可能需要一些时间,请耐心等待。安装完成后,系统会显示安装成功的信息。你可能会看到“安装完成”或“成功”的提示,点击“关闭”按钮退出安装向导。
6. 配置Oracle环境变量
(1)设置ORACLE_HOME:
右键点击“计算机” > “属性” > “高级系统设置” > “环境变量”。
在系统变量中点击“新建”,添加变量名 `ORACLE_HOME`,值为Oracle安装目录(如 `C:\app\oracle\product\12.1.0\dbhome_1`)。
(2)设置PATH变量:
找到系统变量中的 `Path`,点击“编辑”,在变量值的末尾添加 `;%ORACLE_HOME%\bin`。确保在添加时使用分号(;)分隔。
(3)设置TNS_ADMIN(可选):
如果使用TNS配置,添加变量 `TNS_ADMIN`,值为 `C:\app\oracle\product\12.1.0\dbhome_1\network\admin`。这将指向TNS配置文件的存储位置。
7. 启动Oracle数据库
使用“SQL*Plus”或“Oracle SQL Developer”连接到数据库。可以在开始菜单中找到SQL*Plus,使用SYS或SYSTEM用户登录,命令格式如下:

输入密码后,连接成功后可以执行一些基本的SQL命令,如查看数据库状态:
![]()
二、常见安装问题及解决方法
1. 安装过程中出现“缺少组件”错误
解决方法:
确保下载的安装包完整,文件未损坏。可以尝试重新下载并解压。
检查系统是否满足Oracle的安装要求,包括操作系统版本、内存和硬盘空间。
2. 数据库创建失败
解决方法:
检查输入的数据库名称是否符合Oracle命名规则(不能以数字开头,不能包含特殊字符)。
确保提供的密码符合复杂性要求(至少8个字符,包含大写字母、小写字母、数字和特殊字符)。
3. 网络配置问题
解决方法:
确保Windows防火墙允许Oracle相关服务通过。可以在防火墙设置中添加例外。
检查TNS配置文件 `tnsnames.ora` 是否正确,确保网络服务名与SID一致。
4. 安装后无法连接数据库
解决方法:
确保Oracle服务已启动。可以在“服务”中查看Oracle服务的状态,确保其处于“运行”状态。
使用命令行工具检查网络配置,运行 `tnsping <服务名>`,确保网络连接正常。
三、参数调优
1. 基本参数配置
SGA(系统全局区):
默认情况下,Oracle会自动管理SGA大小。可以手动设置 `SGA_TARGET` 和 `SGA_MAX_SIZE` 参数,以优化内存使用。例如,在SQL*Plus中执行:

PGA(程序全局区):
设置 `PGA_AGGREGATE_TARGET` 参数,以优化内存分配给每个会话的工作区。例如:
![]()
2. 启用自动内存管理(AMM)
设置 `MEMORY_TARGET` 和 `MEMORY_MAX_TARGET` 参数,以启用自动内存管理,Oracle会根据负载动态调整SGA和PGA的大小。例如:

3. 调整并发连接数
根据系统性能需求,调整 `PROCESSES` 和 `SESSIONS` 参数,以支持更多的并发连接。例如:

4. 数据库性能监控
使用Oracle自带的性能监控工具(如Enterprise Manager)监控数据库性能,识别瓶颈并进行相应调整。可以使用以下查询来监控数据库性能:

四、总结
通过以上详细步骤,你应该能够在Windows环境下成功安装Oracle 12c并进行基本的参数配置。安装过程中遇到的问题可以通过常见问题解决方法进行排查。根据实际需求进行参数调优,可以显著提高数据库的性能和稳定性。
相关文章:
Oracle 12c在Windows环境下安装
适合初学者使用的Oracle 12c在Windows环境下安装步骤、参数配置、常见问题及参数调优的详细补充说明。 一、Oracle 12c安装步骤 1. 准备工作 在安装Oracle 12c之前,确保你的系统满足以下要求: 操作系统:Oracle 12c支持的Windows版本包括Wi…...
Stable Diffusion绘画 | 来训练属于自己的模型:打标处理与优化
上一篇完成的打标工作,是为了获取提示词,让AI认识和学习图片的特征。 因此,合适、恰当、无误的提示词,对最终模型效果是相当重要的。 Tag 如何优化 通过软件自动生成的 Tag 只是起到快速建立大体架构的作用,里面会涉…...
【论文笔记】Visual Instruction Tuning
🍎个人主页:小嗷犬的个人主页 🍊个人网站:小嗷犬的技术小站 🥭个人信条:为天地立心,为生民立命,为往圣继绝学,为万世开太平。 基本信息 标题: Visual Instruction Tunin…...
ubuntu 设置静态IP
一、 ip addresssudo nano /etc/netplan/50-cloud-init.yaml 修改前: 修改后: # This file is generated from information provided by the datasource. Changes # to it will not persist across an instance reboot. To disable cloud-inits # ne…...
Java 每日一刊(第19期):泛型
文章目录 前言1. 泛型概述1.1 不使用泛型 vs 使用泛型1.2 泛型的作用 2. 泛型的基本语法2.1 定义带类型参数的泛型类2.2 使用泛型类2.3 泛型方法 3. 泛型类型推断与钻石操作符3.1 类型推断3.2 钻石操作符 4. 通配符的使用4.1 无界通配符 <?>4.2 上界通配符 <? exten…...
windows下安装rabbitMQ并开通管理界面和允许远程访问
如题,在windows下安装一个rabbitMQ server;然后用浏览器访问其管理界面;由于rabbitMQ的默认账号guest默认只能本机访问,因此需要设置允许其他机器远程访问。这跟mysql的思路很像,默认只能本地访问,要远程访…...
深度剖析音频剪辑免费工具的特色与优势
是热爱生活的伙伴或者想要记录美好声音的普通用户,都可能会需要对音频进行剪辑处理。而幸运的是,现在有许多优秀的音频剪辑软件提供了免费版本,让我们能够轻松地施展音频剪辑的魔法。接下来,就让我们一同深入了解这些音频剪辑免费…...
Oracle中TRUNC()函数详解
文章目录 前言一、TRUNC函数的语法二、主要用途三、测试用例总结 前言 在Oracle中,TRUNC函数用于截取或截断日期、时间或数值表达式的部分。它返回一个日期、时间或数值的截断版本,根据提供的格式进行截取。 一、TRUNC函数的语法 TRUNC(date) TRUNC(d…...
【Spring Boot 入门一】构建你的第一个Spring Boot应用
一、引言 在当今的软件开发领域,Java一直占据着重要的地位。而Spring Boot作为Spring框架的延伸,为Java开发者提供了一种更加便捷、高效的开发方式。它简化了Spring应用的搭建和配置过程,让开发者能够专注于业务逻辑的实现。无论是构建小型的…...
PPT 快捷键使用、技巧
前言: 本文操作是以office 2021为基础的,仅供参考;不同版本office 的 ppt 快捷键 以及对应功能会有差异,需要实践出真知。 shift 移动 水平/垂直 移动 ; shift 放大/缩小 等比例放大 缩小 ; 正圆 正…...
Web安全 - 文件上传漏洞(File Upload Vulnerability)
文章目录 OWASP 2023 TOP 10导图定义攻击场景1. 上传恶意脚本2. 目录遍历3. 覆盖现有文件4. 文件上传结合社会工程攻击 防御措施1. 文件类型验证2. 文件名限制3. 文件存储位置4. 文件权限设置5. 文件内容检测6. 访问控制7. 服务器配置 文件类型验证实现Hutool的FileTypeUtil使用…...
vue3中el-input在form表单按下回车刷新页面
摘要: 在input框中点击回车之后不是调用我写的回车事件,而是刷新页面! 如果表单中只有一个input 框则按下回车会直接关闭表单 所以导致刷新页面 再写一个input 表单 ,并设置style“display:none” <ElInput style"display…...
SQL Server中关于个性化需求批量删除表的做法
在实际开发中,我们常常会遇到需要批量删除表,且具有共同特征的情况,例如:找出表名中数字结尾的表之类的,本文我将以3中类似情况为例,来示范并解说此类需求如何完成: 第一种,批量删除…...
关于按键状态机解决Delay给程序带来的问题
问题产生 我在学习中断的过程中,使用EXTI15外部中断,在其中加入HAL_Delay();就会发生报错 错误地方 其它地方配置 问题原因 在中断服务例程(ISR)中使用 HAL_Delay() 会导致问题的原因是: 阻塞性: HAL_D…...
62.【C语言】浮点数的存储
目录 1.浮点数的类型 2.浮点数表示的范围 3.浮点数的特性 《计算机科学导论》的叙述 4.浮点数在内存中的存储 答案速查 分析 前置知识:浮点数的存储规则 推导单精度浮点数5.5在内存中的存储 验证 浮点数取出的分析 1.一般情况:E不全为0或不全为1 2.特殊情况:E全为0…...
GO网络编程(一):基础知识
1. 网络编程的基础概念 TCP/IP 协议栈 TCP/IP 是互联网通信的核心协议栈,分为以下四个层次: 应用层(Application Layer):为应用程序提供网络服务的协议,比如 HTTP、FTP、SMTP 等。传输层(Tra…...
【Linux】用虚拟机配置Ubuntu环境
目录 1.虚拟机安装Ubuntu系统 2.Ubuntu系统的网络配置 3.特别声明 首先我们先要下载VMware软件,大家自己去下啊! 1.虚拟机安装Ubuntu系统 我们进去之后点击创建新的虚拟机,然后选择自定义 接着点下一步 再点下一步 进入这个界面之后&…...
酒店智能门锁SDK接口pro[V10] 门锁校验C#-SAAS本地化-未来之窗行业应用跨平台架构
一、代码 int 酒店标识_int Convert.ToInt32(酒店标识);StringBuilder 锁号2024 new StringBuilder(8);//信息 "未知返回值:" bufCard_原始;GetGuestLockNoByCardDataStr_原始(酒店标识_int, bufCard_原始.ToString(), 锁号2024);StringBuilder 退…...
Gitのrebase用法
在 Git 中,rebase 是一种用于整合多个提交历史的操作,它可以将一个分支的变更“重放”到另一个分支上。与 merge 不同,rebase 会产生一个线性的提交历史,使得项目的历史记录更加整洁和易于理解。 1. 什么是 Rebase? …...
二分查找一>:在排序数组中查找元素的第一个和最后一个位置
1.题目: 2.解析:这里不能用传统二分,因为涉及范围,传统二分时间复杂度会降为O(N),要做些改动。 步骤一:查找区间左端点 细节图: 步骤二:查找区间右端点: 细节图: 代码…...
idea大量爆红问题解决
问题描述 在学习和工作中,idea是程序员不可缺少的一个工具,但是突然在有些时候就会出现大量爆红的问题,发现无法跳转,无论是关机重启或者是替换root都无法解决 就是如上所展示的问题,但是程序依然可以启动。 问题解决…...
Leetcode 3576. Transform Array to All Equal Elements
Leetcode 3576. Transform Array to All Equal Elements 1. 解题思路2. 代码实现 题目链接:3576. Transform Array to All Equal Elements 1. 解题思路 这一题思路上就是分别考察一下是否能将其转化为全1或者全-1数组即可。 至于每一种情况是否可以达到…...
逻辑回归:给不确定性划界的分类大师
想象你是一名医生。面对患者的检查报告(肿瘤大小、血液指标),你需要做出一个**决定性判断**:恶性还是良性?这种“非黑即白”的抉择,正是**逻辑回归(Logistic Regression)** 的战场&a…...
MongoDB学习和应用(高效的非关系型数据库)
一丶 MongoDB简介 对于社交类软件的功能,我们需要对它的功能特点进行分析: 数据量会随着用户数增大而增大读多写少价值较低非好友看不到其动态信息地理位置的查询… 针对以上特点进行分析各大存储工具: mysql:关系型数据库&am…...
Objective-C常用命名规范总结
【OC】常用命名规范总结 文章目录 【OC】常用命名规范总结1.类名(Class Name)2.协议名(Protocol Name)3.方法名(Method Name)4.属性名(Property Name)5.局部变量/实例变量(Local / Instance Variables&…...
Golang dig框架与GraphQL的完美结合
将 Go 的 Dig 依赖注入框架与 GraphQL 结合使用,可以显著提升应用程序的可维护性、可测试性以及灵活性。 Dig 是一个强大的依赖注入容器,能够帮助开发者更好地管理复杂的依赖关系,而 GraphQL 则是一种用于 API 的查询语言,能够提…...
Java 加密常用的各种算法及其选择
在数字化时代,数据安全至关重要,Java 作为广泛应用的编程语言,提供了丰富的加密算法来保障数据的保密性、完整性和真实性。了解这些常用加密算法及其适用场景,有助于开发者在不同的业务需求中做出正确的选择。 一、对称加密算法…...
华为云Flexus+DeepSeek征文|DeepSeek-V3/R1 商用服务开通全流程与本地部署搭建
华为云FlexusDeepSeek征文|DeepSeek-V3/R1 商用服务开通全流程与本地部署搭建 前言 如今大模型其性能出色,华为云 ModelArts Studio_MaaS大模型即服务平台华为云内置了大模型,能助力我们轻松驾驭 DeepSeek-V3/R1,本文中将分享如何…...
基于 TAPD 进行项目管理
起因 自己写了个小工具,仓库用的Github。之前在用markdown进行需求管理,现在随着功能的增加,感觉有点难以管理了,所以用TAPD这个工具进行需求、Bug管理。 操作流程 注册 TAPD,需要提供一个企业名新建一个项目&#…...
Linux 内存管理实战精讲:核心原理与面试常考点全解析
Linux 内存管理实战精讲:核心原理与面试常考点全解析 Linux 内核内存管理是系统设计中最复杂但也最核心的模块之一。它不仅支撑着虚拟内存机制、物理内存分配、进程隔离与资源复用,还直接决定系统运行的性能与稳定性。无论你是嵌入式开发者、内核调试工…...
