从oracle 10g开始,oracle已经开始支持简化连接方式,这种方法简化了连接oracle数据库的步骤,oracle用户不再需要配置tnsnames.ora就可以直接连接到远端的数据库。
以下是一个使用简化连接的例子:
sql> conn system/test@172.25.13.227/ora11g_p.ytk-thinkpad已连接。
sql>
|
大家可以发现在屏幕上直接显式输入密码是很难保障安全的,假如这里省略了密码:
sql> conn system@172.25.13.227/ora11g_p.ytk-thinkpad
error:
ora-12514: tns: 监听程序当前无法识别连接描述符中请求的服务
警告: 您不再连接到 oracle。
|
oracle连接报错,尝试将整个连接字符串用引号包围,仍然出现错误:
sql> conn "system@172.25.13.227/ora11g_p.ytk-thinkpad"输入口令:
error:
ora-01017: invalid username/password; logon denied
|
大家可以发现这里的错误是由于oracle发现@后面还包含了/,因此没有将@后面的字符串作为连接符。
相对于后面的情况,oracle把整个字符串作为用户名,因此才会报错。
正确的方式是将引号仅包含@后面的字符:
sql> conn system@"172.25.13.227/ora11g_p.ytk-thinkpad"输入口令:已连接。
sql>
|
以下是在sqlplus中使用connect命令的情况,假如是在操作系统命令行下请使用sqlplus命令,方法和上面的类似,但要使用到转义符。
先看windows环境下:
e:\>sqlplus system@172.25.13.227/ora11g_p.ytk-thinkpad
sql*plus: release 10.2.0.1.0 - production on 星期一 2月 11 01:46:56 2008
copyright (c) 1982, 2005, oracle. all rights reserved.
error:
ora-12514: tns: 监听程序当前无法识别连接描述符中请求的服务
请输入用户名:
error:
ora-01017: 用户名/口令无效; 登录被拒绝
请输入用户名:
error:
ora-01017: 用户名/口令无效; 登录被拒绝
sp2-0157: 在 3 次尝试之后无法连接到 oracle, 退出 sql*plus
e:\>sqlplus system@"172.25.13.227/ora11g_p.ytk-thinkpad"
sql*plus: release 10.2.0.1.0 - production on 星期一 2月 11 01:47:08 2008
copyright (c) 1982, 2005, oracle. all rights reserved.
error:
ora-12514: tns: 监听程序当前无法识别连接描述符中请求的服务
请输入用户名:
error:
ora-01017: 用户名/口令无效; 登录被拒绝
请输入用户名:
error:
ora-01017: 用户名/口令无效; 登录被拒绝
e:\>sqlplus system@"""172.25.13.227/ora11g_p.ytk-thinkpad"""
sql*plus: release 10.2.0.1.0 - production on 星期一 2月 11 01:47:23 2008
copyright (c) 1982, 2005, oracle. all rights reserved.
输入口令:
连接到:
oracle database 11g enterprise edition release 11.1.0.6.0 - production
with the partitioning, olap, data mining and real application testing options
sql>
|
在linux环境下只是转义符不同:
[oracle@yangtk ~]$ sqlplus system@\"172.25.13.227/ora11g_p.ytk-thinkpad\"
sql*plus: release 11.1.0.6.0 - production on sun jan 6 09:30:45 2008
copyright (c) 1982, 2007, oracle. all rights reserved.
enter password:
connected to:
oracle database 11g enterprise edition release 11.1.0.6.0 - production
with the partitioning, olap, data mining and real application testing options
sql>
|