SQL Developerは、Oracle社が提供している、データベース開発ツールです。
GUIを使ってデータベースの管理・SQLの発行・PL/SQLの開発などができ、世界中で150万人以上の人が利用するツールです。
この記事では、「SQL Developerがうまく起動しない?」という時に役立つ、起動エラー原因の解説と対処方法について解説します。
【関連記事】
SQL Developerのインストール方法はこちらの記事で解説しています。
▶SQL Developerを使ってみよう!資格取得の学習にも使える便利なツール
目次
SQL Developerが起動しない?
SQL Developerは便利なデータベース管理ツールですが、起動時のエラーで最初はうまく起動しないことがあります。
SQL Developerの内部は「Java」で作られており、大半のエラーはJavaに関連するエラーとなります。
以下は、代表的なSQL Developerが起動しないときのエラーの原因です。
Javaがインストールされていない
SQL Developerは「Java」で作られた製品のため、実行する環境にJavaがインストールされているい必要があります。
SQL Developerのバージョンが異なる
SQL Developerは、そのバージョンごとにサポートしているOS(オペレーションシステム)が異なります。
また、SQL Developerは「Windows」「Linux」「macOS」をサポートしていますが、インストーラは、各OS 毎に存在しているため、自分の環境にあったインストーラを使うようにしましょう。
Javaバージョンが異なる
SQL Developerのバージョン毎に、必要なJavaのバージョンが異なります。例えば、SQL Developer 12.1では「Java 8または9」が必要なのに、「Java 6」がSQL Developerに設定されていると正しく起動しません。
Javaの32bitと64bitの相違
Javaのバージョンが合っていても、Javaの32bitと64bitを間違えると、SQL Developerが起動できません。例えば、Javaが32bitでSQL Developerが64bit版の場合、ビット数の相違により正しく起動しません。
ユーザーファイルが壊れている
Javaのバージョンや、32bit/64bitが合っているにもかかわらず、SQL Developerが起動できない時は、SQL Developerのユーザーファイルが壊れて起動できないことも考えられます。
壊れているファイルが特定できればよいですが、大抵の場合、どのファイルが壊れているか分からないため、ユーザーファイルを一度すべてクリアする必要があります。
ヒープメモリの問題
SQL DeveloperはJavaで動いているため、Javaの仮想環境(JVM)に割り当てられたヒープメモリのサイズが不足していると、SQL Developerが正しく起動しません。
SQL Developerの起動エラーは大抵Javaが原因
前述のように、SQL DeveloperはJavaに関することで、起動エラーが度々発生します。
以降は、SQL Developerが起動しないエラーの原因毎に、対応方法を解説していきます。
Javaをインストール
SQL Developerを起動する端末にJavaがインストールされていない時は、Javaをインストールします。Javaが端末にインストールされているかの確認方法は、以下の記事を参考にしてください。
【関連記事】
▶初心者必見!JavaやJDKのバージョン確認やアップデート方法について説明します!
Javaがインストールされているにもかかわらず、次のようなエラーが表示される場合は、SQL DeveloperのJava Homeの設定が誤っている可能性があります。
「Unable to create an instance of the Java Virtual Machine Located at path: [javaのインストール先パス]\jvm.dll」
SQL DeveloperのJava Homeの設定は、次のパスのsqldeveloper.confで設定されています。
▪️ Windowsの場合
C:\Users\<user名>\AppData\Roaming\sqldeveloper\19.1.0\product.conf
▪️ macOSの場合
$HOME/.sqldeveloper/<product-version>/product.conf
sqldeveloper.confをエディタで開いて、次のようにSet JavaHomeと書かれている行を探し、設定されているJavaのパスが正しいか確認します。
SetJavaHome C:\Program Files\Java\jdk1.8.0_51
SQL Developerのバージョンを確認する
古いSQL Developerのバージョンだと、最新のOSをサポートしていないことがあります。
インストールするバージョンが、使用している端末のOSをサポートしているか確認しましょう。
サポートOSの確認はOracle社の公式ページから行えます。
Oracle SQL Developer 18.2リリース・ノート
SQL Developer Release 19.1 インストレーション・ガイド
Javaバージョンが異なる
SQL Developerのバージョン毎に、必要なJavaのバージョンが異なります。Oracle社の公式ページを確認し、必要なJavaのバージョンを確認しましょう。
2020年7時点の最新バージョンである、SQL Developer Release 19,1では、Java8または9が必要です。
また、Javaの32bitと64bitの相違でもSQL Developerは起動しないため、SQL Developerが32bitであれば、32bit版のJava、64bitのSQL Developerであれば、64bit版のJavaをインストールしましょう。
SQL Developer Release 19.1 インストレーション・ガイド
ユーザーファイルを削除する
Javaのバージョンや、32bit/64bitが合っているにもかかわらず、SQL Developerが起動できない時は、SQL Developerのユーザーファイルが壊れて起動できない可能性があります。
エラーの内容から、壊れているファイルが特定できればよいですが、分からない場合は、ユーザーファイルを一度すべてクリア(ファイルを削除)する必要があります。
ユーザーファイルは、以下のフォルダに格納されており、クリアする場合はフォルダごと削除します。
C:\Users\[OSユーザ名]\AppData\Roaming\SQL Developer
ヒープメモリのサイズを変える
SQL Developerの起動時に、次のようなエラーが表示された場合、OSの空きメモリが少なく、ヒープメモリが割り当てられない状態です。
「Error occured during initialization of VM Could not reserve enough space for object heap」
SQL DeveloperはJavaで動作する製品のため、Javaのヒープメモリの割り当てに失敗すると起動時にエラーになります。ヒープメモリのサイズを、OSの空きメモリ以下に設定することで、エラーを回避できます。
SQL Developerのヒープメモリの設定は、次のパスのide.conf設定されています。
[SQL Developerのインストール先]\sqldeveloper\ide\bin\ide.conf
ide.confをエディタで開いて、AddVMOption -XmxXXXMと書かれている行を探し、ヒープメモリのサイズをOS空きメモリの量に合わせて設定します。
AddVMOption -Xmx512M
AddVMOption -Xms512M
まとめ
SQL Developerが起動しないよくある原因と、対処方法を解説してきました。SQL Developerがうまく起動しない時は、この記事を参考にエラーの対処を行なってみてください。
-XmxXXXMに、メモリー割当てプールの最大サイズを指定します。-XmsXXXMには、Javaヒープ領域の初期サイズを指定します。ヒープメモリのサイズを、あまり小さすぎる値にすると、SQL Developer起動中に、メモリ不足エラーになる可能性があります。