Поиск по сайту:

Как установить базу данных Oracle 12c на RHEL/CentOS 7


База данных Oracle — одна из наиболее широко используемых систем управления реляционными базами данных (СУБД) в корпоративных средах. Эта СУБД, разработанная, поддерживаемая и поддерживаемая корпорацией Oracle, часто устанавливается поверх версии Enterprise Linux (RHEL, CentOS или Scientific Linux). Это обеспечивает очень надежную операционную систему — выбор базы данных.

В этой статье мы объясним, как установить Oracle 12c Release 2 на сервер RHEL/CentOS 7 с графическим интерфейсом.

Внимание. Пользователи RHEL/CentOS 6 могут воспользоваться этим руководством для установки базы данных Oracle 12c на RHEL/CentOS 6.x.

Давай начнем.

Предпосылки:

После установки Oracle 12c настройка будет осуществляться через графический интерфейс. Вот почему нам нужен сервер CentOS 7 с установленной группой программного обеспечения X Window System.

Читайте также: установите графический интерфейс (Gnome) на сервер RHEL/CentOS 7

Кроме того, обратите внимание, что для загрузки установочного файла Oracle Database 12c (3,2 ГБ) требуется учетная запись Oracle. Однако не беспокойтесь об этом, поскольку вы можете создать учетную запись бесплатно.

Наконец, убедитесь, что на вашем сервере имеется не менее 2 ГБ оперативной памяти и 30 ГБ свободного дискового пространства. Эти требования к оборудованию безопасны для такой среды тестирования, как наша, но их придется увеличить, если вы рассмотрите возможность использования Oracle в производстве.

Подготовка к установке Oracle 12c

1. Для начала убедитесь, что все пакеты, установленные на данный момент в вашей системе RHEL/CentOS 7, обновлены до последних версий.

yum update -y

2. Затем установите все необходимые зависимости для СУБД, а также пакеты zip и unzip.

yum install -y binutils.x86_64 compat-libcap1.x86_64 gcc.x86_64 gcc-c++.x86_64 glibc.i686 glibc.x86_64 glibc-devel.i686 glibc-devel.x86_64 ksh compat-libstdc++-33 libaio.i686 libaio.x86_64 libaio-devel.i686 libaio-devel.x86_64 libgcc.i686 libgcc.x86_64 libstdc++.i686 libstdc++.x86_64 libstdc++-devel.i686 libstdc++-devel.x86_64 libXi.i686 libXi.x86_64 libXtst.i686 libXtst.x86_64 make.x86_64 sysstat.x86_64 zip unzip

3. Создайте учетную запись пользователя и группы для Oracle.

groupadd oinstall
groupadd dba
useradd -g oinstall -G dba oracle

Наконец, установите пароль для вновь созданной учетной записи Oracle.

passwd oracle

4. Добавьте следующие параметры ядра в файл /etc/sysctl.conf.

fs.aio-max-nr = 1048576
fs.file-max = 6815744
kernel.shmall = 2097152
kernel.shmmax = 8329226240
kernel.shmmni = 4096
kernel.sem = 250 32000 100 128
net.ipv4.ip_local_port_range = 9000 65500
net.core.rmem_default = 262144
net.core.rmem_max = 4194304
net.core.wmem_default = 262144
net.core.wmem_max = 1048586

и примените их:

sysctl -p
sysctl -a

5. Установите ограничения для Oracle в файле /etc/security/limits.conf.

oracle soft nproc 2047
oracle hard nproc 16384
oracle soft nofile 1024
oracle hard nofile 65536

6. Создайте каталог с именем /stage и извлеките заархивированный установочный файл.

unzip linuxx64_12201_database.zip -d /stage/

Прежде чем продолжить, создайте другие каталоги, которые будут использоваться во время фактической установки, и назначьте необходимые разрешения.

mkdir /u01
mkdir /u02
chown -R oracle:oinstall /u01
chown -R oracle:oinstall /u02
chmod -R 775 /u01
chmod -R 775 /u02
chmod g+s /u01
chmod g+s /u02

Теперь мы готовы запустить сценарий установки.

7. Откройте сеанс графического интерфейса на сервере RHEL/CentOS 7 и запустите сценарий установки.

/stage/database/runInstaller 

и следуйте инструкциям установщика.

Установка Oracle 12c на CentOS 7

8. Введите адрес электронной почты, связанный с вашей учетной записью Oracle (необязательно).

9. Выберите Создать и настройте базу данных.

10. Выберите класс Рабочий стол, поскольку мы настраиваем минимальную конфигурацию и начальную базу данных.

