前言:
最近使用 R 开发数据分析系统,需要连接Oracle数据库获取数据,但是又不想为了拿几个数据而装一个Oracle,所以就想直接找个Oracle的odbc驱动,免去安装Oracle客户端的麻烦。以下对安装过程作个记录,希望对大家有所帮助。
正文:
下载:
首先,我们需要下载两个驱动:
instantclient-odbc-win32-11.2.0.1.0 和 instantclient-basiclite-win32-11.2.0.1.0。
地址:http://www.oracle.com/technetwork/cn/topics/winsoft-095945-zhs.html
因为下载Oracle的产品一般都需要先注册,所以我直接放网盘上了,如果嫌注册麻烦的朋友可以从这里下载:odbc驱动,提取密码:j9yr
(如果百度云盘失效的话还有微盘:odbc驱动,提取密码:P0GG)
安装:
步骤一:解压
先把 basiclite 解压出来,得到一个 instantclient_11_2 文件夹。然后把 odbc 里面的文件解压到 instantclient_11_2 目录下(别搞错了顺序!)。如下图:
步骤二:
把Oracle数据库所在的上的NETWORK文件夹拷贝到刚才解压出来的 instantclient_11_2 目录下。(其实也可以从任何一台装有Oracle的电脑上拿)
我隔壁的电脑装有Oracle,它的NETWORK文件夹在 G:\app\John\product\11.2.0\dbhome_1
步骤三:
修改 NETWORK\ADMIN\tnsnames.ora 文件:在文档末尾加上下面几行代码
ORCL81 =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = 100.100.100.100)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = orcl)
)
)
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
注:把100.100.100.100改成你要连接数据库的所在 IP,另外 ORCL81 和 orcl 可以改一下。特别注意别漏了括号或者多了空格什么的,这段代码要求很严格,很可能因为多了一个空格而连接不成功。这段代码在 tnsnames.ora 一般也有,可以直接复制粘贴,然后修改一下 IP 。
步骤四:
添加环境变量TNS_ADMIN,路径指向 ADMIN 目录。如下图:
步骤五:
运行 instantclient_11_2 目录下的 odbc_install.exe ,将会出现一个 DOS 窗口一闪而过。。
步骤六:
大功告成,去配置数据源吧!
打开ODBC数据源管理器 -> 系统DNS -> 添加,弹出“创建新数据源”窗口,选择 Oracle in instantclient_11_2 开始新建数据源!