Установка Oracle SQL Developer на Linux

Установка Oracle SQL Developer на Linux

В предыдущем посте была установлена Oracle Database 18c Express Edition. В данном посте рассматривается установка Oracle SQL Developer 19.2.1 на Oracle Linux и подключение с помощью Oracle SQL Developer к Oracle Database 18c Express Edition. Oracle SQL Developer это бесплатный графический инструмент, который облегчает задачи разработчика и администратора баз данных. С помощью SQL Developer можно просматривать объекты базы данных (такие как, таблицы, представления, индексы, процедуры и т.п.), писать, редактировать, искать ошибки и выполнять SQL- запросы, манипулировать и экспортировать данные. Oracle SQL Developer позволяет подключаться не только к базам данных Oracle, но и к сторонним базам данных. Например, используя SQL Developer можно подключится к MS SQL, PostgreSQL, Sybase и т.д.  В одном из ближайших постов будет рассмотрено подключение к облачной базе Oracle – Oracle Autonomous Database используя SQL Developer.

Ниже будут рассмотрены следующие шаги:

  • Установка JDK
  • Установка SQL Developer

Во время первичного запуска установленной SQL Developer система потребует указать абсолютный путь к директории установки JDK (Type the full pathname of a JDK installation). Поэтому необходимо проверить, установлена ли на операционной системе JDK и узнать директорию установки. Следующая команда покажет версию установленной JDK.

[root@dushanbe ~]# java -version  
openjdk version "1.8.0_131"
OpenJDK Runtime Environment (build 1.8.0_131-b12) 
OpenJDK 64-Bit Server VM (build 25.131-b12, mixed mode) 

С помощью этой команды можно найти директорию установки:

[root@dushanbe ~]# find / -name java
/etc/java    
/etc/pki/ca-trust/extracted/java
/etc/pki/java
/etc/alternatives/java
/var/lib/alternatives/java
/usr/bin/java
/usr/lib/java
/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.131-11.b12.el7.x86_64/jre/bin/java
/usr/share/java
/usr/share/swig/2.0.10/java
/opt/oracle/product/18c/dbhomeXE/jdk/bin/java
/opt/oracle/product/18c/dbhomeXE/jdk/jre/bin/java
/opt/oracle/product/18c/dbhomeXE/xdk/doc/java
[root@dushanbe ~]#

Как видно из результатов команд, на операционной системе есть предустановленная OpenJDK версии 1.8.0_131 в директории /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.131-11.b12.el7.x86_64.

Надо будет установить JDK, так как OpenJDK не позволит запустить SQL Developer. При запуске с указанием директории OpenJDK будет следующая ошибка:

Oracle SQL 
Developer Copyright (c) 2005, 2018, Oracle and/or its affiliates. All rights reserved.
Default JDK not found

Type the full pathname of a JDK installation (or Ctrl-C to quit), the path will be stored in /root/.sqldeveloper/19.2.1/product.conf

/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.131-11.b12.el7.x86_64

Error: /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.131-11.b12.el7.x86_64/bin/java not found or not a valid JDK

Type the full pathname of a JDK installation (or Ctrl-C to quit), the path will be stored in /root/.sqldeveloper/19.2.1/product.conf

Поэтому будет установлена JDK. OpenJDK можно как удалить, так и оставить установленным. Наличие OpenJDK не будет препятствовать запуску SQL Developer.

Установка JDK

Если на сервере (или на тестовой виртуальной машине) базы данных нет соединения к интернету, то JDK можно скачать с официального сайта Oracle – https://www.oracle.com/java/technologies/javase/javase-jdk8-downloads.html и установить локально. Для данного поста был загружен RPM пакет 8 версии для Linux ( jdk-8u241-linux-x64.rpm ). Потом нужно скопировать файл на сервер базы данных.

В примере ниже скачанный RPM JDK пакет был скопирован в директорию /tmp. Далее с помощью rpm устанавливается JDK.

[root@dushanbe ~]# ls /tmp/jdk*
/tmp/jdk-8u241-linux-x64.rpm
[root@dushanbe ~]# rpm -ivh /tmp/jdk-8u241-linux-x64.rpm 
warning: /tmp/jdk-8u241-linux-x64.rpm: Header V3 RSA/SHA256 Signature, key ID ec551f03: NOKEY
Preparing…                        ################################# [100%]
Updating / installing…
 1:jdk1.8-2000:1.8.0_241-fcs      ################################# [100%]
