ora-01017 和oracle database link
DB link ,创建完了后总是报密码错误.我感到奇怪.明明密码是对的.怎么可能错误呢.
SQL> create public database link kk40 connect to khfx identified by xffsf3 using '1004'
SQL> select * from ;
select * from
ORA-01017: invalid username/password; logon denied
ORA-02063: 紧接着 line (起自 KK40)
SQL> create public database link kk40 connect to khfx identified by "xffsf3" using '1004'
Database link created
SQL> select * from ;
DUMMY
-----
X
原来加上双引号才可以啊! 记录一下.
=====================================================================
一、创建dblink 原始语句:
create public database link db_lsxy
connect to lsxy identified by lsxy
using '(DESCRIPTION =(ADDRESS_LIST =(ADDRESS = (PROTOCOL = TCP)(HOST = 192.xxx.xxx.xxx)(PORT = 2261)))(CONNECT_DATA = (SERVICE_NAME = serName)))';
注意:这里用户密码都是小写的。
二、创建dblink 后使用时提示如下错误:
ORA-01017: invalid username/password; logon denied
ORA-02063: preceding line from <link_name>
三、问题分析:
根据ORA-01017的提示是连接到另一方的用户密码错误,于是直接使用配置的用户密码(lsxy/lsxy)登录数据库发现正常登录,进一步的查看建立好后的dblink 语句,其中用户名都转化为了大写,由此猜测密码是否也被转化为了大写从而导致密码错误。
根据猜测百度了下,确实有这种情况。当9i或10g的版本的Oracle数据库连接11g的版本时,会自动将密码转化为大写。
四、解决办法:
(方法1、如果11g的数据库用户的密码是小写字母,将其改成大写,然后再去用9i去连接,这个方法太过粗鄙影响也比较大不考虑使用。
(方法2、将密码用双引号引起来。如 identified by "jxunicom_sale"
采用方法2,我们将dblink 的创建语句稍微改写即可,如下:
create public database link DB_LSXY
connect to lsxy identified by "lsxy"
using '(DESCRIPTION =(ADDRESS_LIST =(ADDRESS = (PROTOCOL = TCP)(HOST = 192.xxx.xxx.xxx)(PORT = 2261)))(CONNECT_DATA = (SERVICE_NAME = serName)))';
程序员的基础教程:菜鸟程序员
ora-01017 和oracle database link的更多相关文章
- Oracle database link中查询会开启事务吗?
关于oracle database link,使用database link相关的查询语句是否会开启事务呢?我们知道,在数据库中一个简单的SELECT查询语句不会产生事务(select for upd ...
- Oracle DATABASE LINK(DBLINK)创建
数据库全局名称可以用以下命令查出: SELECT * FROM GLOBAL_NAME; 修改可以用以下语句来修改参数值: ALTER SYSTEM SET GLOBAL_NAME=TRUE/FALS ...
- oracle Database Link
1 Database Link 的创建: 有两个数据库服务器A/B, 其中A的IP地址为172.20.36.245, 服务器B为本机.服务器B上的数据库实例名为ORCL,在本机上的服务监听配置上有服务 ...
- Oracle Database Link 连接数据库复制数据
--1. 创建dblink连接 create database link mdm66 connect to lc019999 identified by aaaaaa using '10.24.12. ...
- Oracle Database Link 的创建和使用小见
假设:需要从数据库db_a通过db_link连接到db_b查询数据库b的部分相关信息 前提条件: 数据库a账户需要有创建dblink的权限,如果没有可以使用dba账户赋权限 grant CREATE ...
- oracle Database link 创建
http://www.cnblogs.com/yhason/p/3735319.html
- Oracle Database Links解析
什么是Database Links呢? 首先我们阐述下它的作用:使用户可以通过一个数据库访问到另外一个远程数据库. 那么Database Link是存储着远程数据库的连接信息. 如下图所示: 用户Sc ...
- Oracle数据库如何创建DATABASE LINK?
Oracle数据库如何创建DATABASE LINK? 2011-08-09 14:54 taowei20061122 CSDN博客 http://blog.csdn.net/taowei20061 ...
- 在oracle下如何创建database link全面总结
物理上存放于网络的多个ORACLE数据库,逻辑上可以看成一个单一的大型数据库,用户可以通过网络对异地数据库中的数据进行存取,而服务器之间的协同处理对于工作站用户及应用程序而言是完全透明的,开发人员无需 ...
随机推荐
- canvas/CSS仪表盘效果
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...
- nltk 的分词器punkt: ssl问题无法下载
报错: LookupError: ********************************************************************** Resource pu ...
- (三)underscore.js框架Objects类API学习
keys_.keys(object) Retrieve all the names of the object's properties. _.keys({one: 1, two: 2, three ...
- [Python设计模式] 第12章 基金理财更省事——外观模式
github地址:https://github.com/cheesezh/python_design_patterns 题目1 用程序模拟股民直接炒股的代码,比如股民投资了股票1,股票2,股票3,国债 ...
- C# System.IO.StreamWriter
实现一个 TextWriter,使其以一种特定的编码向流中写入字符. using System; using System.Collections.Generic; using System.Linq ...
- 使用日志服务进行Kubernetes日志采集
阿里云容器服务Kubernetes集群集成了日志服务(SLS),您可在创建集群时启用日志服务,快速采集Kubernetes 集群的容器日志,包括容器的标准输出以及容器内的文本文件. 新建 Kubern ...
- centos7设置服务为开机自启动(以crond.serivce为例)
本文转自:https://blog.51cto.com/mrxiong2017/2084790 一.设置crond.serivice服务为开机自启动 步骤1:查看crond.serivce服务的自启动 ...
- 2017年PHP程序员未来路在何方
PHP 从诞生到现在已经有20多年历史,从Web时代兴起到移动互联网退潮,互联网领域各种编程语言和技术层出不穷, Node.js . GO . Python 不断地在挑战 PHP 的地位.这些技术的推 ...
- word,excel,ppt,txt转换为 PDF
/// <summary> /// 将word文档转换成PDF格式 /// </summary> /// <param name="sourcePath&quo ...
- Linux下printf、fprintf、sprintf的区别
(1)fprintf() int fprintf( FILE *stream, const char *format, ... ); 用于文件操作,根据指定的format(格式)发送信息(参数)到 ...