Red-Database-Security GmbH is specialized in Oracle Security
The following table contains Oracle default ports for different products like Oracle Database or Oracle Application Server.
Changing the default ports can help to stop simple attacks but not real portscans. In the world of Oracle it is very often not possible to change the default port because the port is hardcoded.
At least for the Oracle database (except iasdb) it’s is recommended to change the TNS listener port from 1521/1526 to something else.
E Managing Oracle Database Port Numbers
During installation, Oracle Universal Installer assigns port numbers to components from a set of default port numbers. This appendix lists the default port numbers and describes how to change the assigned port after installation. It includes information about the following topics:
E.1 About Managing Ports
During installation, Oracle Universal Installer assigns port numbers to components from a set of default port numbers. Many Oracle Database components and services use ports. As an administrator, it is important to know the port numbers used by these services, and to make sure that the same port number is not used by two services on your host.
Most port numbers are assigned during installation. Every component and service has an allotted port range, which is the set of port numbers Oracle Database attempts to use when assigning a port. Oracle Database starts with the lowest number in the range and performs the following checks:
Is the port used by another Oracle Database installation on the host?
The installation may be up or down at the time; Oracle Database can still detect if the port is used.
Is the port used by a process that is currently running?
This could be any process on the host, even a non-Oracle Database process.
Is the port listed in the /etc/services files?
If the answer to any of the preceding questions is yes, Oracle Database moves to the next highest port in the allotted port range and continues checking until it finds a free port.
E.2 Viewing Port Numbers and Access URLs
In most cases, the Oracle Database component’s port number is listed in the tool used to configure the port. In addition, ports for some Oracle Database applications are listed in the portlist.ini file. This file is located in the $ORACLE_HOME /install directory.
If you change a port number, it is not updated in the portlist.ini file, so you can only rely on this file immediately after installation. To find or change a port number, use the methods described in this appendix.
E.3 Port Numbers and Protocols of Oracle Components
The following table lists the port numbers and protocols used by components that are configured during the installation. By default, the first port in the range is assigned to the component, if it is available.
Table E-1 Ports Used in Oracle Components
Oracle SQL*Net Listener
Allows Oracle client connections to the database over Oracle’s SQL*Net protocol. You can configure it during installation. To reconfigure this port, use Net Configuration Assistant.
Shares the SQL*Net port and is configured during installation. To reconfigure this port, use Net Configuration Assistant to reconfigure the Oracle SQL*Net listener.
1521 (same value as the listener)
Listening port for Oracle client connections to Oracle Connection Manager. It is not configured during installation, but can be configured using Net Configuration Assistant.
Oracle Management Agent
HTTP port for Enterprise Management Agent. It is configured during installation.
Oracle Enterprise Manager Database Console
HTTP port for Enterprise Manager Database Control. It is configured during installation. «Changing the Oracle Enterprise Manager Database Console Ports» explains how to modify its port number.
Oracle Enterprise Manager Database Console
RMI port for Enterprise Manager Database Control. It is configured during installation.»Changing the Oracle Enterprise Manager Database Console Ports» explains how to modify its port number.
Enterprise Manager Database Console
JMS port for Enterprise Manager Database Control. It is configured during installation. «Changing the Oracle Enterprise Manager Database Console Ports» explains how to modify its port number.
HTTP port for i SQL*Plus. The port number is automatically assigned during installation. «Changing the i SQL*Plus Ports» explains how to change its port number.
RMI port for i SQL*Plus. The port number is automatically assigned during installation.»Changing the i SQL*Plus Ports» explains how to change its port number.
JMS port for i SQL*Plus. The port number is automatically assigned during installation. «Changing the i SQL*Plus Ports» explains how to change its port number.
Oracle Ultra Search
HTTP port for Oracle Ultra Search. Its port number is assigned automatically when you install Oracle Ultra Search, by using the Custom installation type. «Changing the Oracle Ultra Search Ports» explains how to change its port number.
Oracle Ultra Search
RMI port for Oracle Ultra Search. Its port number is assigned automatically when you install Oracle Ultra Search, by using the Custom installation type. «Changing the Oracle Ultra Search Ports» explains how to change its port number.
Oracle Ultra Search
JMS port for Oracle Ultra Search. Its port number is assigned automatically when you install Oracle Ultra Search, by using the Custom installation type. «Changing the Oracle Ultra Search Ports» explains how to change its port number.
The Oracle XML DB HTTP port is used if Web-based applications need to access an Oracle database from an HTTP listener. It is configured during installation, but you cannot view it afterward. «Changing the Oracle XML DB Ports» explains how to change its port number.
The Oracle XML DB FTP is used when applications need to access an Oracle database from an FTP listener. It is configured during installation, but you cannot view it afterward. «Changing the Oracle XML DB Ports» explains how to change its port number.
Oracle Real Application Clusters (Local Host: Windows only)
— On Rac is configured by default — Is configurable
Oracle Real Application Clusters (Cluster Interconnect: Windows only)
— On RAC is configured by default — Is configurable
Oracle Real Application Clusters (UNIX)
The port number is assigned automatically during installation. You cannot view or modify it afterward.
CRS daemon (Oracle Cluster Ready Services Daemon) internode connection. The port number is assigned automatically during installation. You cannot view or modify it afterward.
Cluster Synchronization Service (CSS)
CSS daemon internode connection for the GM layer. The port number is assigned automatically during installation. You cannot view or modify it afterward.
Oracle Cluster Registry
The port number is assigned automatically during installation. You cannot view or modify it afterward.
Oracle Event Manager
The port number is assigned automatically during installation. You cannot view or modify it afterward.
The port number is assigned automatically during installation. You cannot view or modify it afterward.
E.4 Changing the Oracle Enterprise Management Agent Port
To find the current setting for the Oracle Management agent port, search for EMD_URL in the $ ORACLE_HOME / host_sid /sysman/config/emd.properties file.
To change the Oracle Management Agent HTTP port, use the emca -reconfig ports command:
E.5 Changing the Oracle Enterprise Manager Database Console Ports
To find the current HTTP, RMI, and JMS port settings, search in the following files:
HTTP port : Search for REPOSITORY_URL in the $ORACLE_HOME / host_sid/ sysman/config/emd.properties file.
RMI port : Search for the port attribute in the rmi-server tag in the $ ORACLE_HOME / oc4j/j2ee/OC4J_DBConsole_ host_sid/ config/rmi.xml file.
JMS port : Search for the port attribute in the jms-server tag in the $ ORACLE_HOME / oc4j/j2ee/OC4J_DBConsole_ host_sid/ config/jms.xml file.
To change the Oracle Enterprise Manager Database Control ports, use the emca -reconfig ports command:
where option can be:
DBCONTROL_HTTP_PORT : Sets the HTTP port, for example:
RMI_PORT : Sets the RMI port, for example:
JMS_PORT : Sets the JMS port, for example:
You can enter multiple -reconfig port settings in one line, for example:
E.6 Changing the i SQL*Plus Ports
The following sections describe how to change the i SQL*Plus ports.
Changing the HTTP Port
To change the HTTP port, edit the following files:
$ORACLE_HOME / host _ sid/ sysman/config/emoms.properties
Modify the following port parameters (for example, 5560 ) in the file:
Modify the port attribute of the web-site element:
Changing the RMI Port
To change the RMI port, modify the port attribute of the rmi-server element in the $ORACLE_HOME /oc4j/j2ee/isqlplus/config/rmi.xml file:
Changing the JMS Port
To change the JMS port, modify the port attribute of the jms-server element in the $ORACLE_HOME /oc4j/j2ee/isqlplus/config/jms.xml file:
E.7 Changing the Oracle Ultra Search Ports
The following sections describe how to change the Oracle Ultra Search ports.
Changing the HTTP Port
To change the HTTP port, modify the port attribute of the web-site element in the $ORACLE_HOME /oc4j/j2ee/OC4J_SEARCH/config/http-web-site.xml file:
Changing the RMI Port
To change the RMI port, modify the port attribute of the rmi-server element in the $ORACLE_HOME /oc4j/j2ee/OC4J_SEARCH/config/rmi.xml file:
Changing the JMS Port
To change the JMS port, modify the port attribute of the jms-server element in the $ORACLE_HOME /oc4j/j2ee/OC4J_SEARCH/config/jms.xml file:
E.8 Changing the Oracle XML DB Ports
To change the Oracle XML DB FTP and HTTP ports, you need to run the catxdbdbca.sql script, which in a default installation is located in $ ORACLE_HOME /rdbms/admin .
To change the Oracle XML DB ports:
Check that the Oracle listener is running. To do so, in the Services control panel, make sure that the Oracle TNS Listener service (for example, OracleOraDb10g_home1TNSListener ) is set to Started .
If you cannot start the listener, refer to Oracle Database Net Services Administrator’s Guide .
Log into SQL*Plus or i SQL*Plus as SYS or XDB using the SYSDBA role.
For example, to log in to SQL*Plus as SYS using the password welcome :
Run the catxdbdbca.sql script.
For example, to use 2200 for the FTP port and 8200 for the HTTP port, and assuming your Oracle home is in the following location, enter the following command:
Соединение с базой данных Oracle из IDE NetBeans
IDE NetBeans включает встроенную поддержку для баз данных Oracle. Пользователь может без труда установить подключение к ней из среды IDE и начать работу в базе данных. В данном учебном курсе показано, как использовать локально установленный экземпляр базы данных Oracle 10_g_ Express Edition (Oracle Database XE), упрощенной базы данных, открытой для бесплатных развертывания, распространения и разработки для нее.
В этом документе описывается настройка соединения для локальной установки базы данных Oracle XE из IDE NetBeans, использования встроенного редактора SQL IDE для обработки данных базы данных, а также включения расширения PHP OCI 8 для написания кода PHP, выполняющего соединения с базой данных Oracle.
Для работы с этим учебным курсом требуется следующее программное обеспечение и ресурсы.
7.2, 7.3, 7.4, 8.0, пакет Java EE
10 g Express Edition
Перед началом работы
Перед началом прохождения данного учебного курса обратите внимание на следующее:
В данном учебном курсе описано подключение к экземпляру базы данных Oracle XE на локальном компьютере, но те же действия также могут быть применены при подключении к удаленному экземпляру. В случае подключения к локальном экземпляру необходимо загрузить и установить базу данных Oracle XE. Процесс установки прост и интуитивен, но если все же возникнут проблемы, ознакомьтесь с Руководством по установке базы данных Oracle XE для своей платформы.
Существуют две категории драйверов JDBC Oracle: OCI и JDBC Thin.
Драйвер Oracle JDBC Thin основан на Java и не зависит от платформы. Этот автономный драйвер не требует присутствия других библиотек Oracle и обеспечивает прямое подключение к базе данных Oracle. Он используется для подключения к базе данных Oracle в данном учебном курсе. Перед прохождением данного учебного курса необходимо загрузить файл ojdbc6.jar и сохранить его на своей системе.
| Windows может изменить расширение загруженного файла с .jar на .zip. Но он при этом остается файлом .jar. Расширение можно просто заменить на .jar. |
Драйвер OCI Oracle использует встроенные клиентские библиотеки Oracle для связи с базами данных. Эти библиотеки входят в состав Oracle Instant Client. Хотя драйвер Thin являеся достаточным в большей части случаев, также рекомендуется использовать драйвер OCI путем выполнения шагов, описанных в разделе Использование драйвера OCI JDBC с IDE NetBeans. Хорошим примером использования драйвера OCI является подключение к удаленной базе данных Oracle из приложения PHP с помощью библиотек Oracle Instant Client. Дополнительные сведения о включении расширения OCI8 для PHP см. в разделе этого учебного руководства OCI 8 и IDE NetBeans для PHP.
Если вы не использовали базу данных Oracle XE ранее, прочитайте Руководство по началу работы с базой данных Oracle XE.
Предупреждение для пользователей GlassFish. Домашняя страница базы данных Oracle XE, используемая для администрирования базы данных, использует по умолчанию порт 8080. Oracle GlassFish Application Server также использует по умолчанию 8080. Если запустить обе программы одновременно, база данных Oracle XE заблокирует доступ браузеров к GlassFish на localhost:8080. В этом случае все приложения, развернутые на GlassFish, будут возвращать ошибку 404. Проще всего отключать базу данных Oracle XE, если она не нужна во время работы с GlassFish. Если нужно использовать обе эти программы одновременно, измените порт по умолчанию, используемый базой данных Oracle XE. Это проще, чем изменить порт GlassFish по умолчанию. В Интернете можно найти много описаний процесса изменения порта базы данных Oracle XE по умолчанию, включая одно на форумах Oracle.
Установка подключения к базе данных Oracle
В этом упражнении мы создадим и протестируем новое подключение к базе данных.
Запустите базу данных Oracle.
Откройте окно «Службы», выбрав меню «Окно» > «Службы» или Ctrl-5;⌘-5 в Mac. В окне ‘Службы’ щелкните правой кнопкой мыши узел ‘Базы данных’ и выберите ‘Создать подключение’.