Unpacking JAR files…
     tools.jar…
     plugin.jar…
     javaws.jar…
     deploy.jar…
     rt.jar…
     jsse.jar…
     charsets.jar…
     localedata.jar…
[root@dushanbe ~]#

Установка JDK успешно завершена. На операционной системе работают OpenJDK и JDK. Если проверить версию, то команда возвращает только данные OpenJDK.

[root@dushanbe ~]# java -version
openjdk version "1.8.0_131"
OpenJDK Runtime Environment (build 1.8.0_131-b12)
OpenJDK 64-Bit Server VM (build 25.131-b12, mixed mode)

Используя команду alternatives можно сменить JDK по умолчанию. Ниже выполняется переключение с OpenJDK на JDK.

[root@dushanbe ~]# alternatives --config java
There are 2 programs which provide 'java'. 
 Selection    Command
 *+ 1         java-1.8.0-openjdk.x86_64 (/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.131-11.b12.el7.x86_64/jre/bin/java)
    2         /usr/java/jdk1.8.0_241-amd64/jre/bin/java
Enter to keep the current selection[+], or type selection number: 2

Далее проверяется версия JDK по умолчанию и директория его установки.

[root@dushanbe ~]# java -version
java version "1.8.0_241"
Java(TM) SE Runtime Environment (build 1.8.0_241-b07)
Java HotSpot(TM) 64-Bit Server VM (build 25.241-b07, mixed mode)
[root@dushanbe ~]#
[root@dushanbe ~]# find / -name java
/etc/java
/etc/pki/ca-trust/extracted/java
/etc/pki/java
/etc/alternatives/java
/var/lib/alternatives/java
/usr/bin/java
/usr/lib/java
/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.131-11.b12.el7.x86_64/jre/bin/java
/usr/share/java
/usr/share/swig/2.0.10/java
/usr/java
/usr/java/jdk1.8.0_241-amd64/bin/java
/usr/java/jdk1.8.0_241-amd64/jre/bin/java
/opt/oracle/product/18c/dbhomeXE/jdk/bin/java
/opt/oracle/product/18c/dbhomeXE/jdk/jre/bin/java
/opt/oracle/product/18c/dbhomeXE/xdk/doc/java
[root@dushanbe ~]#

Как видно из результатов команд, теперь по умолчанию используется JDK версии 1.8.0_241 с директорией установки /usr/java/jdk1.8.0_241-amd64. Можно начать установку SQL Developer. SQL Developer нужно скачать с официального сайта Oracle https://www.oracle.com/tools/downloads/sqldev-downloads.html и установить локально (если отсутствует интернет соединение на сервере базы данных).
В примере ниже RPM пакет SQL Developer версии 19.2.1 был загружен с официального сайта и скопирован в директорию /tmp. Запускается установка пакета.

[root@dushanbe ~]# rpm -Uhv /tmp/sqldeveloper-19.2.1.247.2212.noarch.rpm 
Preparing…                        ################################# [100%]
Updating / installing…
  1:sqldeveloper-19.2.1-247.2212  ################################# [100%] [root@dushanbe ~]# 

Установка SQL Developer успешно завершена. Необходимо перейти в директорию установки ( /opt/sqldeveloper/ ) под пользователем oracle (пользователь операционной системы) и найти исполняемый файл sqldeveloper.sh

