如何使用PLSQL 11.0连接远程Oracle12c服务器
背景: 如何实现远程连接服务器上的oracle12c?1、安装一个oracle12c空库,使用oracle12c中集成的oraclepl/sqldeveloper工具实现连接远程服务器上的oracle12c数据库。缺点:太笨重;优点:功能全。2、安装一个oracle12c的client结合pl\sqldeveloper工具,实现连接远程服务器上的oracle12c数据库。缺点:功能不及oracle12c集成工具;优点:轻量级。 为了快速安装一个可以实现远程访问oracle的工具,我选择了pl\sqldeveloper+oracle12cclient的方案。下载安装文件:1、下载oracle12cclient:下载地址:http://wwworaclecom/technetwork/cn/database/features/instant-client/index-097480html由于我所下载pl\sqldeveloper是x86位的版本(貌似也没有x64的版本),所以必须下载装备32-bit版本下载。下载后文件名称为:instantclient-basic-nt-121020zip2、下载pl\sqldeveloper工具:(为了方便,我把它上传到自己的网盘,并开放了公共链接。)下载后文件目录(解压无密码):3、下载msvcr100dll:
备注:上边的版本安装过后,第一次运行会出现缺少msvcr100dll的错误,这时候把这dll拷贝到c:\windows\system32目录、oracle12cclient安装根目录及pl\sqldeveloper安装根目录。安装:1、复制msvcr100dll到c:\windo(一)不安装客户端的解决办法。
第一种方法:
1、在安装ORACLE服务器的机器上搜索下列文件,
ocidll
ocijdbc10dll
ociw32dll
orannzsbb10dll
oraocci10dll
oraociei10dll (可能服务器没有,如果没有则pl sql 随便用户名密码可以登陆)
sqlnetora
tnsnamesora
classes12jar
ojdbc14jar
放到一个文件夹,如 oraclient
2、配置tnsnamesora,如果本机上没有安装oracle,可以从安装了oracle的机上拷贝一个(tnsnamesora文件在%ORACLE_HOME%\network\admin下)放在上面的目录D:\oraclient下。
oracledata =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192168058)(PORT = 1521))
)
(CONNECT_DATA =
(SERVICE_NAME = oracledata)
)
)
3、添加一个环境变量,名为TNS_ADMIN,值为tnsnamesora文件所在路径(如:D:\oraclient,特别是重装后或其它操作,忘了TNS_ADMIN变量,plsql登陆就会报无法解析指定的连接标识符),这是为了能够找到上面说的tnsnamesora。如果本机上安装了ORACLE,并且设置了ORACLE_HOME环境变量,那么会自动在%ORACLE_HOME%/network/admin/位置查找tnsnamesora文件。
4、设置ORACLE的语言,添加环境变量:
“NLS_LANG = SIMPLIFIED CHINESE_CHINAZHS16GBK”,(AMERICAN_AMERICAUS7ASCII 是ASCII编码类型,其它类型可自己到服务器看一下或网上查找一下)
(本步骤暂时要做对,如果编码不对,会产生乱码)
5、下载并安装PLSQLDeveloper配置应用
配置tools->preferences->connection
Oracle Home=D:\oracleclient
OCI library=D:\oracleclient\ocidll
6、再次打开plsql则会在database中有oracledata 选项输入用户名密码就可以登陆。
第二种方法:
1。首先去oracle的官方下载客户端的压缩包,地址是:http://wwworaclecom/technetwork/database/features/instant-client/index-097480html,选择机器的操作系统后选择oracle对应的版本的base那个压缩包下载。
2。将下载后的压缩包解压到相应的目录,比如 D:\worksoftware\instantclient_10_2下;
3。在这个目录下建立NETWORD目录,再在NETWORK目录下建立ADMIN目录,如D:\worksoftware\instantclient_10_2\NETWORK\ADMIN;
4。在第二步所建立的目录下新建一个tnsnamesora文件,当然也可以从服务器上copy这个文件,文件的内容如下
databasename =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = ip address)(PORT = 1521))
)
(CONNECT_DATA =
(SERVICE_NAME = database name)
)
)
databasename =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = ip address)(PORT = 1521))
)
(CONNECT_DATA =
(SERVICE_NAME = database name)
)
)
例如我的就是
ORCL =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = 1921681113)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = orcl)
)
)
ORCL =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = 1921681113)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = orcl)
)
)
5。打开PL SQL DEVELOPER 工具,点击tools-》preferences在右侧的oracle home里填上客户端的home,如D:\worksoftware\instantclient_10_2;在OCI Library里填上ocidll路径,如D:\worksoftware\instantclient_10_2\ocidll;
6。配置环境变量nls_lang 变量值是:SIMPLIFIED CHINESE_CHINAZHS16GBK这个东西主要是解决中文问题的。
7。ok配置完毕,应该是可以的啦,最好在启动之前先ping下远程的服务器,通了就应该可以连接上了
我的配置,其中BOC_TEST_91等为连接字符串
BOC_TEST_91 =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = 1012991)(PORT = 1521))
(CONNECT_DATA =
(SERVICE_NAME = bot)
)
)
BOC_TEST_68 =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = 1011968)(PORT = 1521))
(CONNECT_DATA =
(SERVICE_NAME = bot)
)
)
BOC_PRO_56 =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = 1011156)(PORT = 1521))
(CONNECT_DATA =
(SERVICE_NAME = bop)
)
)
(二)安装客户端的解决办法
一、配置oracle服务器的监听器listener
修改<安装目录>/network/admin/目录下的listenerora和tnsnamesora两个文件。其中
listener文件大致如下:
# listenerora Network Configuration File: /oracle/app/product/1010/db_1/network/admin/listenerora
# Generated by Oracle configuration tools
SID_LIST_LISTENER =
(SID_LIST =
(SID_DESC =
(SID_NAME = PLSExtProc)
(ORACLE_HOME = /oracle/app/product/1010/db_1)
(PROGRAM = extproc)
)
(SID_DESC =
(GLOBAL_DBNAME = demo1) #demo1为oracle实例名
(ORACLE_HOME = /oracle/app/product/1010/db_1)
(SID_NAME = demo1)
)
)
LISTENER =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1))
(ADDRESS = (PROTOCOL = TCP)(HOST = 1921680100)(PORT = 1521)) #IP地址为oracle服务器
)
)
tnsnamesora文件大致修改如下:
# tnsnamesora Network Configuration File: /oracle/app/product/1010/db_1/network/admin/tnsnamesora
# Generated by Oracle configuration tools
DEMO1 =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = 1921680100)(PORT = 1521)) #IP地址为oracle服务器
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = DEMO1) #demo1为oracle实例名,或者服务名称此名称可通过netmgr或netca修改
)
)
EXTPROC_CONNECTION_DATA =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1))
)
(CONNECT_DATA =
(SID = PLSExtProc)
(PRESENTATION = RO)
)
)
以上修改也可通过图形界面的netmgr和netca进行配置。修改之后,重启监听器
二、下载安装oracle客户端。
在安装pl/sql developer的本地机器上必须安装oracle客户端(此处指针对oracle 10g版本,有说也可只安装相关驱动如oci驱动,具体不详。并且客户端不一定为10g版本,8i,9i皆可)。
1从官网上下载绿色版本的客户端,地址如下(或有改变):
http://wwworaclecom/technology/software/tech/oci/instantclient/indexhtml
下载需要oracle用户,可免费注册
2绿色版无需安装,将此下载解压至某处,并在其下建立一network目录,目录下再建admin目录,结构如下
<客户端目录>/network/admin,在admin目录中建立tnsnamesora文件,内容大致如下:
demo1 = #oracle服务名
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 1921680100)(PORT = 1521)) #oracle服务器地址与端口
)
(CONNECT_DATA =
(SERVICE_NAME = demo1)
)
)
三、在PL/SQL developer中配置客户端信息。
打开PL/SQL developer,暂不登录,选择菜单tools->preferences->connection,设置如下两项:
Oracle Home: D:\Program Files\instantclient_11_1 #客户端解压目录
OCI library: D:\Program Files\instantclient_11_1\ocidll #oci库文件路径,ocidll应该在客户端目录下。
保存,重启PL/SQL developer,些时应可看到登录框中Database下拉选项里有你刚刚配置的远程服务器上的服务实例demo1了。
plsql的导出功能要调用Oracle客户端中的expexe文件,需要安装完整的Oracle客户端,instanceClient是不行的。操作如下:
1、打开PLSQL,找到工具栏,打开“导出表”。如图。
2、进入导出主页,输入需要导出的文件名称。
3、点击保存。
4、点击一下右下角的“导出”,就可以看到导出数据的概况。
5、如图所示,中途若无报错,则可以根据选定的路径找到文件,备份操作完成。
0条评论