В мастере создания подключений выберите Oracle Thin из раскрывающегося списка Driver («Драйвер»).
Нажмите кнопку Add («Добавить») и найдите ранее загруженный файл ojdbc6.jar . Нажмите кнопку «Далее».
На панели Customize Connection («Настроить подключение») мастера введите следующие значения и нажмите кнопку Next («Далее»).
Oracle Thin (с идентификатором службы (SID))
localhost или 127.0.0.1. Примечание. В случае удаленного соединения, укажите IP-адрес или разрешаемое имя узла компьютера, на котором установлена база данных.
1521 (по умолчанию)
Идентификатор службы (SID)
XE (SID по умолчанию для базы данных Oracle XE). Примечание. В случае подключения к удаленной базе данных запросите SID у администратора базы данных.
Введите имя пользователя. В целях данного учебного курса введите system (учетная запись по умолчанию администратора базы данных) и пароль, использованный во время установки базы данных.
Введите пароль для выбранного имени пользователя.
Щелкните Test Connection («Проверить подключение»), чтобы убедиться в наличии у среды IDE возможности подключиться к базе данных. Нажмите кнопку «Далее».
Если попытка будет успешна, в мастере отобразиться сообщение Connection succeeded («Подключение успешно»).

Выберите HR в раскрывающемся списке Select Schema («Выбор схемы»). Нажмите кнопку «Завершить».
| До получения доступа к NetBeans необходимо разблокировать схему HR. Разблокирование базы данных HR описано в Руководстве по началу работы с базой данных Oracle XE. |
Новое подключение появится в узле Databases («Базы данных») окна Services («Службы»). Его можно будет развернуть и приступить к просмотру структуры объекта базы данных. Измените отображаемое имя для узла подключения: выберите Properties («Свойства») из всплывающего меню узла и нажмите кнопку многоточия, чтобы вывести свойство Display Name («Отображаемое имя»). Введите OracleDB в качестве отображаемого имени и нажмите кнопку OK.

