Skip to main content
Solved

How can i connect to oracle if my password contains @ symbol in it

  • Jul 25, 2017 12:20 PM UTC
  • 14 replies
  • 2478 views

f.kemminje
Contributor
Forum|alt.badge.img+11

Hi Team,

fme 2016

Both reading and writing to oracle spatial.

My customer has @ symbol in his oracle password string.

in my fmw file, oracle connection string is published parameter, and user has to pass the easy connect string to this parameter like

user1/x3#@rtye@mydb

now there are two @ symbols and fme treats rtye@mydb as dbname and fails to connect.

but thru oracle's sqlplus i can connect. not from fme.

and if i give these three parameter separately to sql executor it works good.

 

how can i connect with just one text string with @ symbol in password? please help.

there are lot of fmws developed and i exposed connection string as published parameter

 

Best answer by fmelizard

Hi @fkemminje, I'm pleased to let you know that the issue regarding connecting to Oracle with a string using a password containing an @ symbol has been fixed in our latest beta: FME 2018.0 Build 18162 which is now available for download.

View original
This post is closed to further activity.
It may be an old question, an answered question, an implemented idea, or a notification-only post.
Please check post dates before relying on any information in a question or answer.
For follow-up or related questions, please post a new question or idea.
If there is a genuine update to be made, please contact us and request that the post is reopened.

14 replies

david_r
Celebrity
  • Jul 25, 2017 12:39 PM UTC

I suspect that's not the fault of FME, but of the Oracle client libraries. Sqlplus is a different beast and I suspect it's a bit more intelligent about the @ symbol than the client libraries.

You may want to try quoting the password, e.g.

user1/\"x3#@rtye\"@mydb

See also: http://nadvi.blogspot.ch/2011/02/oracle-password-with-or-special.html


redgeographics
VIP
Forum|alt.badge.img+63

I did a bit of googling at it appears you can enclose the password between quotes (") if it contains a special character, like the @

There's also lots of articles specifically saying not to use @ in your Oracle password...


david_r
Celebrity
  • Jul 25, 2017 12:47 PM UTC

I did a bit of googling at it appears you can enclose the password between quotes (") if it contains a special character, like the @

There's also lots of articles specifically saying not to use @ in your Oracle password...

Agree, I'm not sure I'd recommend using "special" characters in Oracle passwords e.g. backslash and whatnot. More info: http://www.oradba.ch/2014/06/oracle-passwords-and-special-characters/

 


f.kemminje
Contributor
Forum|alt.badge.img+11
  • Author
  • Contributor
  • Jul 25, 2017 1:19 PM UTC

I suspect that's not the fault of FME, but of the Oracle client libraries. Sqlplus is a different beast and I suspect it's a bit more intelligent about the @ symbol than the client libraries.

You may want to try quoting the password, e.g.

user1/\"x3#@rtye\"@mydb

See also: http://nadvi.blogspot.ch/2011/02/oracle-password-with-or-special.html

@David, this does not work

 

 


f.kemminje
Contributor
Forum|alt.badge.img+11
  • Author
  • Contributor
  • Jul 25, 2017 1:21 PM UTC

I did a bit of googling at it appears you can enclose the password between quotes (") if it contains a special character, like the @

There's also lots of articles specifically saying not to use @ in your Oracle password...

@ redgeographics yes I know, but this is created by one of our customer. i cant ask them to change. Moreover oracle accepts @ symbol in password.

david_r
Celebrity
  • Jul 25, 2017 1:23 PM UTC
@David, this does not work

 

 

Did you also try without the backslashes, as described in the blog?

 

user1/"x3#@rtye"@mydb

redgeographics
VIP
Forum|alt.badge.img+63
@ redgeographics yes I know, but this is created by one of our customer. i cant ask them to change. Moreover oracle accepts @ symbol in password.
Actually, you can ask them to change...

 


steveatsafe
Safer
Forum|alt.badge.img+16

I tested creating a new database connection to Oracle 12c for a new user with a password of give@eight and it works if you (as @redgeographics indicates) wrap the password in quotes "give@eight".

 

NOTE I had to do the same in Oracle to set the password. Ex. I altered the users password with: alter user bobby identified by "give@eight"; If I didn't use the quotes, Oracle complained.

fmelizard
Safer
Forum|alt.badge.img+22
  • Safer
  • Jul 26, 2017 10:46 PM UTC

Hi @fkemminje. I've asked our development team to investigate if there is a way to pass an easy connect string as a published parameter into FME successfully if the password contains "@". I'll provide more information here once I can.


f.kemminje
Contributor
Forum|alt.badge.img+11
  • Author
  • Contributor
  • Jul 27, 2017 3:53 AM UTC

I tested creating a new database connection to Oracle 12c for a new user with a password of give@eight and it works if you (as @redgeographics indicates) wrap the password in quotes "give@eight".

 

NOTE I had to do the same in Oracle to set the password. Ex. I altered the users password with: alter user bobby identified by "give@eight"; If I didn't use the quotes, Oracle complained.
Hi @SteveAtSafe You said it works.

 

Did you try it in FME ? or oracle (sqlplus or Toad)

 

even it is working working for me in sqlplus and Toad, But not in fme(oracle reader, sqlexecutor or joiner) even if I wrap the password in quotes

 


f.kemminje
Contributor
Forum|alt.badge.img+11
  • Author
  • Contributor
  • Jul 27, 2017 3:57 AM UTC

Hi @fkemminje. I've asked our development team to investigate if there is a way to pass an easy connect string as a published parameter into FME successfully if the password contains "@". I'll provide more information here once I can.

waiting for safe Answer.

 

Here My complaint is

 

if it is working in sqlplus or Toad for oracle then why dont in FME ?

 

FME passes the same string to Oracle right?

 

it has to work. or

 

 

Did fme splits the connection string at @ symbol before passing to Oracle?

 

 


david_r
Celebrity
  • Aug 3, 2017 8:16 AM UTC
Did you also try without the backslashes, as described in the blog?

 

user1/"x3#@rtye"@mydb
Did you try the above? Can you please post the relevant part of your log?

f.kemminje
Contributor
Forum|alt.badge.img+11
  • Author
  • Contributor
  • Sep 1, 2017 12:00 PM UTC

Hi @fkemminje. I've asked our development team to investigate if there is a way to pass an easy connect string as a published parameter into FME successfully if the password contains "@". I'll provide more information here once I can.

Hello mam, reminding...

 

 


fmelizard
Safer
Forum|alt.badge.img+22
  • Safer
  • Best Answer
  • Sep 7, 2017 3:56 PM UTC

Hi @fkemminje, I'm pleased to let you know that the issue regarding connecting to Oracle with a string using a password containing an @ symbol has been fixed in our latest beta: FME 2018.0 Build 18162 which is now available for download.