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),要做些改动。 步骤一:查找区间左端点 细节图: 步骤二:查找区间右端点: 细节图: 代码…...
docker详细操作--未完待续
docker介绍 docker官网: Docker:加速容器应用程序开发 harbor官网:Harbor - Harbor 中文 使用docker加速器: Docker镜像极速下载服务 - 毫秒镜像 是什么 Docker 是一种开源的容器化平台,用于将应用程序及其依赖项(如库、运行时环…...
C++:std::is_convertible
C++标志库中提供is_convertible,可以测试一种类型是否可以转换为另一只类型: template <class From, class To> struct is_convertible; 使用举例: #include <iostream> #include <string>using namespace std;struct A { }; struct B : A { };int main…...
LeetCode - 394. 字符串解码
题目 394. 字符串解码 - 力扣(LeetCode) 思路 使用两个栈:一个存储重复次数,一个存储字符串 遍历输入字符串: 数字处理:遇到数字时,累积计算重复次数左括号处理:保存当前状态&a…...
Rust 异步编程
Rust 异步编程 引言 Rust 是一种系统编程语言,以其高性能、安全性以及零成本抽象而著称。在多核处理器成为主流的今天,异步编程成为了一种提高应用性能、优化资源利用的有效手段。本文将深入探讨 Rust 异步编程的核心概念、常用库以及最佳实践。 异步编程基础 什么是异步…...
MySQL用户和授权
开放MySQL白名单 可以通过iptables-save命令确认对应客户端ip是否可以访问MySQL服务: test: # iptables-save | grep 3306 -A mp_srv_whitelist -s 172.16.14.102/32 -p tcp -m tcp --dport 3306 -j ACCEPT -A mp_srv_whitelist -s 172.16.4.16/32 -p tcp -m tcp -…...
中医有效性探讨
文章目录 西医是如何发展到以生物化学为药理基础的现代医学?传统医学奠基期(远古 - 17 世纪)近代医学转型期(17 世纪 - 19 世纪末)现代医学成熟期(20世纪至今) 中医的源远流长和一脉相承远古至…...
#Uniapp篇:chrome调试unapp适配
chrome调试设备----使用Android模拟机开发调试移动端页面 Chrome://inspect/#devices MuMu模拟器Edge浏览器:Android原生APP嵌入的H5页面元素定位 chrome://inspect/#devices uniapp单位适配 根路径下 postcss.config.js 需要装这些插件 “postcss”: “^8.5.…...
Netty从入门到进阶(二)
二、Netty入门 1. 概述 1.1 Netty是什么 Netty is an asynchronous event-driven network application framework for rapid development of maintainable high performance protocol servers & clients. Netty是一个异步的、基于事件驱动的网络应用框架,用于…...
【JVM面试篇】高频八股汇总——类加载和类加载器
目录 1. 讲一下类加载过程? 2. Java创建对象的过程? 3. 对象的生命周期? 4. 类加载器有哪些? 5. 双亲委派模型的作用(好处)? 6. 讲一下类的加载和双亲委派原则? 7. 双亲委派模…...
SQL Server 触发器调用存储过程实现发送 HTTP 请求
文章目录 需求分析解决第 1 步:前置条件,启用 OLE 自动化方式 1:使用 SQL 实现启用 OLE 自动化方式 2:Sql Server 2005启动OLE自动化方式 3:Sql Server 2008启动OLE自动化第 2 步:创建存储过程第 3 步:创建触发器扩展 - 如何调试?第 1 步:登录 SQL Server 2008第 2 步…...