[root@dushanbe ~]# su - oracle
Last login: Mon Jun  8 22:55:37 +05 2020 on :0
[oracle@dushanbe ~]$ 
[oracle@dushanbe ~]# cd /opt/sqldeveloper/
[oracle@dushanbe sqldeveloper]# ls
configuration  dropins  equinox   icon.png  javavm  jdev  jviews  modules   rdbms      sqldeveloper          sqldeveloper.exe  sqlj
dataminer      dvt      external  ide       jdbc    jlib  module  netbeans  sleepycat  sqldeveloper.desktop  sqldeveloper.sh   svnkit
[oracle@dushanbe sqldeveloper]# ll
total 128
drwxr-xr-x.  2 root root   103 Jun  6 16:42 configuration
drwxr-xr-x.  4 root root    34 Jun  6 16:42 dataminer
drwxr-xr-x.  2 root root    24 Jun  6 16:42 dropins
drwxr-xr-x.  3 root root    16 Jun  6 16:42 dvt
drwxr-xr-x.  2 root root    60 Jun  6 16:42 equinox
drwxr-xr-x.  2 root root  8192 Jun  6 16:42 external
-rw-r--r--.  1 root root  1404 Sep  5  2019 icon.png
drwxr-xr-x.  9 root root    96 Jun  6 16:42 ide
drwxr-xr-x.  3 root root    17 Jun  6 16:42 javavm
drwxr-xr-x.  3 root root    17 Jun  6 16:42 jdbc
drwxr-xr-x.  6 root root    57 Jun  6 16:42 jdev
drwxr-xr-x.  2 root root  4096 Jun  6 16:42 jlib
drwxr-xr-x.  2 root root    89 Jun  6 16:43 jviews
drwxr-xr-x.  2 root root    60 Jun  6 16:43 module
drwxr-xr-x. 17 root root  4096 Jun  6 16:43 modules
drwxr-xr-x.  5 root root    50 Jun  6 16:43 netbeans
drwxr-xr-x.  3 root root    18 Jun  6 16:43 rdbms
drwxr-xr-x.  3 root root    23 Jun  6 16:43 sleepycat
drwxr-xr-x.  6 root root    57 Jun  6 16:43 sqldeveloper
-rw-r--r--.  1 root root   161 Sep  5  2019 sqldeveloper.desktop
-rw-r--r--.  1 root root 90968 Sep  5  2019 sqldeveloper.exe
-rwxr-xr-x.  1 root root    71 Sep  5  2019 sqldeveloper.sh
drwxr-xr-x.  3 root root    17 Jun  6 16:43 sqlj
drwxr-xr-x.  3 root root  4096 Jun  6 16:43 svnkit
[oracle@dushanbe sqldeveloper]#

Запускается SQL Developer ( ./sqldeveloper.sh). Система первый раз потребует указать абсолютный путь к директории установки JDK (Type the full pathname of a JDK installation). Указывается /usr/java/jdk1.8.0_241-amd64 и после чего пойдет процесс начального запуска SQL Developer для работы.

[oracle@dushanbe sqldeveloper]# ./sqldeveloper.sh 

Во время первой загрузки SQL Developer система запускает модальное окно «Confirm Import Preferences». Если есть необходимость импортировать настройки из предыдущей установки SQL Developer, то надо, используя значок Поиска, указать на предварительно экспортированный файл настроек. Если нет такой необходимости, надо нажать «Нет» и система продолжит запуск SQL Developer.

SQL Developer успешно запустился и готов к работе. При первом запуске предлагается следующая опция «Allow automated usage reporting to Oracle». Нужно оставить либо снять галочку и нажать ОК.  Наличие или отсутствие галочки никак не повлияет на работу установленной SQL Developer.

Далее надо нажать на зеленый значок + в левом верхнем углу

и ввести необходимые данные для подключения к Container Database. Необходимо надо обратить внимание, что используется порт 1539, а не 1521 (порт по умолчанию баз данных Oracle).

Подключение к Container Database прошло успешно. В левой части окна под именем подключения можно в списке просмотреть объекты (Tables, Views, Indexes и т.д.) и их настройки. В правой части окна написан sql запрос и получен имя и состояние инстанции.

Кроме запуска из консоли, в дальнейшем SQL Developer можно запустить из графического меню Applications -> Programming -> SQL Developer.

На этом подготовка и установка SQL Developer 19.2.1 на Oracle Linux завершена. Можно подключиться к Container или Pluggable базам данных и начать работу на этом сервере. SQL Developer также позволяет подключиться к другим базам данных, которые установлены на этом локальном сервере (IP: 192.268.0.1) и/или на удаленном сервере. Надо будет указать IP адрес, Port, SID, логин и пароль удаленного сервера базы данных.

В ближайшее время будет написан новый пост с описанием подключения к схеме HR базы данных Oracle Database Express Edition. Схема HR содержит предварительно спроектированную и созданную базу данных с готовыми тестовыми/учебными данными. Обычно данная схема используется в учебных и тестовых целях. Также будет описана установка и подключение к Oracle APEX для разработки web-приложений.

Leave a Reply

Your email address will not be published. Required fields are marked *