2.13 Using DBCA to Configure Oracle RAC One Node
If you have selected to install Oracle RAC software only on cluster nodes, you can use Oracle Database Configuration Assistant (DBCA) to configure Oracle RAC One Node.
After installation, start up DBCA, and on the Welcome page, select Oracle RAC One Node database. DBCA starts on only one node of the set of nodes you select. You can add additional nodes to the cluster later.
Selecting one node deploys Oracle RAC One Node on a single node. Oracle recommends that you select all nodes in the cluster to which you want Oracle RAC One Node to be able to fail over.
Caution:
By default, any named user may create a server pool. To restrict the operating system users that have this privilege, Oracle strongly recommends that you add specific users to the CRS Administrators list. See for more information about adding users to the CRS Administrators list.
If you select less than two nodes, or create server pools with a cardinality of or more, then DBCA posts a warning message that the configuration you select will not support failover of the Oracle RAC One Node instance.
When you create an administrator-managed Oracle RAC One Node database, note that while the database is started on only one of the pool of nodes you installed the binaries, all the candidate servers are placed into the Generic server pool. If the servers are not already in Generic or Free, then this may result in stopping resources that are running on candidate servers.
Что такое Oracle Database?
Oracle – это крупнейшая в мире компания по разработке программного обеспечения для предприятий. Специализация Oracle является разработка систем управления базами данных, таких как Oracle Database, а также других бизнес-приложений.
Oracle Database — это объектно-реляционная система управления базами данных (RDBMS или Relational DataBase Management System). Многие крупнейшие компании мира в качестве базы данных выбирают именно Oracle Database.
В названии каждой версий мы наблюдаем номер версии и букву, например 11g, где g – это «grid» или сеть, символизируя тем самым поддержку grid-вычислений.
В 2013 году вышла версия 12c, где c означает cloud (облако).
Данная СУБД поддерживает много платформ, например: Linux x86, Linux x86-64, как 32 разрядные Windows так и 64, Solaris x86, Solaris SPARC (64-бит), Mac OS X Server и еще много других.
В Oracle Database используется язык программирования PL/SQL (Procedural Language / Structured Query Language) — это расширения языка SQL, которое разработала компания Oracle. Например, также компания Microsoft для своей СУБД разработала язык Transact-SQL, его мы подробно разбирали во многих статьях, даже составили «Справочник Transact-SQL».
Oracle Database поставляется в следующих редакциях:
- Oracle Database Enterprise Edition;
- Oracle Database Standard Edition;
- Oracle Database Standard Edition One;
- Oracle Database Personal Edition;
- Oracle Cloud File System;
- Oracle Database Mobile Server;
- Oracle Database Express Edition.
Oracle Database Express Edition
Oracle Database Express Edition (Oracle Database XE) – это бесплатная версия базы данных Oracle Database для начинающих разработчиков и администраторов, которые если освоят данную СУБД, смогут легко перейти на полноценную версию.
Так как это версия бесплатная она естественно имеет ограничения:
- Она будет использовать не более 1 гигабайта оперативной памяти;
- Также будет использовать только один процессор;
- Всего одна база данных размером не более 11 гигабайт;
- Может быть установлена только на ОС Windows x32, Windows x64 и Linux x86-64.
На данный момент последней версией является Oracle Database Express Edition 11g Release 2, поэтому именно ее мы и будем устанавливать, но прежде давайте узнаем, где же взять данное программное обеспечение.
Где скачать Oracle Database Express Edition 11g Release 2?
Конечно, скачать данную СУБД можно с официального сайта компании Oracle, а конкретно на странице посвященной Oracle Database Express Edition
Мы соответственно переходим на страницу, жмем Accept License Agreement — это для принятия лицензионного соглашения, затем выбираем тип нашей операционной системы, я для примера выберу файл для 32 разрядных Windows, а именно Oracle Database Express Edition 11g Release 2 for Windows x32.
Затем откроется страница, на которой необходимо указать учетную запись и пароль от Oracle и нажать «Вход в систему», это если Вы уже зарегистрированы, а если нет, то нажмите сначала «Создать учетную запись». Советую это сделать, так как данная учетная запись позволит Вам получить доступ к различным онлайн приложениям Oracle, службе поддержки Oracle, а так же, как Вы уже поняли, к загрузке программного обеспечения.
После этого начнется загрузка файла, в нашем случае это OracleXE112_Win32.zip (сжатый архив) размером 312 мегабайт.
Create SystemD Service for Oracle Database 19c on CentOS 8:
To configure autostart of Oracle Database 19c on CentOS 8, we have to write a SystemD service.
# vi /usr/lib/systemd/system/dbora.service
Add following lines of code in this file.
Description=Oracle Database Service After=network.target Type=forking ExecStart=/u01/app/oracle/product/19.3.0/dbhome_1/bin/dbstart /u01/app/oracle/product/19.3.0/dbhome_1 ExecStop=/u01/app/oracle/product/19.3.0/dbhome_1/bin/dbshut /u01/app/oracle/product/19.3.0/dbhome_1 User=oracle TimeoutSec=300s WantedBy=multi-user.target
Execute following command to inform SystemD about changes in unit files.
# systemctl daemon-reload
Enable and start Oracle Database 19c service.
# systemctl enable --now dbora.service Created symlink /etc/systemd/system/multi-user.target.wants/dbora.service â /usr/lib/systemd/system/dbora.service.
Verify the status of the Oracle Database 19c service.
# systemctl status dbora.service â dbora.service - Oracle Database Service Loaded: loaded (/usr/lib/systemd/system/dbora.service; enabled; vendor prese> Active: active (running) since Tue 2020-04-28 16:01:39 PKT; 3s ago Process: 27957 ExecStart=/u01/app/oracle/product/19.3.0/dbhome_1/bin/dbstart > Tasks: 57 (limit: 12367) Memory: 1.0G CGroup: /system.slice/dbora.service ââ28067 ora_pmon_cdb1 ââ28069 ora_clmn_cdb1 ââ28071 ora_psp0_cdb1 ââ28073 ora_vktm_cdb1 ââ28077 ora_gen0_cdb1 ââ28079 ora_mman_cdb1 ââ28083 ora_gen1_cdb1 ââ28086 ora_diag_cdb1 ââ28088 ora_ofsd_cdb1 ââ28091 ora_dbrm_cdb1 ââ28093 ora_vkrm_cdb1 ââ28095 ora_svcb_cdb1 ââ28097 ora_pman_cdb1 ââ28099 ora_dia0_cdb1 ââ28101 ora_dbw0_cdb1 ââ28103 ora_lgwr_cdb1
We have successfully installed Oracle Database 19c on CentOS 8 server and created a Multitenant Database in this server.
Introduction
NFS is an abbreviation of Network File System, a platform independent technology created by Sun Microsystems that allows shared access to files stored on computers via an interface called the Virtual File System (VFS) that runs on top of TCP/IP. Computers that share files are considered NFS servers, while those that access shared files are considered NFS clients. An individual computer can be either an NFS server, a NFS client or both.
We can use NFS to provide shared storage for a RAC installation. In a production environment we would expect the NFS server to be a NAS, but for testing it can just as easily be another server, or even one of the RAC nodes itself.
To cut costs, this articles uses one of the RAC nodes as the source of the shared storage. Obviously, this means if that node goes down the whole database is lost, so it’s not a sensible idea to do this if you are testing high availability. If you have access to a NAS or a third server you can easily use that for the shared storage, making the whole solution much more resilient. Whichever route you take, the fundamentals of the installation are the same.
The Single Client Access Name (SCAN) should really be defined in the DNS or GNS and round-robin between one of 3 addresses, which are on the same subnet as the public and virtual IPs. In this article I’ve defined it as a single IP address in the «/etc/hosts» file, which is wrong and will cause the cluster verification to fail, but it allows me to complete the install without the presence of a DNS.
This article was inspired by the blog postings of Kevin Closson.
Assumptions. You need two machines available to act as your two RAC nodes. They can be physical or virtual. In this case I’m using two virtual machines called «rac1» and «rac2». If you want a different naming convention or different IP addresses that’s fine, but make sure you stay consistent with how they are used.
Install Oracle Database 19c Prerequisites on CentOS 8:
Oracle Database 19c requires some software packages, therefore, we are installing these packages before moving forward.
We can install Oracle Database 19c prerequisites using dnf command.
# dnf install -y bc \ > binutils \ > elfutils-libelf \ > elfutils-libelf-devel \ > fontconfig-devel \ > glibc \ > glibc-devel \ > ksh \ > libaio \ > libaio-devel \ > libXrender \ > libXrender-devel \ > libX11 \ > libXau \ > libXi \ > libXtst \ > libgcc \ > librdmacm-devel \ > libstdc++ \ > libstdc++-devel \ > libxcb \ > make \ > net-tools \ > smartmontools \ > sysstat \ > unzip \ > libnsl \ > libnsl2 ... Installed: ksh-20120801-253.el8_1.x86_64 libX11-1.6.7-1.el8.x86_64 libXau-1.0.8-13.el8.x86_64 libXi-1.7.9-7.el8.x86_64 libXrender-0.9.10-7.el8.x86_64 libXrender-devel-0.9.10-7.el8.x86_64 libXtst-1.2.3-7.el8.x86_64 libstdc++-devel-8.3.1-4.5.el8.x86_64 libxcb-1.13-5.el8.x86_64 sysstat-11.7.3-2.el8.x86_64 bc-1.07.1-5.el8.x86_64 binutils-2.30-58.el8_1.2.x86_64 elfutils-libelf-devel-0.176-5.el8.x86_64 fontconfig-devel-2.13.1-3.el8.x86_64 glibc-devel-2.28-72.el8_1.1.x86_64 libaio-devel-0.3.112-1.el8.x86_64 libnsl-2.28-72.el8_1.1.x86_64 make-1:4.2.1-9.el8.x86_64 net-tools-2.0-0.51.20160912git.el8.x86_64 rdma-core-devel-22.3-1.el8.x86_64 smartmontools-1:6.6-3.el8.x86_64 unzip-6.0-41.el8.x86_64 libX11-common-1.6.7-1.el8.noarch libX11-devel-1.6.7-1.el8.x86_64 libX11-xcb-1.6.7-1.el8.x86_64 libXau-devel-1.0.8-13.el8.x86_64 libXext-1.3.3-9.el8.x86_64 libxcb-devel-1.13-5.el8.x86_64 xorg-x11-proto-devel-2018.4-1.el8.noarch bzip2-devel-1.0.6-26.el8.x86_64 dejavu-fonts-common-2.35-6.el8.noarch dejavu-sans-fonts-2.35-6.el8.noarch expat-devel-2.2.5-3.el8.x86_64 fontconfig-2.13.1-3.el8.x86_64 fontpackages-filesystem-1.44-22.el8.noarch freetype-devel-2.9.1-4.el8.x86_64 glibc-headers-2.28-72.el8_1.1.x86_64 ibacm-22.3-1.el8.x86_64 kernel-headers-4.18.0-147.8.1.el8_1.x86_64 libibumad-22.3-1.el8.x86_64 libibverbs-22.3-1.el8.x86_64 libpng-devel-2:1.6.34-5.el8.x86_64 librdmacm-22.3-1.el8.x86_64 libuuid-devel-2.32.1-17.el8.x86_64 libxcrypt-devel-4.1.1-4.el8.x86_64 lm_sensors-libs-3.4.0-20.20180522git70f7e08.el8.x86_64 perl-Carp-1.42-396.el8.noarch perl-Errno-1.28-416.el8.x86_64 perl-Exporter-5.72-396.el8.noarch perl-File-Path-2.15-2.el8.noarch perl-IO-1.38-416.el8.x86_64 perl-PathTools-3.74-1.el8.x86_64 perl-Scalar-List-Utils-3:1.49-2.el8.x86_64 perl-Socket-4:2.027-3.el8.x86_64 perl-Text-Tabs+Wrap-2013.0523-395.el8.noarch perl-Unicode-Normalize-1.25-396.el8.x86_64 perl-constant-1.33-396.el8.noarch perl-interpreter-4:5.26.3-416.el8.x86_64 perl-libs-4:5.26.3-416.el8.x86_64 perl-macros-4:5.26.3-416.el8.x86_64 perl-parent-1:0.237-1.el8.noarch perl-threads-1:2.21-2.el8.x86_64 perl-threads-shared-1.58-2.el8.x86_64 rdma-core-22.3-1.el8.x86_64 zlib-devel-1.2.11-10.el8.x86_64 Complete!
3 Licensing Restrictions
This section covers the following topics:
3.1 Oracle Database XE CPU Limitations
If Oracle Database XE is installed on a computer with more than one CPU (including dual-core CPUs), then it will consume, at most, processing resources equivalent to one CPU. For example, on a computer with two CPUs, if two Oracle database clients try to simultaneously execute CPU-intensive queries, then Oracle Database 11g Standard Edition, Oracle Database 11g Standard Edition One, or Oracle Database 11g Enterprise Edition will use both CPUs to efficiently process the queries. However, with Oracle Database XE, the Oracle database will process the queries at the rate of a single CPU even if concurrent processing on two CPUs would be faster. To use the full processing resources of your computer, upgrade to Oracle Database 11g Standard Edition, Oracle Database 11g Standard Edition One, or Oracle Database 11g Enterprise Edition.
3.2 Oracle Database XE Installation and Execution Restrictions
Only one installation of Oracle Database XE can be performed on a single computer. This does not affect any existing installation or new installations of Oracle Database 11g Standard Edition, Oracle Database 11g Standard Edition One, or Oracle Database 11g Enterprise Edition. In addition, users can run only one instance of the Oracle Database XE database on each individual computer. To run more than one Oracle Database server instance or install more than one copy of the database software, upgrade to Oracle Database 11g Standard Edition, Oracle Database 11g Standard Edition One, or Oracle Database 11g Enterprise Edition.
3.3 Oracle Database XE User Data Limitations
The maximum amount of user data in an Oracle Database XE database cannot exceed 11 gigabytes. If the user data grows beyond this limit, then an error will appear. To use more than 11 gigabytes of user data, upgrade to Oracle Database 11g Standard Edition, Oracle Database 11g Standard Edition One, or Oracle Database 11g Enterprise Edition.
3.4 Oracle Database XE RAM Limitation
The maximum amount of RAM that an Oracle Database XE database uses cannot exceed 1 gigabyte, even if more is available. provides the minimum and recommended RAM that you should use. The exact amount of RAM that Oracle Database XE uses is computed automatically using Automatic Memory Management.
To use more than 1 gigabyte of RAM, upgrade to Oracle Database 11g Standard Edition, Oracle Database 11g Standard Edition One, or Oracle Database 11g Enterprise Edition.
For more information about managing memory, refer to .
Установка Oracle Java на Ubuntu
Как я уже сказал выше, для установки oracle java необходимо скачать бинарники. Причем, сделать это так, как я недавно описывал в статье про не получится. Без авторизации ссылки не доступны. Так что необходимо зарегистрироваться на сайте и скачать бинарники себе на компьютер. Я покажу как это сделать на примере Oracle Java 8. Идем на страницу загрузки, авторизовываемся и скачиваем jre-8u211-linux-x64.tar.gz.
Не забудьте отметить флажок напротив Accept License Agreement. После загрузки любым удобным для вас способом скопируйте файл на целевой сервер, куда будем устанавливать Java 8. Я для этого использую scp. Копирую файл в домашнюю директорию /root. Создаем директорию для java и распаковываем туда бинарники.
# mkdir /usr/lib/jvm # tar -zxf /root/jre-8u211-linux-x64.tar.gz -C /usr/lib/jvm
Java машина должна расположиться в директории /usr/lib/jvm/jre1.8.0_211. Теперь нам необходимо создать символьные ссылки на установленную версию java. Делаем это с помощью update-alternatives.
# update-alternatives --install "/usr/bin/java" "java" "/usr/lib/jvm/jre1.8.0_211/bin/java" 1500 # update-alternatives --install "/usr/bin/javaws" "javaws" "/usr/lib/jvm/jre1.8.0_211/bin/javaws" 1500
Зададим переменную JAVA_HOME, которую используют некоторые приложения. Для этого добавляем в файл /etc/environment следующую строку.
JAVA_HOME="/usr/lib/jvm/jre1.8.0_211"
Сохраняем его и применяем изменение.
# source /etc/environment
Теперь проверим, что у нас получилось.
# java -version # echo $JAVA_HOME
Все нормально. В случае, если необходимо обновить или установить другую версию Java, то все проделывается точно так же, только в конце указываются ссылки на новую директорию с Java.
Если вам необходимо установить Oracle SDK, то делаете все то же самое, только бинарники скачиваете по другой ссылке — Java SE Development Kit.
В принципе, на этом с установкой Oracle Java на Ubuntu все. В общем случае выполнено все необходимое. Но я в процессе компиляции одного приложения столкнулся с одной ошибкой. Расскажу вам, как ее решил.
Could not find tools.jar
Приложение использовало систему автоматической сборки gradle, которая прекращала сборку с ошибкой.
* What went wrong: Execution failed for task ':compileJava'. > Could not find tools.jar. Please check that /usr/lib/jvm/jre1.8.0_211 contains a valid JDK installation.
Я долго гуглил решение. В общем случае оно состоит в том, что нужно тем или иным образом явно указать путь к tools.jar, но у меня этого файла вообще не было в системе и я не знал, где его взять. Я вообще не разбираюсь в теме с явой, первый раз собирал приложение сам. Вышел из положения в итоге следующим образом. Я установил openjdk-8-jdk следующей командой.
# apt install openjdk-8-jdk
Она установилась в директорию /usr/lib/jvm/java-8-openjdk-amd64. Там в директории libs лежал файл tools.jar. Я просто скопировал его в /usr/lib/jvm/jre1.8.0_211/lib, где установлена oracle java. После этого сборка прошла без ошибок.
Уже после написания статьи понял, что мне нужно было установить не Oracle JRE, а JDK, тогда бы все сразу собралось без ошибок. Надеюсь эта информация будет полезна тем, кто будет искать решение похожей проблемы. Она возникла из-за недопонимания различий между JRE и JDK.
4 Checking the Software Requirements
Depending on the products that you intend to install, verify that the following software are installed on the system.
Note:
Oracle Universal Installer performs checks on the system to verify that it meets the listed requirements. To ensure that these checks pass, verify the requirements before you start Oracle Universal Installer.
4.1 Operating System Requirements
The following are the operating system requirements for Oracle Database 11g Release 2 (11.2):
Oracle Solaris 10 U6 (5.10-2008.10)
Starting with Oracle Database 11g Release 2 (11.2.0.3), Oracle Database is also supported on the following operating system version (or later):
Oracle Solaris 11 11/11 X86
Note:
No special kernel parameters or patches are required at the time of this release for Oracle Solaris 11.
To determine the distribution and version of Oracle Solaris installed, enter the following command:
# uname -r 5.10
In this example, the version shown is Oracle Solaris 10 (5.10). If necessary, refer to your operating system documentation for information about upgrading the operating system.
To determine the update level of Oracle Solaris installed, enter the following command:
$ cat /etc/release
4.2 Package Requirements
The following packages (or later versions) are required for Oracle Database 11g Release 2 (11.2) on Oracle Solaris 10:
Oracle Solaris 10
-
SUNWarc
-
SUNWbtool
-
SUNWhea
-
SUNWlibC
-
SUNWlibm
-
SUNWlibms
-
SUNWsprot
-
SUNWtoo
-
SUNWi1of
-
SUNWi1cs (ISO8859-1)
-
SUNWi15cs (ISO8859-15)
-
SUNWxwfnt
-
SUNWcsl
Oracle Solaris 11
The following packages (or later versions) are required for installing Oracle Database Client 11g Release 2 (11.2) on Oracle Solaris 11:
pkg://solaris/developer/build/make pkg://solaris/developer/assembler
You may also require additional font packages for Java, depending on your locale. Refer to the following website for more information:
http://www.oracle.com/technetwork/java/javase/solaris-font-requirements-142758.html
To determine whether the required packages are installed, enter commands similar to the following:
# pkginfo -i SUNWarc SUNWbtool SUNWhea SUNWlibC SUNWlibms SUNWsprot \ SUNWtoo SUNWi1of SUNWi1cs SUNWi15cs SUNWxwfnt
If a package is not installed, then install it. Refer to your operating system or software documentation for information about installing packages.
4.3 Compiler Requirements
Oracle Solaris Studio 12 (C and C++ 5.9) is supported with Pro*C/C++, Oracle Call Interface, Oracle C++ Call Interface, and Oracle XML Developer’s Kit (XDK) for Oracle Database 11g Release 2.
4.4.1 Oracle Messaging Gateway
Oracle Messaging Gateway supports the integration of Oracle Streams Advanced Queuing (AQ) with the following software:
-
IBM MQ Series V6.0, client and server
-
TIBCO Rendezvous 7.2
If you require a CSD for WebSphere MQ, then refer to the following website for download and installation information:
4.4.2 Oracle JDBC/OCI Drivers
Use JDK 6 (Java SE Development Kit ) or JDK 5 () with the JNDI extension with the Oracle Java Database Connectivity and Oracle Call Interface drivers. However, these are not mandatory for the database installation. Please note that IBM JDK 1.5 is installed with this release.
JDK 6 is the minimum level of JDK supported on Oracle Solaris 11.
4.4.3 Programming Languages
The following products are certified for use with:
-
Pro* COBOL
Micro Focus Server Express 5.1
-
Pro* FORTRAN
Oracle Solaris Studio 12 Fortran F 95
4.4.4 Browser Requirements
You do not require a web browser to install Oracle Database. However, browsers are required to access documentation, and if you intend to use Oracle Enterprise Manager Database Control and Oracle Application Express. Web browsers must support JavaScript, and the HTML 4.0 and CSS 1.0 standards.
Oracle Enterprise Manager Database Control supports the following browsers:
-
Microsoft Internet Explorer 10.0 (supports Oracle Enterprise Manager Database Control 11.2.0.3 and higher)
-
Microsoft Internet Explorer 9.0
-
Microsoft Internet Explorer 8.0
-
Microsoft Internet Explorer 7.0 SP1
-
Microsoft Internet Explorer 6.0 SP2
-
Firefox 21.0 (supports Oracle Enterprise Manager Database Control 11.2.0.4)
-
Firefox 17.0.6 ESR (supports Oracle Enterprise Manager Database Control 11.2.0.4)
-
Firefox 3.6
-
Firefox 3.5
-
Firefox 3.0.7
-
Firefox 2.0
-
Safari 4.0.x
-
Safari 3.2
-
Safari 3.1
-
Google Chrome 27.0 (supports Oracle Enterprise Manager Database Control 11.2.0.4)
-
Google Chrome 4.0
-
Google Chrome 3.0
-
Netscape Navigator 9.0
-
Netscape Navigator 8.1
See Also:
Configuring XE
The configuration will be prompt you for
- the APEX http port (8080 by default)
- the database (TNS) listener port (1521 by default)
- A single password to be assigned to the database SYS and SYSTEM users
- whether you want the database to start automatically when the system starts (Yes by default)
Unless you have other software, or Oracle Instances, running elsewhere, the defaults should be fine.
Here we go then, still as root, run :
/etc/init.d/oracle-xe configure
The output, complete with the prompts will be something like :
Oracle Database 11g Express Edition Configuration ------------------------------------------------- This will configure on-boot properties of Oracle Database 11g Express Edition. The following questions will determine whether the database should be starting upon system boot, the ports it will use, and the passwords that will be used for database accounts. Press <Enter> to accept the defaults. Ctrl-C will abort. Specify the HTTP port that will be used for Oracle Application Express :8081 Specify a port that will be used for the database listener :1525 Specify a password to be used for database accounts. Note that the same password will be used for SYS and SYSTEM. Oracle recommends the use of different passwords for each database account. This can be done after initial configuration: Confirm the password: Do you want Oracle Database 11g Express Edition to be started on boot (y/n) :y Starting Oracle Net Listener...Done Configuring database...Done Starting Oracle Database 11g Express Edition instance...Done Installation completed successfully.
Congratulations, you now have a running database. The first thing to do with it, however, is to shut it down.
In fact, we need to do a re-start so that the menu items that have been added as part of the installation are visible.
So, re-boot.
NOTE – from this point on you can stop being root (although you may need to sudo occasionally).
Once the system comes back, you will see the new Menu icons in the Applications menu under others :
Just to confirm that your database is up and running, you can select the Run SQL Command Line option from this menu
and run the following :
conn system/pwd select sysdate from dual /
This should return the current date.