实验目的:在虚拟机中用sqlplus工具访问真实机的数据库;

实验环境:

真实机(windows系统,数据库服务名 orcl):

SQL> select * from v$version;

BANNER
----------------------------------------------------------------
Oracle Database 10g Enterprise Edition Release 10.2.0.3.0 - Prod
PL/SQL Release 10.2.0.3.0 - Production
CORE    10.2.0.3.0      Production
TNS for 32-bit Windows: Version 10.2.0.3.0 - Production
NLSRTL Version 10.2.0.3.0 - Production

虚拟机(linux系统,数据库服务名 yjgocp):

SQL> select * from v$version;

BANNER
--------------------------------------------------------------------------------
Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - Production
PL/SQL Release 11.2.0.1.0 - Production
CORE    11.2.0.1.0      Production
TNS for Linux: Version 11.2.0.1.0 - Production
NLSRTL Version 11.2.0.1.0 - Production

sqlplus登录本地及远程数据库的方式有:

sqlplus username/password

sqlplususername/password@net_service_name

sqlplus  username/password assysdba

sqlplususername/password@//host:port/sid

在虚拟机上操作,直接链接真实机数据库

[oracle@localhost ~]$ sqlplusscott/tiger@orcl

SQL*Plus: Release 11.2.0.1.0 Production onSun Jul 28 13:40:38 2013

Copyright (c) 1982, 2009, Oracle.  All rights reserved.

ERROR:

ORA-12154: TNS:could not resolve theconnect identifier specified

说明链接信息配置有问题,查看本地环境变量及查找本地tnsname.ora

[oracle@localhost ~]$ more .bash_profile

# .bash_profile

# Get the aliases and functions

if [ -f ~/.bashrc ]; then

. ~/.bashrc

fi

# User specific environment and startupprograms

PATH=$PATH:$HOME/bin

export ORACLE_BASE=/u01/app/oracle

exportORACLE_HOME=/u01/app/oracle/product/11g

export ORACLE_SID=yjgocp

export NLS_LANG=AMERICAN_AMERICA.ZHS16GBK

export PATH=$ORACLE_HOME/bin:$PATH

[root@localhost script]#find / -name tnsname*

/u01/app/oracle/product/11g/inventory/Templates/hs/admin/tnsnames.ora.sample

/u01/app/oracle/product/11g/network/admin/samples/tnsnames.ora

/u01/app/oracle/product/11g/hs/admin/tnsnames.ora.sample

TNS_ADMIN

This variable  TNS_ADMIN specifies the user ID of the OracleNet Services configuration files, for example, LISTENER.ORATNSNAMES.ORA and SQLNET.ORA. If TNS_ADMIN is not defined, then the configuration files are searched underthe local user ID with the prefix NETWORK.ADMIN.

环境变量里面没有设置该值,说明oracle 会到默认的network/admin/下查找LISTENER.ORATNSNAMES.ORA and SQLNET.ORA文件,如果想链接远程数据库,那么需要在该位置创建一个TNSNAME.ORA文件,并把远程的链接信息配置到该文件中;

 

经过刚才查找得之/u01/app/oracle/product/11g/network/admin/samples/tnsnames.ora把该文件拷贝到/u01/app/oracle/product/11g/network/admin/目录下一份,

然后添加远程数据库的链接信息:

[oracle@localhost admin]$ more tnsnames.ora

# This file contains the syntax informationfor

# the entries to be put in any tnsnames.orafile

# The entries in this file are need based.

# There are no defaults for entries in thisfile

# that Sqlnet/Net3 use that need to beoverridden

#

# Typically you could have two tnsnames.orafiles

# in the system, one that is set for theentire system

# and is called the system tnsnames.orafile, and a

# second file that is used by each userlocally so that

# he can override the definitions dictatedby the system

# tnsnames.ora file.

# The entries in tnsnames.ora are analternative to using

# the names server with the onames adapter.

# They are a collection of aliases for theaddresses that

# the listener(s) is(are) listening for adatabase or

# several databases.

# The following is the general syntax forany entry in

# a tnsnames.ora file. There could beseveral such entries

# tailored to the user's needs.

#下面红色字体是添加的远程链接信息;其余代码是该文件原有的代码;

ORCL =

(DESCRIPTION =

(ADDRESS = (PROTOCOL = TCP)(HOST =192.168.1.100)(PORT = 1521))

(CONNECT_DATA =

(SERVICE_NAME = orcl)

)

)

