前言:如果你习惯了傻瓜式的一步步安装,那么Oracle和.NET搭配,绝对会让你头痛不已。
目前我不敢保证自己理解的Oracle理论部分100%正确,但环境安装过程一定可以收藏以备不时之需。
路这么长,说不定哪天就像我一样必须得用Oracle了。
本文重点
- Oracle里面一些常见概念描述
- 安装Oracle数据库(11g)
- 安装Oracle的VS组件(vs2010-2015)
- 安装PLSQL12(附注册机+中文语言包)
- Oracle安装和配置常见问题解决方案
- Oracle完全卸载(转)
注意事项
- 去Oracle官网下载,需要注册账号
我的环境及版本说明
win10专业版64位
Oracle数据库 11g r2
PLSQL版本12
VS2012及VS2015(组件包安装了两个,可能直接安装一个通用安装包也行,自行测试)
Oracle几个概念
Oracle数据库: 可以直接理解为数据库服务(无界面)
Oracle客户端: 用于连接Oracle的一些组件(无界面),很多操作Oracle的程序都要基于Oracle客户端才能使用 eg:PLSQL、Navicat,
而sqlserver数据库和客户端基本都是一体的,总会让人很费解Oracle客户端这个玩意。
sqlplus和plsqldev: 他们属于操作Oracle界面程序(可以理解sqlserver的客户端sql server management studio)
建议安装顺序
1.安装 Oracle数据库
2.安装Oracle客户端
(Oracle客户端也有解压版,不需要安装,使用的时候,直接配置它的路径即可,如果用VS连接Oracle数据库,建议下载安装包安装)
2.安装 Oracle的VS组件(作用:在VS中连接Oracle导入表的实体模型,and 其他)
3.安装PLSQL
安装Oracle数据库
Oracle数据库官方下载链接
演示中使用数据库版本为11g
安装Oracle步骤,基本就是下一步下一步,以下是详细截图。
第一步:
第二步:
第三步:
第四步:
第五步:
第六步:
第七步:完成安装后,直接关闭即可
第八步:测试Oracle数据库是否完成安装
cmd--》sqlplus--》用户名填写 sys as sysdba 口令填安装时候设置的口令即可,成功效果如下
以下是安装完成后的Windows服务(安装包的不一样,服务数量及名称会稍有不同)
第九步:此电脑--》属性--》高级系统设置--》环境变量
增加 变量名:NLS_LANG
变量值:AMERICAN_AMERICA.ZHS16GBK (一般设置这个值即可)
或者变量值:AMERICAN_AMERICA.AL32UTF8
增加 变量名:TNS_ADMIN
变量值:E:\app\tsl\product\11.2.0\dbhome_1\NETWORK\ADMIN(根据自己安装目录更改)
安装Oracle客户端
Oracle客户端官网下载
第一步:选择管理员 (没截图的直接下一步即可)
第二步:可以选择安装到Oracle主目录,也可以另选盘符
安装完成后,直接关闭即可
安装Oracle的VS组件
Oracle的VS组件官方下载(需要注册才能下载)
VS2013组件包名: Oracle Developer Tools for Visual Studio 2013 — MSI 安装程序
VS2015组件包名: Oracle Developer Tools for Visual Studio 2015 — MSI 安装程序
通用组件包名(vs2010-2012建议下载): 包含 Oracle Developer Tools for Visual Studio 的 32 位 ODAC 下载
安装oracle的VS组件,在VS中就能直接用Oracle的数据源来新建实体模型了,如下图:
备注:点击进去后,根据安装Oracle数据库版本下载对应的组件版本即可,Oracle官网需要注册才能下载(也可以根据组件文件名去百度),组件包可以安装多个
安装PLSQL12
前言:PLSQL 7.x版本,运行在Win10上面,会出现界面字体失真的状况。
plsql百度云下载
密码:o1lv
安装包文件列表如下
plsqldev1203x64.msi : PLSQL12安装包
chinese.exe : PLSQL12中文语言安装包
keygen.rar : PLSQL注册机
instantclient-basic-windows.x64-12.1.0.2.0.zip : Oracle12.1.0.2.0客户端(根据自己实际安装的Oracle数据库版本下载,当前客户端版本可以连接11g数据库)
PLSQL安装步骤如下
第一步 安装plsqldev1203x64.msi
第二步 安装chinese.exe
第三步 解压keygen.rar 运行,点击Generate;
打开PLSQL,帮助--》注册。复制Product Code到产品编号,Serial Number到序列号,PassWord到口令,点击注册即可
第四步 解压 instantclient-basic-windows.x64-12.1.0.2.0.zip,放到电脑任意位置(例如放到D盘)
备注:当前解压版客户端和上面提到的安装包客户端不冲突
配置PLSQL步骤如下
1.打开PLSQL,登录页面直接点击取消(不登录也能进去)
2.如图
3.重启,即可登录
安装配置和常见问题解决
前言:一开始用Oracle,我很好奇,为什么链接服务器上面的数据库,都不要要输入IP地址(sqlserver使用者基本都会好奇),以下是配置就能告诉你原因。
配置服务和监听程序
安装数据库后,默认会存在一个监听本机的程序和本机的一个服务(如果没有,自己添加)
例如你要连接你们公司服务器(加入IP:22.22.22.22)上的Oracle数据库
1.配置服务名
第一步:添加网络服务名
第二步:选择TCP/IP(internet协议) 下一步
第三步:主机名就是你服务器的IP,端口一般都是1521(跟实际需求更换即可)
第四步:添加服务名
第五步:测试
第六步:测试没问题,直接点击完成即可
因为我示例IP是个假的,所以任何用户都不能登录成功了。
2.配置监听程序
第一步:新建监听程序
第二部:填写IP和端口
常见问题
- [INS-13001]环境不满足最低要求的解决方法 (安装Oracle数据库时提示);配置不满足最低要求(安装Oracle客户端时提示)
解决方案:在安装文件的/stage/cvu文件夹下找到cvu_prereq.xml增加这些代码(如果是32位,就把64-bit改为32-bit)
<OPERATING_SYSTEM RELEASE="6.2">
<VERSION VALUE="3"/>
<ARCHITECTURE VALUE="64-bit"/>
<NAME VALUE="Windows 10"/>
<ENV_VAR_LIST>
<ENV_VAR NAME="PATH" MAX_LENGTH="1023" />
</ENV_VAR_LIST>
</OPERATING_SYSTEM>
在PLSQL中,条件查询出现中文,查不到数据
解决方案:此电脑--》属性--》高级系统设置--》环境变量
增加 变量名:NLS_CHARACTERSET
变量值:ZHS16GBK
增加 变量名:NLS_LANG
变量值:AMERICAN_AMERICA.ZHS16GBK
或者
增加 变量名:NLS_CHARACTERSET
变量值:AL32UTF8
增加 变量名:NLS_LANG
变量值:AMERICAN_AMERICA.AL32UTF8- ORA-12638: Credential retrieval failed(身份证明检索失败)
解决方案:进入目录 E:\app\administrator\product\11.2.0\dbhome_1\NETWORK\ADMIN (根据自己安装目录找)
打开sqlnet.ora文件
将SQLNET.AUTHENTICATION_SERVICES= (NTS)
改为SQLNET.AUTHENTICATION_SERVICES= (NONE) 尝试加载 Oracle 客户端库时引发 BadImageFormatException。如果在安装 32 位 Oracle 客户端组件的情况下以 64 位模式运行,将出现此问题。
解决方案:如果你把把项目改为X86,把IIS的应用程序池的启用32位应用程序属性设置为True还是不管用,
建议你安装个Oracle客户端(32位),使用安装包安装,别用解压版,因为安装包会自动设置注册表信息
因为自己在解决问题的时候,没有一一全部记录下来,肯定有遗漏的问题,如果你也很坑的问题并解决了,可以
提交给我,我会继续更新在此博客中,希望能帮助到一些刚用Oracle的.NET程序员
完全卸载Oracle
因为有前辈写了很全面的例子,此处只提供一个连接:完全卸载Oracle