| Хотя приведенные выше шаги описывают случай подключения к экземпляру локальной базы данных, шаги для подключения к удаленной базе данных такие же. Единственное отличие состоит в том, что вместо указания localhost как имени узла следует ввести IP-адрес или имя узла удаленного компьютера, на котором установлена база данных Oracle. |
Управление данными в базе данных Oracle
Обычными способами взаимодействия с базами данных является выполнение команд SQL в редакторе SQL или использование интерфейсов управления базами данных. Например, у базы данных Oracle XE имеется интерфейс на основе браузера, посредством которого можно осуществлять администрирование базы данных, управлять объектами базы данных и манипулировать данными.
Хотя пользователи могут выполнить большую часть задач, связанных с базами данных с помощью интерфейса управления базами данных Oracle в этом учебном руководстве демонстрируется использование редактора SQL в IDE NetBeans для выполнения некоторых из этих задач. В приведенных ниже упражнениях показано, как создавать новых пользователей, быстро воссоздавать таблицы и копировать данные таблиц.
Создание пользователя
Давайте создадим новую учетную запись пользователя базы данных для управления таблицами и данными в базе данных. Чтобы создать нового пользователя, необходимо войти в систему, используя учетную запись администратора базы данных, в нашем случае учетную запись по умолчанию system , созданную при установке базы данных.
В окне ‘Службы’ щелкните правой кнопкой мыши узел подключения OracleDB и выберите ‘Выполнить команду’. При этом открывается редактор SQL IDE NetBeans, в котором можно указать команды, которые будут отправлены базе данных.