<alias>= [ (DESCRIPTION_LIST =  # Optional depending on whether u have

# one or moredescriptions

# If there isjust one description, unnecessary

]

(DESCRIPTION=

[ (SDU=2048) ]      # Optional,defaults to 2048

# Can take values between 512 and 32K

[ (ADDRESS_LIST=    # Optionaldepending on whether u have

# one or moreaddresses

# If there isjust one address, unnecessary ]

(ADDRESS=

[(COMMUNITY=<community_name>) ]

(PROTOCOL=tcp)

(HOST=<hostname>)

(PORT=<portnumber (1521 is astandard port used)>)

)

[ (ADDRESS=

(PROTOCOL=ipc)

(KEY=<ipckey (PNPKEY is astandard key used)>)

)

]

[ (ADDRESS=

[(COMMUNITY=<community_name>) ]

(PROTOCOL=decnet)

(NODE=<nodename>)

(OBJECT=<objectname>)

)

]

... # More addresses

[ ) ] # Optional depending on whether ADDRESS_LIST is used or not

[ (CONNECT_DATA=

(SID=<oracle_sid>)

[(GLOBAL_NAME=<global_database_name>) ]

)

]

[ (SOURCE_ROUTE=yes) ]

)

(DESCRIPTION=

[ (SDU=2048) ]      # Optional,defaults to 2048

# Can takevalues between 512 and 32K

[ (ADDRESS_LIST= ]  # Optionaldepending on whether u have more

# than oneaddress or not

# If there is justone address, unnecessary

(ADDRESS

[(COMMUNITY=<community_name>) ]

(PROTOCOL=tcp)

(HOST=<hostname>)

(PORT=<portnumber (1521 is astandard port used)>)

)

[ (ADDRESS=

(PROTOCOL=ipc)

(KEY=<ipckey (PNPKEY is astandard key used)>)

)

]

...               # More addresses

[ ) ]               # Optionaldepending on whether ADDRESS_LIST

# is being used

[ (CONNECT_DATA=

(SID=<oracle_sid>)

[(GLOBAL_NAME=<global_database_name>) ]

)

]

[ (SOURCE_ROUTE=yes) ]

)

[ (CONNECT_DATA=

(SID=<oracle_sid>)

[(GLOBAL_NAME=<global_database_name>) ]

)

]

...   # More descriptions

[ ) ]   # Optional depending onwhether DESCRIPTION_LIST is used or not

然后尝试链接

[oracle@localhost admin]$ sqlplusscott/tiger@orcl

SQL*Plus: Release 11.2.0.1.0 Production onSun Jul 28 13:59:59 2013

Copyright (c) 1982, 2009, Oracle.  All rights reserved.

ERROR:

ORA-12541: TNS:nolistener

提示没有监听,这个时候查看远程数据库,监听已经启动;于是就把链接信息里的HOST信息又远程主机IP改为了主机名(由HOST = 192.168.1.100改为

HOST = 4728tef987uid34)

[oracle@localhost admin]$ sqlplusscott/tiger@orcl

SQL*Plus: Release 11.2.0.1.0 Production onSun Jul 28 14:02:38 2013

Copyright (c) 1982, 2009, Oracle.  All rights reserved.

Connected to:

Oracle Database 10g Enterprise EditionRelease 10.2.0.3.0 - Production

With the Partitioning, OLAP and Data Miningoptions

Ok 链接成功;

另外用下面的方法也可以在没有配置tnsname.ora的情况下访问;

[oracle@localhost ~]$ sqlplus scott/tiger@//192.168.1.100/orcl

SQL*Plus: Release 11.2.0.1.0 Production onSun Jul 28 13:45:43 2013

Copyright (c) 1982, 2009, Oracle.  All rights reserved.

Connected to:

Oracle Database 10g Enterprise EditionRelease 10.2.0.3.0 - Production

With the Partitioning, OLAP and Data Miningoptions

[oracle@localhost ~]$ sqlplus scott/tiger@//192.168.1.100/orcl

SQL*Plus: Release 11.2.0.1.0 Production onSun Jul 28 13:45:43 2013

Copyright (c) 1982, 2009, Oracle.  All rights reserved.

Connected to:

Oracle Database 10g Enterprise EditionRelease 10.2.0.3.0 - Production

With the Partitioning, OLAP and Data Miningoptions

sqlplus 链接数据库的更多相关文章

  1. sqlplus链接数据库报ORA-09925: Unable to create audit trail file

    [localhost.localdomain]:[/oracle11/app/oracle11/product/11.2.0/dbhome_1/dbs]$ sqlplus / as sysdba SQ ...

  2. PHP学习-链接数据库

    链接数据库文件:conn.php <?php $conn = mysql_connect("localhost:3306","root","us ...

  3. PHP 链接数据库1(连接数据库&简单的登录注册)

    对 解析变量的理解 数据库的名称和表的名称不能重复 从结果中取出的数据   都是以数组的形式取出的 1.PHP查询数据库中的某条信息 //PHP链接数据库 /*1.造链接对象 IP地址 用户名 密码 ...

  4. JDBC的使用(一):引用外部jar;代码链接数据库

    一:引用外部jar 1.首先不jar文件放到项目下: 2.在Eclipse中,右键相应的项目--构建路径--配置构建路径--库--添加外部jar:选中-打开-应用-确定. 二:代码链接数据库 1.加载 ...

  5. Connect to Database Using Custom params链接数据库配置参数说明

    使用RF的关键字Connect to Database Using Custom params链接数据库,对应的参数说明: a)     第一个参数我使用的是cx_Oracle,就写这个 b)     ...

  6. php链接数据库

      1:找到 ySQL服务器 $conn = mysql_connect("localhost","","") or die("链 ...

  7. 安装vs2013以后,链接数据库总是报内存损坏,无法写入的错误

    安装vs2013以后,链接数据库总是报内存损坏,无法写入的错误 这个错误几个月以前解决过一次,但是到又碰到的时候,竟然完全忘记当时怎么解决的了, 看来上了年纪记忆真是越来越不行了... 解决方案很简单 ...

  8. jsp链接数据库

    数据库表代码: /*Navicat MySQL Data Transfer Source Server : localhost_3306Source Server Version : 50528Sou ...

  9. 本地开发 localhost链接数据库比127.0.0.1慢

    自己手写一段代码的时候发现一个问题  链接数据库的时候 用 127.0.0.1比localhost明显的快,localhost要等一下才会有响应 而127.0.0.1就是瞬间响应.一番排查,发现了一个 ...

随机推荐

  1. winsock开发重复定义问题

    参考: VS2013使用winsock.h和winsock2.h发生冲突后的终极解决方法:http://www.cnblogs.com/Shirlies/p/5137548.html WINSOCK. ...

  2. python运维开发(二十二)---JSONP、瀑布流、组合搜索、多级评论、tornado框架简介

    内容目录: JSONP应用 瀑布流布局 组合搜索 多级评论 tornado框架简介 JSONP应用 由于浏览器存在同源策略机制,同源策略阻止从一个源加载的文档或脚本获取或设置另一个源加载的文档的属性. ...

  3. python之3内置容器

    所谓内置容器,就是不需要第三方模块,就可以使用的. 1.list容器,一个有序序列,类似于数组,但比数组强大很多 1.1.如何初始化list,直接一个[]即可,这是一个空的list >>& ...

  4. Asp.Net MVC+EF+三层架构的完整搭建过程

    架构图: 使用的数据库: 一张公司的员工信息表,测试数据 解决方案项目设计: 1.新建一个空白解决方案名称为Company 2.在该解决方案下,新建解决方案文件夹(UI,BLL,DAL,Model) ...

  5. 不同服务器数据库之间的数据操作 sp_addlinkedserver

    --创建链接服务器  exec sp_addlinkedserver   'ITSV ', ' ', 'SQLOLEDB ', '远程服务器名或ip地址 '  exec sp_addlinkedsrv ...

  6. ViewBag、ViewData和TempData使用方法、区别与联系

    一.区别与联系 ViewData 和 TempData 都可以传递弱类型数据,区别如下:TempData 只在当前 Action 中有效,生命周期和 View 相同:保存在Session中,Contr ...

  7. Redhat关闭SELinux和防火墙的办法(转)

    Redhat使用了SELinux来增强安全,关闭的办法为:1. 永久有效修改 /etc/selinux/config 文件中的 SELINUX="" 为 disabled ,然后重 ...

  8. Merge Two Sorted Lists 解答

    Question Merge two sorted linked lists and return it as a new list. The new list should be made by s ...

  9. The Java™ Tutorials下载地址

    1.The Java™ Tutorials下载地址: http://www.oracle.com/technetwork/java/javase/java-tutorial-downloads-200 ...

  10. Windows7&IIS7.5部署Discuz

    IIS CGI一定要安装 IIS 网站中添加关联程序 ,添加默认文档 http://www.cnblogs.com/ajunForNet/archive/2012/09/12/2682063.html