The new version of the free Oracle Database edition, Oracle Database 18c Express Edition, just got released for Linux 64-bit. Getting started is really simple on Oracle Linux, basically a three step process of downloading the RPM file, installing it and then configuring the database. On other Red Hat compatible Linux distributions you will also have to download the Oracle Database Preinstall RPM alongside the XE RPM file. Here is a quick guide on how to setup Oracle Database 18c XE.
UPDATE: see here for how to install Oracle XE on Linux 8!
tl;dr
Oracle Linux
- Download the RPM file from Oracle Technology Network
- Run “
yum -y localinstall oracle-database*18c*
“ - Run “
/etc/init.d/oracle-xe-18c configure
“
Other Red Hat compatible Linux distribution
- Download the RPM file from Oracle Technology Network
- Download the Oracle Database Preinstall RPM via “
curl -O https://yum.oracle.com/repo/OracleLinux/OL7/latest/x86_64/getPackage/oracle-database-preinstall-18c-1.0-1.el7.x86_64.rpm
“ - Run “
yum -y localinstall oracle-database*18c*
“ - Run “
/etc/init.d/oracle-xe-18c configure
“
[youtube https://www.youtube.com/watch?v=XB1ZakqiTa8&w=560&h=315]
[youtube https://www.youtube.com/watch?v=fg2i0IEc1WU&w=560&h=315]
Downloading the RPM file
The download is straight forward as usual. Just head over to https://www.oracle.com/technetwork/database/database-technologies/express-edition/downloads/index.html, accept the license agreement after reading it, and download the RPM file.
Downloading the Oracle Database Preinstall RPM file
If you run on Oracle Linux, you can skip this step! The Oracle Database Preinstall RPM file will be pulled automatically by the yum
command.
Download the Oracle Database Preinstall RPM by executing:
curl -o oracle-database-preinstall-18c-1.0-1.el7.x86_64.rpm https://yum.oracle.com/repo/OracleLinux/OL7/latest/x86_64/getPackage/oracle-database-preinstall-18c-1.0-1.el7.x86_64.rpmIf you happen to be behind a firewall and need to specify a proxy, you can do so by running “
export https_proxy=[proxy_host]:[proxy_port]; export http_proxy=[proxy_host]:[proxy_port]
” beforehand, for example:export https_proxy=proxy.example.com:80 export http_proxy=proxy.example.com.80 curl -o oracle-database-preinstall-18c-1.0-1.el7.x86_64.rpm https://yum.oracle.com/repo/OracleLinux/OL7/latest/x86_64/getPackage/oracle-database-preinstall-18c-1.0-1.el7.x86_64.rpmInstalling the RPM file
In order to install the RPM file(s) you will have to have
root
privileges. This means that you either have to have access to theroot
user or havesudo
permissions. To install the Oracle Database 18c XE binaries, execute:yum –y localinstall oracle-database*18c*Note that the rpm file has to be in the working directory where you execute
yum
. Onceyum
is running, you will see a similar output to this:[root@localhost gerald]# yum -y localinstall oracle-database-xe-18c-1.0-1.x86_64.rpm Loaded plugins: langpacks, ulninfo Examining oracle-database-xe-18c-1.0-1.x86_64.rpm: oracle-database-xe-18c-1.0-1.x86_64 Marking oracle-database-xe-18c-1.0-1.x86_64.rpm to be installed Resolving Dependencies --> Running transaction check ---> Package oracle-database-xe-18c.x86_64 0:1.0-1 will be installed --> Processing Dependency: oracle-database-preinstall-18c for package: oracle-database-xe-18c-1.0-1.x86_64 ol7_UEKR4 | 1.2 kB 00:00:00 ol7_latest | 1.4 kB 00:00:00 (1/4): ol7_UEKR4/x86_64/updateinfo | 80 kB 00:00:00 (2/4): ol7_latest/x86_64/updateinfo | 568 kB 00:00:00 (3/4): ol7_UEKR4/x86_64/primary | 2.5 MB 00:00:00 (4/4): ol7_latest/x86_64/primary | 7.8 MB 00:00:01 ol7_UEKR4 110/110 ol7_latest 8768/8768 --> Running transaction check ---> Package oracle-database-preinstall-18c.x86_64 0:1.0-1.el7 will be installed --> Processing Dependency: compat-libcap1 for package: oracle-database-preinstall-18c-1.0-1.el7.x86_64 --> Processing Dependency: ksh for package: oracle-database-preinstall-18c-1.0-1.el7.x86_64 --> Processing Dependency: libaio-devel for package: oracle-database-preinstall-18c-1.0-1.el7.x86_64 --> Processing Dependency: glibc-devel for package: oracle-database-preinstall-18c-1.0-1.el7.x86_64 --> Processing Dependency: compat-libstdc++-33 for package: oracle-database-preinstall-18c-1.0-1.el7.x86_64 --> Processing Dependency: libstdc++-devel for package: oracle-database-preinstall-18c-1.0-1.el7.x86_64 --> Running transaction check ---> Package compat-libcap1.x86_64 0:1.10-7.el7 will be installed ---> Package compat-libstdc++-33.x86_64 0:3.2.3-72.el7 will be installed ---> Package glibc-devel.x86_64 0:2.17-222.0.7.el7 will be installed --> Processing Dependency: glibc-headers = 2.17-222.0.7.el7 for package: glibc-devel-2.17-222.0.7.el7.x86_64 --> Processing Dependency: glibc = 2.17-222.0.7.el7 for package: glibc-devel-2.17-222.0.7.el7.x86_64 --> Processing Dependency: glibc-headers for package: glibc-devel-2.17-222.0.7.el7.x86_64 ---> Package ksh.x86_64 0:20120801-137.0.1.el7 will be installed ---> Package libaio-devel.x86_64 0:0.3.109-13.el7 will be installed ---> Package libstdc++-devel.x86_64 0:4.8.5-28.0.1.el7_5.1 will be installed --> Running transaction check ---> Package glibc.x86_64 0:2.17-222.el7 will be updated --> Processing Dependency: glibc = 2.17-222.el7 for package: glibc-common-2.17-222.el7.x86_64 ---> Package glibc.x86_64 0:2.17-222.0.7.el7 will be an update ---> Package glibc-headers.x86_64 0:2.17-222.0.7.el7 will be installed --> Processing Dependency: kernel-headers >= 2.2.1 for package: glibc-headers-2.17-222.0.7.el7.x86_64 --> Processing Dependency: kernel-headers for package: glibc-headers-2.17-222.0.7.el7.x86_64 --> Running transaction check ---> Package glibc-common.x86_64 0:2.17-222.el7 will be updated ---> Package glibc-common.x86_64 0:2.17-222.0.7.el7 will be an update ---> Package kernel-headers.x86_64 0:3.10.0-862.14.4.el7 will be installed --> Finished Dependency Resolution Dependencies Resolved ===================================================================================================================================== Package Arch Version Repository Size ===================================================================================================================================== Installing: oracle-database-xe-18c x86_64 1.0-1 /oracle-database-xe-18c-1.0-1.x86_64 5.2 G Installing for dependencies: compat-libcap1 x86_64 1.10-7.el7 ol7_latest 17 k compat-libstdc++-33 x86_64 3.2.3-72.el7 ol7_latest 190 k glibc-devel x86_64 2.17-222.0.7.el7 ol7_latest 1.1 M glibc-headers x86_64 2.17-222.0.7.el7 ol7_latest 679 k kernel-headers x86_64 3.10.0-862.14.4.el7 ol7_latest 7.1 M ksh x86_64 20120801-137.0.1.el7 ol7_latest 881 k libaio-devel x86_64 0.3.109-13.el7 ol7_latest 12 k libstdc++-devel x86_64 4.8.5-28.0.1.el7_5.1 ol7_latest 1.5 M oracle-database-preinstall-18c x86_64 1.0-1.el7 ol7_latest 18 k Updating for dependencies: glibc x86_64 2.17-222.0.7.el7 ol7_latest 3.6 M glibc-common x86_64 2.17-222.0.7.el7 ol7_latest 11 M Transaction Summary ===================================================================================================================================== Install 1 Package (+9 Dependent packages) Upgrade ( 2 Dependent packages) Total size: 5.2 G Total download size: 27 M Downloading packages: No Presto metadata available for ol7_latest (1/11): compat-libcap1-1.10-7.el7.x86_64.rpm | 17 kB 00:00:00 (2/11): compat-libstdc++-33-3.2.3-72.el7.x86_64.rpm | 190 kB 00:00:00 (3/11): glibc-2.17-222.0.7.el7.x86_64.rpm | 3.6 MB 00:00:01 (4/11): glibc-devel-2.17-222.0.7.el7.x86_64.rpm | 1.1 MB 00:00:00 (5/11): glibc-headers-2.17-222.0.7.el7.x86_64.rpm | 679 kB 00:00:00 (6/11): glibc-common-2.17-222.0.7.el7.x86_64.rpm | 11 MB 00:00:03 (7/11): ksh-20120801-137.0.1.el7.x86_64.rpm | 881 kB 00:00:00 (8/11): kernel-headers-3.10.0-862.14.4.el7.x86_64.rpm | 7.1 MB 00:00:01 (9/11): libaio-devel-0.3.109-13.el7.x86_64.rpm | 12 kB 00:00:00 (10/11): oracle-database-preinstall-18c-1.0-1.el7.x86_64.rpm | 18 kB 00:00:00 (11/11): libstdc++-devel-4.8.5-28.0.1.el7_5.1.x86_64.rpm | 1.5 MB 00:00:00 ------------------------------------------------------------------------------------------------------------------------------------- Total 6.1 MB/s | 27 MB 00:00:04 Running transaction check Running transaction test Transaction test succeeded Running transaction Updating : glibc-common-2.17-222.0.7.el7.x86_64 1/14 Updating : glibc-2.17-222.0.7.el7.x86_64 2/14 Installing : compat-libcap1-1.10-7.el7.x86_64 3/14 Installing : compat-libstdc++-33-3.2.3-72.el7.x86_64 4/14 Installing : ksh-20120801-137.0.1.el7.x86_64 5/14 Installing : libstdc++-devel-4.8.5-28.0.1.el7_5.1.x86_64 6/14 Installing : libaio-devel-0.3.109-13.el7.x86_64 7/14 Installing : kernel-headers-3.10.0-862.14.4.el7.x86_64 8/14 Installing : glibc-headers-2.17-222.0.7.el7.x86_64 9/14 Installing : glibc-devel-2.17-222.0.7.el7.x86_64 10/14 Installing : oracle-database-preinstall-18c-1.0-1.el7.x86_64 11/14 Installing : oracle-database-xe-18c-1.0-1.x86_64 12/14 [INFO] Executing post installation scripts... [INFO] Oracle home installed successfully and ready to be configured. To configure Oracle Database XE, optionally modify the parameters in '/etc/sysconfig/oracle-xe-18c.conf' and then execute '/etc/init.d/oracle-xe-18c configure' as root. Cleanup : glibc-common-2.17-222.el7.x86_64 13/14 Cleanup : glibc-2.17-222.el7.x86_64 14/14 Verifying : glibc-2.17-222.0.7.el7.x86_64 1/14 Verifying : kernel-headers-3.10.0-862.14.4.el7.x86_64 2/14 Verifying : glibc-common-2.17-222.0.7.el7.x86_64 3/14 Verifying : oracle-database-preinstall-18c-1.0-1.el7.x86_64 4/14 Verifying : glibc-headers-2.17-222.0.7.el7.x86_64 5/14 Verifying : compat-libcap1-1.10-7.el7.x86_64 6/14 Verifying : compat-libstdc++-33-3.2.3-72.el7.x86_64 7/14 Verifying : glibc-devel-2.17-222.0.7.el7.x86_64 8/14 Verifying : libaio-devel-0.3.109-13.el7.x86_64 9/14 Verifying : libstdc++-devel-4.8.5-28.0.1.el7_5.1.x86_64 10/14 Verifying : oracle-database-xe-18c-1.0-1.x86_64 11/14 Verifying : ksh-20120801-137.0.1.el7.x86_64 12/14 Verifying : glibc-common-2.17-222.el7.x86_64 13/14 Verifying : glibc-2.17-222.el7.x86_64 14/14 Installed: oracle-database-xe-18c.x86_64 0:1.0-1 Dependency Installed: compat-libcap1.x86_64 0:1.10-7.el7 compat-libstdc++-33.x86_64 0:3.2.3-72.el7 glibc-devel.x86_64 0:2.17-222.0.7.el7 glibc-headers.x86_64 0:2.17-222.0.7.el7 kernel-headers.x86_64 0:3.10.0-862.14.4.el7 ksh.x86_64 0:20120801-137.0.1.el7 libaio-devel.x86_64 0:0.3.109-13.el7 libstdc++-devel.x86_64 0:4.8.5-28.0.1.el7_5.1 oracle-database-preinstall-18c.x86_64 0:1.0-1.el7 Dependency Updated: glibc.x86_64 0:2.17-222.0.7.el7 glibc-common.x86_64 0:2.17-222.0.7.el7 Complete!Once
yum
executed successfully, the Oracle Database 18c Express Edition binaries are installed. Next and last step is to configure the database itself.Configuring the database
To configure the XE database you need to run
/etc/init.d/oracle-xe-18c configure
, once again, as eitherroot
or withroot
privileges.[root@localhost gerald]# /etc/init.d/oracle-xe-18c configure Specify a password to be used for database accounts. Oracle recommends that the password entered should be at least 8 characters in length, contain at least 1 uppercase character, 1 lower case character and 1 digit [0-9]. Note that the same password will be used for SYS, SYSTEM and PDBADMIN accounts: Confirm the password:Type in and confirm the password for the administrative accounts,
SYS
,SYSTEM
andPDBADMIN
, and hit Enter.Configuring Oracle Listener. Listener configuration succeeded. Configuring Oracle Database XE. Enter SYS user password: *************** Enter SYSTEM user password: ************ Enter PDBADMIN User Password: ************* Prepare for db operation 7% complete Copying database files 29% complete Creating and starting Oracle instance 30% complete 31% complete 34% complete 38% complete 41% complete 43% complete Completing Database Creation 47% complete 50% complete Creating Pluggable Databases 54% complete 71% complete Executing Post Configuration Actions 93% complete Running Custom Scripts 100% complete Database creation complete. For details check the logfiles at: /opt/oracle/cfgtoollogs/dbca/XE. Database Information: Global Database Name:XE System Identifier(SID):XE Look at the log file "/opt/oracle/cfgtoollogs/dbca/XE/XE.log" for further details. Connect to Oracle Database using one of the connect strings: Pluggable database: localhost.localdomain/XEPDB1 Multitenant container database: localhost.localdomain Use https://localhost:5500/em to access Oracle Enterprise Manager for Oracle Database XE [root@localhost gerald]#After the command has finished, the Oracle Database 18c XE is fully configured and ready to use.
Connecting to Oracle Database 18c XE
To fire up the SQL prompt for your user, you will have to make sure that
$ORACLE_HOME
is set and$ORACLE_HOME/bin
in your$PATH
. There is a utility script calledoraenv
, that will configure that and more for your. All you have to do is to call it for your local shell (note the.
before the script name below) and pass on the$ORACLE_SID
, which isXE
:[gerald@localhost ~]$ . oraenv ORACLE_SID = [gerald] ? XE ORACLE_BASE environment variable is not being set since this information is not available for the current user ID gerald. You can set ORACLE_BASE manually if it is required. Resetting ORACLE_BASE to its previous value or ORACLE_HOME The Oracle base has been set to /opt/oracle/product/18c/dbhomeXEOnce you have done that you can connect via the SQL prompt. The format for the connect string is:
[user]/[password]@//[hostname]:[port]/[DB name] [AS [role]]
[gerald@localhost ~]$ sqlplus sys/GetStarted18c@//localhost:1521/XE as sysdba SQL*Plus: Release 18.0.0.0.0 - Production on Fri Oct 19 09:05:41 2018 Version 18.4.0.0.0 Copyright (c) 1982, 2018, Oracle. All rights reserved. Connected to: Oracle Database 18c Express Edition Release 18.0.0.0.0 - Production Version 18.4.0.0.0 SQL> SELECT 'Hello World!' FROM dual; 'HELLOWORLD! ------------ Hello World! SQL> exit Disconnected from Oracle Database 18c Express Edition Release 18.0.0.0.0 - Production Version 18.4.0.0.0More information
Hi! What kind of “Red Hat compatible Linux distribution” you used? If it is CentOS what version?
I tried the newest 7.5.1804 (Minimal-ISO) and everything is fine until the db configuration (Listener configuration failed). It seems not to be the only one with the problem – I found these (unanswered) posts: https://community.oracle.com/thread/4180595
Any ideas?
Hi Carlos,
There is only one kind of Red Hat compatible OS, which are those that support the RedHat Package Manager (RPM) and the same libraries.
The issue in the community post is that the underlying Java VM crashes when executing a Java program. Do you have the same issue?
You might want to post your issue in the community forum as well.
Thx,
Yes. I have exactly the same problem. For me it’s interesting that it doesn’t work “out of the box” although I downloaded a fresh centos without modifying nothing (except updates and the oracle presinstall package). It seems to be a very specific problem with – you’re right – the underlying JAVA VM. You don’t had this issue when you install 18c XE on the “red hat compatible OS”? Can you post what distribution and kernel version you used for your test (the video)? And what JAVA (java -version) is installed? OpenJDK or Oracles Java (8 or 9)?
And yes… I will post in the forum too. Hoped that the issue (4180595) solved earlier…
Hey Carlos,
The versions for Oracle Linux I have XE running, is:
[gerald@localhost ~]$ cat /etc/oracle-release
Oracle Linux Server release 7.5
[gerald@localhost ~]$ uname -a
Linux localhost.localdomain 4.1.12-124.19.7.el7uek.x86_64 #2 SMP Sat Sep 29 17:29:22 PDT 2018 x86_64 x86_64 x86_64 GNU/Linux
The Java version used for netca gets shipped with the installation. When you look at $ORACLE_HOME/bin/netca you will find the following lines:
99 # External Directory Variables set by the Installer
100 JRE_DIR=/opt/oracle/product/18c/dbhomeXE/jdk/jre
101 JLIB_DIR=/opt/oracle/product/18c/dbhomeXE/jlib
102
103
104 # JRE Executable and Class File Variables
105 JRE=$JRE_DIR/bin/java
That Java version itself will be the same as for you:
-bash-4.2$ /opt/oracle/product/18c/dbhomeXE/jdk/jre/bin/java -version
java version “1.8.0_171”
Java(TM) SE Runtime Environment (build 1.8.0_171-b11)
Java HotSpot(TM) 64-Bit Server VM (build 25.171-b11, mixed mode)
On the Red Hat compatible OS I also used CentOS:
[gerald@localhost ~]$ cat /etc/centos-release
CentOS Linux release 7.5.1804 (Core)
[gerald@localhost ~]$ uname -a
Linux localhost.localdomain 3.10.0-862.14.4.el7.x86_64 #1 SMP Wed Sep 26 15:12:11 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux
[oracle@localhost ~]$ /opt/oracle/product/18c/dbhomeXE/jdk/jre/bin/java -version
java version “1.8.0_171”
Java(TM) SE Runtime Environment (build 1.8.0_171-b11)
Java HotSpot(TM) 64-Bit Server VM (build 25.171-b11, mixed mode)
Carlos,
I’ve found that re-running the configuration after it fails the first time works for me, so I’m using the following command:
# /etc/init.d/oracle-xe-18c configure 2>&1 || \
> cat /opt/oracle/cfgtoollogs/netca/netca_configure_out.log && \
> /etc/init.d/oracle-xe-18c configure 2>&1
Hey David,
thanks for you answer – but it didn’t work for me! I’ve tried it several times in different states of my virtual environment but always failed.
You’ve executed all these commands as root user? Or as oracle user with root privileges (sudo)? You used the minimal ISO (no GUI) from CentOS? Did you update the system after configuring? You used VirtualBox too?
Found the solution: don’t update your fresh centos installation. Then there are no problems…
(don’t ask me why – but it works)
Hey Gerald!
Thanks for everything you are doing for the XE community!
I have a very tricky question for you about the
oraenv
script. In the ‘Administering Oracle Database’ documentation (https://docs.oracle.com/en/database/oracle/oracle-database/18/unxar/administering-oracle-database.html) it is said thatoraenv
script should use theoratab
contents in order to determine the ORACLE_SID and ORACLE_HOME environment variables. If it fails, then it asks the user to specify them.But I checked the script contents and never found utilizing of the
oratab
file, although I have it under/etc
directory in my system and there’s a row containing all the needed information:XE:/opt/oracle/product/18c/dbhomeXE:N
.At the moment, to be able to run the
oraenv
script in the non-interactive regime (as a part of/etc/profile.d
scripts, to set up the environment by default for all new sessions), I first set theORACLE_SID
andORAENV_ASK
environment variables to the corresponding values and only then run the script, which is not quite convinient. Indeed, the sctipt didn’t have to ask me to provide the values, it could use myoratab
contents instead.The question is – is there a bug or was all this done on any purpose that the script don’t quite reflect the facts written in the official docs?
You can check out my workaround here: https://dsavenko.me/oracledb-apex-ords-tomcat-httpd-centos7-all-in-one-guide-part-two/#settingupenvironment
Hi Denis,
Thank you very much!
I will have to check and see what it does. It should retrieve the values from /etc/oratab, otherwise how would it get to the ORACLE_HOME.
What actually happens when you run
. oraenv
and pass onORACLE_SID=XE
? Does it set the ORACLE_HOME and PATH correctly?Btw, that is the only thing that
oraenv
does. You can just happily set ORACLE_HOME, ORACLE_SID, and PATH yourself and don’t even need to invokeoraenv
Thx,
Hi Gerald!
Well, I had a look at the script contents before worked out my solution.
So, basically yes, it does set the ORACLE_HOME and PATH env variables when you provide it with the ORACLE_SID env variable value and set the ORAENV_ASK variable value to NO. Otherwise, despite the fact that ORACLE_SID is already set, it asks for its value from keyboard, however the default value is changed from the OS user name (‘root’ in my case) to ‘XE’.
I haven’t found any usage of /etc/oratab inside the script, which I have with my 18c XE distribution. Although, I didn’t look into the ‘dbhome.sh’ script, which is executed inside ‘oraenv.sh’.
Hey Denis,
It is indeed in
dbhome
that the/etc/oratab
is read:See:
Right. Now I understnad that by reading
oratab
filedbhome
script determines which to use if there are several of them, and it does it by the SID given to the script.Ok, but the issue is in the different place. The thing is that
oraenv
script does not have any defaults in 18c and does not take SID as an argument (asdbhome
does).This means it always expect SID already set in the environment along with ORAENV_ASK set to
NO
. Otherwise it demands it from keyboard, which is very inconvinient if a user like me wants to set the environment by default. Ok, there is a workaround (which I demonstrated), but maybe it would be nicer if the script read ORACLE_SID value as an argument? Like. oraenv XE
– and in this case it would respect the given value and would not ask the user to specify one.Just a kind suggestion.
Hi Denis,
That is the standard way of
oraenv
across all editions and since many versions. If you want it non-interactive you will have to setORAENV_ASK=NO
first.As you said, the reason why
/etc/oratab
is scanned is for differentORACLE_SID
s, which is not the case for XE but then again, it’s the very same script as with the other editions and versions.Is setting these two environment variables really that much of a big deal?
Mostly people just have
in their bash_profile and continue like that. Of course you can also always use
dbhome
directly if you want as well.Thx,
Hi Gerald,
If this is an official way recommended by Oracle, then I am quite ok with it. And I suppose I’ll stay with it for future. In fact, I wasn’t complaining, I just tried to make a suggestion, because, as I know, you’re one of those people who has power to influence things.
Thanks again for your elaborate answers!
Hi Denis,
Not a problem at all. I just wanted to understand whether there was something that couldn’t be addressed via the 2 env variables way.
As said, this is standard for many, many years now and seems to work quite well, hopefully also for your use case 🙂
Thx,
Hi Gerald,
I am having an error installing Database on Oracle Linux. I am doing that in the virtual box. I have Oracle Linux in my virtual box and I am using the terminal inside to pass on command: “yum localinstall /home/holuser/varun/oracle-database-xe-18c-1.0-1.x86_64.rpm”
I downloaded the installation file and kept in a folder ‘varun’ in the home directory (In Linux) and gave that path in the above command. On running that command it gives me a message saying dependancy for pre-install file. I downloaded that too and kept in the same folder and ran again. did not work.
Could you please help?
Thanks so much!
Varun
Hi Varun,
Can you please post this issue and the output of the commands you ran on the XE forum under: https://community.oracle.com/community/groundbreakers/database/developer-tools/oracle_database_express_edition_xe/overview
Thank you!
Pingback: Installing and Configuring Oracle 18cXE on CentOS | The Anti-Kyte
“DB name” is “DB service name”
…:[port]/[DB service name] [AS SYSDBA]
https://www.oracle.com/database/technologies/appdev/xe/quickstart.html
[DB name] is [DB service name]
https://www.oracle.com/database/technologies/appdev/xe/quickstart.html
Pingback: Other Databases - Building a LAMP Server (2019) | Supreme Ruler of Earth
Pingback: PHP - Building a LAMP Server (2019) | Supreme Ruler of Earth
Pingback: How to install Oracle Database 18c XE on Windows – Gerald on IT
Many thanks for this. I was in a hurry to install XE on Centos and didn’t really have time to think it through.
Thanks so much for the above amazing detailed and very interesting guide/tutorial – written and video!
But I have a problem (maybe with something I didn’t understand correctly).
Personally I just want to install APEX.
So first I install and configure “Oracle Database Express Edition (XE)” with the below commands :
rpm -ivh oracle-database-xe-18c-1.0-1.x86_64.rpm
/etc/init.d/oracle-xe-18c configure
But in the end as you show, a page is running (I think it’s not APEX there) :
https://localhost:5500/em
to which I have no access, because my browser says: https://imgur.com/a/L42WA3M
In an previous version when I just installing oracle-xe also have apex, is it no longer installed automatically?
So, I wanted to ask you, what should i have to do to install APEX ?
Do I need to download the compressed file from here : https://www.oracle.com/tools/downloads/apex-v191-downloads.html ?
Thank you very much!
Hi Orser,
APEX is no longer shipped and installed with Oracle XE. APEX releases every 3 months and we have learned with 11g XE that people never upgrade it and then run on very old APEX installations. Hence why it’s no longer shipped with the database and will have to be installed separately. Please have a look at the APEX Getting Started page and the APEX Installation Guide for more information.
Thx,
Hi Gerald,
Many thanks for a great tutorial. I have hit a rather frustrating snag in that after installing Oracle 18c I have been unable to successfully create a user and then connect to it. More precisely I can create the user but the connection keeps failing. The commands I’m using are below along with the failed connection attempt. If you have any suggestions it would be greatly appreciated.
I first connect to Oracle as root and then connect to the container XEPDB1
SQL>sqlplus system/password
SQL>ALTER SESSION SET CONTAINER = XEPDB1;
I then do the following to create a user.
SQL>create user paul identified by Guardium111;
SQL>grant connect to paul;
SQL>grant create session to paul;
SQL>alter user paul default role all;
Everything above works without error. When I try to connect to user paul I get the following. I’m tearing what little is left of my hair out trying to understand what the issue is.
SQL> conn paul
Enter password:
ERROR:
ORA-01017: invalid username/password; logon denied
Warning: You are no longer connected to ORACLE.
Hi Gerald,
Problem solved. I need to connect as follows.
sqlplus SYS/guardium@XEPDB1 AS SYSDBA
sqlplus paul/guardium@XEPDB1
or
conn paul/guardium@XEPDB1
Gerald,
Thanks for a wonderful blog.
There is an issue with Oracle 18cXE on Oracle Linux 7.7 , something to do with Firewall. It does not allows connection external connections for example SQL Developer. Raised this issue in Oracle Forum as well.
https://cloudcustomerconnect.oracle.com/posts/21f7a38448
Could you please advise.
Best Regards
Asheesh
Good evening everyone. I’m trying to install Oracle XE 18c on Oracle Linux 8.3 but it always gives this error: Can someone help me?
Problem: conflicting requests
– nothing provides oracle-database-preinstall-18c needed by oracle-database-xe-18c-1.0-1.x86_64
(try to add ‘–skip-broken’ to skip uninstallable packages or ‘–nobest’ to use not only best candidate packages)
Hi CALIXTO RODRIGUES MACEDO,
Oracle Linux 8 doesn’t ship the
oracle-database-preinstall-18c
package in the yum repository. Instead one has to install the rpm viarpm --nodeps
and make sure that all required Linux 8 dependencies are also present. That’s probably worth a new blog post, so let me draft that one up now.Thx,
Hello Gerald
Thank you very much for your reply.
I’m a new user Linux, I don’t know much. I’m going to try again, and if I need any help, I’ll write it here.
Hey CALIXTO RODRIGUES MACEDO,
Please see here: https://geraldonit.com/2021/05/04/how-to-install-oracle-database-18c-xe-on-linux-8/
That hopefully gives you all you need.
Thx,