Чтобы создать нового пользователя, введите приведенную ниже команду в окне редактора SQL и нажмите кнопку Run SQL («Выполнить SQL») на панели инструментов.

В результате выполнения данной команды будет создан новый пользователь jim с паролем mypassword . Табличным пространством по умолчанию является users , а выделенное пространство не ограничено.
Следующий этап – предоставить jim права учетной записи пользователя на выполнение действий с базой данных. Необходимо разрешить пользователю подключаться к базе данных, создавать и изменять таблицы в табличном пространстве пользователя по умолчанию и выполнять доступ к таблице Employees в примере базы данных hr .
На практике администратор базы данных обычно создает особые роли и аккуратно настраивает полномочия для каждой из них. Но в целях нашего учебного курса мы можем использовать заранее определенную роль, такую как CONNECT . Дополнительные сведения о ролях и полномочиях приведены в документе Oracle Database Security Guide («Руководство по безопасности базы данных Oracle»).
Табличные пространства в базах данных Oracle
Табличное пространство – это блок логической памяти во всех базах данных Oracle. На самом деле, все данные баз данных хранятся в табличных пространствах. Таблицы создаются внутри выделенных табличных пространств. Если табличное пространство по умолчанию не выделяется пользователю напрямую, то, по умолчанию, используется табличное пространство системы (этой ситуации лучше избегать).
Дополнительные сведения о концепции табличного пространства см. Часто задаваемые вопросы по Oracle: табличные простнранства
Создание таблицы
Существует несколько способов создания таблицы в базе данных с помощью IDE NetBeans. Например, можно запустить файл SQL (щелкните правой кнопкой мыши файл и выберите ‘Запустить файл’), выполните команду SQL (щелкните правой кнопкой мыши узел подключения и выберите ‘Выполнить команду’) или используйте диалоговое окно ‘Создать таблицу’ (щелкните правой кнопкой мыши узел ‘Таблицы’ и выберите ‘Создать таблицу’). В этом упражнении мы воссоздадим таблицу, используя структуру другой таблицы.
В данном примере нам нужно, чтобы пользователь jim создал копию таблицы Departments в своей схеме, воссоздав таблицу из базы данных hr . Перед созданием таблицы будет необходимо отключиться от сервера и войти в систему как пользователь jim .
Щелкните правой кнопкой мыши узел подключения OracleDB в окне Services («Службы») и выберите Disconnect («Отключить»).
Щелкните правой кнопкой мыши узел подключения OracleDB , выберите Connect («Подключить») и войдите как jim .
Разверните узел Tables («Таблицы») под схемой HR и убедитесь, что только таблица Departments доступна пользователю jim .
При создании пользователя jim право выполнения выбора было ограничено таблицей Departments .

