#chiroito ’s blog

Java を中心とした趣味の技術について

Oracle VM Manager 3.0でのパスワードにトラップ

 Oracle VM Manager 3.0をインストールする時にDBのパスワードを聞かれますが、このパスワードに特定の条件を与えると『The database could not be reached using the provided connection info.』なんて事を言われてしまった時の解決策です。

環境

結論

 データベースのsysアカウントのパスワードの指定では基本的に/bin/shで特別な意味がある特殊文字を特別な意味のある場所で一切使えません。そのため、既存のデータベースを利用する場合にそれらの文字をパスワードに含めているとそのデータベースを利用してOracle VM Manager 3.0は使えません。(使う方法があれば教えて下さい)新規でデータベースをインストールする場合はこれらの文字を入れないようにしましょう。

トラップについて

 Oracle VM Manager 3.0をインストールする時にデータベースの管理者のパスワードを聞かれます。
  • Enter the Oracle Database SYSTEM password:(Standard Mode)
  • Enter a password for all logins used during the installation:(Simple Mode)
また、Oracle Database 11g XEを新規でインストールする場合は下記の制約を満たさなければなりません。
Passwords need to be between 8 and 16 characters in length.
Passwords must contain at least 1 lower case and 1 upper case letter.
Passwords must contain at least 1 numeric value or special character.

 この『special character』の部分に問題があります。私が既存のsysアカウントのパスワードに設定していたパスワードの先頭文字は#でした。すると
The database could not be reached using the provided connection info.
Arguments: driver class name, connection url, username, password, file name

 ログを見たりインストールスクリプトを見ても問題はありそうにありません。もちろんsqlplusは自ホストからも他ホストからも繋がります。いろいろ考えてひょっとするとと思いパスワードを変えてみると問題無くインストール完了。ということでいくつかテストしてみました。

OKケース

A#bcdefg
Ab#cdefg
Abc#defg
Abcd#efg
Abcde#fg
Abcdef#g
Abcdefg#
!Abcdefg
%Abcdefg

NGケース

 基本的に/bin/shで特別な意味がある特殊文字は一切使えません。
#Abcdefg
$Abcdefg
>Abcdefg
The database could not be reached using the provided connection info.
Arguments: driver class name, connection url, username, password, file name
"Abcdefg
A"bcdefg
The database could not be reached using the provided connection info.
/bin/sh: -c: line 0: unexpected EOF while looking for matching `"'
/bin/sh: -c: line 1: syntax error: unexpected end of file
&Abcdefg
The database could not be reached using the provided connection info.
/bin/sh: Abcdefg: command not found
Arguments: driver class name, connection url, username, password, file name
A&bcdefg
The database could not be reached using the provided connection info.
/bin/sh: bcdefg: command not found
Arguments: driver class name, connection url, username, password, file name
'Abcdefg
The database could not be reached using the provided connection info.
/bin/sh: -c: line 0: unexpected EOF while looking for matching `''
/bin/sh: -c: line 1: syntax error: unexpected end of file
The database could not be reached using the provided connection info.
/bin/sh: Abcdefg: No such file or directory