11. Выберите следующие параметры базовой конфигурации.

  • База Oracle: /u01/app/oracle
  • Местоположение программного обеспечения: /u01/app/oracle/product/12.2.0/dbhome_1
  • Расположение файла базы данных: /u01
  • Группа OSDBA: dba
  • Имя глобальной базы данных: ваш выбор. Здесь мы выбрали tecmint.
  • Запишите пароль, поскольку вы будете использовать его при первом подключении к базе данных.
  • Снимите флажок Создать как контейнер.

12. Оставьте каталог Inventory по умолчанию как /u01/app/oraInventory.

13. Убедитесь, что предварительные проверки установки выполнены без ошибок.

Установщик не пропустит этот момент, если будут обнаружены какие-либо ошибки.

14. Дождитесь завершения установки Oracle 12c.

Вполне возможно, что в какой-то момент во время установки вам будет предложено запустить пару скриптов для настройки дополнительных разрешений или устранения проблем. Это проиллюстрировано здесь:

И здесь:

cd /u01/app/oraInventory
./orainstRoot.sh
cd /u01/app/oracle/product/12.2.0/dbhome_1
./root.sh

15. После этого вам нужно будет вернуться к предыдущему экрану сеанса графического интерфейса и нажать ОК, чтобы продолжить установку.

По завершении вам будет представлено следующее сообщение с указанием URL-адреса Oracle Enterprise Manager:

https://localhost:5500/em

Последние штрихи к Oracle 12c

16. Чтобы разрешить подключения извне сервера, вам необходимо открыть следующие порты:

1521/TCP
5500/TCP
5520/TCP
3938/TCP

Следующее:

firewall-cmd --zone=public --add-port=1521/tcp --add-port=5500/tcp --add-port=5520/tcp --add-port=3938/tcp --permanent
firewall-cmd --reload

17. Затем войдите в систему как oracle, используя пароль, который был выбран ранее, и добавьте следующие строки в файл .bash_profile.

TMPDIR=$TMP; export TMPDIR
ORACLE_BASE=/u01/app/oracle; export ORACLE_BASE
ORACLE_HOME=$ORACLE_BASE/product/12.2.0/dbhome_1; export ORACLE_HOME
ORACLE_SID=tecmint; export ORACLE_SID
PATH=$ORACLE_HOME/bin:$PATH; export PATH
LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib:/usr/lib64; export LD_LIBRARY_PATH
CLASSPATH=$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib; export CLASSPATH

18. Наконец, замените localhost на 0.0.0.0.

vi $ORACLE_HOME/network/admin/listener.ora

19. Последний шаг заключается в перезагрузке .bash_profile для применения новых настроек.

source .bash_profile

20. Затем войдите в базу данных, используя системную учетную запись и пароль, выбранные в Шаге 11 предыдущего раздела.

sqlplus system@tecmint

При желании давайте создадим таблицу в базе данных tecmint, куда вставим несколько примеров записей, как показано ниже.

SQL> CREATE TABLE NamesTBL
(id   NUMBER GENERATED AS IDENTITY,
name VARCHAR2(20));

Обратите внимание, что столбцы IDENTITY впервые были представлены в Oracle 12c.

SQL> INSERT INTO NamesTBL (name) VALUES ('Gabriel');
SQL> INSERT INTO NamesTBL (name) VALUES ('Admin');
SQL> SELECT * FROM NamesTBL;

Включение Oracle для запуска при загрузке системы

21. Чтобы служба базы данных запускалась автоматически при загрузке, добавьте следующие строки в файл /etc/systemd/system/oracle-rdbms.service.

/etc/systemd/system/oracle-rdbms.service
Invoking Oracle scripts to start/shutdown Instances defined in /etc/oratab
and starts Listener

[Unit]
Description=Oracle Database(s) and Listener
Requires=network.target

[Service]
Type=forking
Restart=no
ExecStart=/u01/app/oracle/product/12.2.0/dbhome_1/bin/dbstart /u01/app/oracle/product/12.2.0/dbhome_1
ExecStop=/u01/app/oracle/product/12.2.0/dbhome_1/bin/dbshut /u01/app/oracle/product/12.2.0/dbhome_1
User=oracle

[Install]
WantedBy=multi-user.target

22. Наконец, нам нужно указать, что база данных tecmint должна вызываться во время загрузки в /etc/oratab (Y: Да).

Краткое содержание

В этой статье мы объяснили, как установить Oracle 12c на RHEL/CentOS 7, как создать и настроить базу данных, а также как создавать таблицы и вставлять строки данных.

Кроме того, важно отметить, что сервер базы данных должен быть запущен и работать при загрузке системы, и в этот момент наша база данных по умолчанию должна быть доступна.

Если у вас есть какие-либо вопросы или комментарии по поводу этой статьи, напишите нам, используя форму ниже.