Щелкните правой кнопкой мыши узел таблицы Departments и выберите Grab Structure («Копировать структуру»). Сохраните файл .grab у себя на диске.
Раверните схему JIM , щелкните правой кнопкой мыши узел Таблицы и выберите ‘Повторно создать таблицу’. Укажите на созданный файл .grab .

Проверьте сценарий SQL, который будет использован для создания данной таблицы. Нажмите кнопку «ОК».

При нажатии кнопки «ОК» новая таблица DEPARTMENTS будет создана и появится под узлом схемы JIM . При щелчке правой кнопкой мыши узла таблицы и выборе ‘Просмотреть данные’ будет видно, что таблица пустая.
Если нужно скопировать данные из исходной таблицы Departments в новую таблицу, данные можно ввести вручную в редактор таблиц, либо выполнить сценарий SQL для заполнения новой таблицы.
Для ввода данных вручную выполните следующие действия.
Щелкните правой кнопкой мыши таблицу DEPARTMENTS в схеме JIM и выберите View Data («Просмотр данных»).
Щелкните значок Insert Records («Вставить записи») на панели инструментов View Data («Просмотр данных»), чтобы открыть окно вставления записей.

Введите данные в поля для них. Нажмите кнопку «ОК».
Например, можно ввести следующие значения из исходной таблицы DEPARTMENTS .