Discussions
Categories
- 385.5K All Categories
- 4.9K Data
- 2.5K Big Data Appliance
- 2.4K Data Science
- 453.4K Databases
- 223.2K General Database Discussions
- 3.8K Java and JavaScript in the Database
- 47 Multilingual Engine
- 606 MySQL Community Space
- 486 NoSQL Database
- 7.9K Oracle Database Express Edition (XE)
- 3.2K ORDS, SODA & JSON in the Database
- 585 SQLcl
- 4K SQL Developer Data Modeler
- 188K SQL & PL/SQL
- 21.5K SQL Developer
- 46 Data Integration
- 46 GoldenGate
- 298.4K Development
- 4 Application Development
- 20 Developer Projects
- 166 Programming Languages
- 295K Development Tools
- 150 DevOps
- 3.1K QA/Testing
- 646.7K Java
- 37 Java Learning Subscription
- 37.1K Database Connectivity
- 201 Java Community Process
- 108 Java 25
- 22.2K Java APIs
- 138.3K Java Development Tools
- 165.4K Java EE (Java Enterprise Edition)
- 22 Java Essentials
- 176 Java 8 Questions
- 86K Java Programming
- 82 Java Puzzle Ball
- 65.1K New To Java
- 1.7K Training / Learning / Certification
- 13.8K Java HotSpot Virtual Machine
- 94.3K Java SE
- 13.8K Java Security
- 208 Java User Groups
- 25 JavaScript - Nashorn
- Programs
- 667 LiveLabs
- 41 Workshops
- 10.3K Software
- 6.7K Berkeley DB Family
- 3.6K JHeadstart
- 6K Other Languages
- 2.3K Chinese
- 207 Deutsche Oracle Community
- 1.1K Español
- 1.9K Japanese
- 474 Portuguese
18c Express Edition, Win 10 Pro. No default database (ORA-12560, ORA-12514.) What am I missing?

I've (seemingly) successfully installed the 18.4 version of the 18c XE database on Win 10 Pro, but no matter how many times I do the install and no matter what I try, I cannot connect to anything. Is there something obvious I'm missing or should do to make the database accessible?
Let's go through this step by step:
- I'm installing the Windows package currently available at this link - that's the Feb 20, 2019 release, 18.4.0.0.0. I've checked the download against the checksum and confirmed the download is not corrupted.
- I'm installing the package in a x64-based VM, running Win 10 Pro (build 18363) with 8.87 GB of RAM available. It's a VirtualBox VM, which I assume works - as there's a link to a VirtualBox appliance right here on the landing page of this forum.
- To make sure I'm not mis-typing anything, I extracted the contents of the downloaded archive to
C:\xe_temp\
, and installed with the following batch script:setup.exe /s /v"RSP_FILE=c:\xe_temp\sQ-XEInstall.rsp" /v"/L*v c:\xe_temp\setup.log" /v"/qn"
and the following lines in the corresponding response file:INSTALLDIR=C:\oracle\product\18.0.0\
PASSWORD=<password-known>
LISTENER_PORT=0
EMEXPRESS_PORT=0
CHAR_SET=AL32UTF8 - The install script was run from a command terminal "Run as Administrator" by the default (only) user, who is part of the Administrators group.
- During the install, I was prompted to allow the application through the firewall. I allowed this for all networks (public and private).
- The file that was created during the installation,
C:\xe_temp\setup.log
, contains the lineMSI (s) (A0:F4) [15:49:24:863]: Windows Installer installed the product. Product Name: Oracle Database 18c Express Edition. Product Version: 18.4.0.0.0. Product Language: 1033. Manufacturer: Oracle Corporation. Installation success or error status: 0.
- Right after the install, I go to the install directory and try and connect to my newly installed database:
C:\xe_temp>cd C:\oracle\product\18.0.0\dbhomeXE\bin
C:\oracle\product\18.0.0\dbhomeXE\bin>.\sqlplus / as sysdba
SQL*Plus: Release 18.0.0.0.0 - Production on Tue Dec 31 12:32:55 2019
Version 18.4.0.0.0
Copyright (c) 1982, 2018, Oracle. All rights reserved.
ERROR:
ORA-12560: TNS:protocol adapter error
Enter user-name: sys
Enter password: <yes, I entered the correct pwd!>
ERROR:
ORA-12560: TNS:protocol adapter error
Enter user-name: ^C - That doesn't work. Let's see if we can ping the database:
C:\oracle\product\18.0.0\dbhomeXE\bin>tnsping localhost
TNS Ping Utility for 64-bit Windows: Version 18.0.0.0.0 - Production on 31-DEC-2019 12:37:04
Copyright (c) 1997, 2018, Oracle. All rights reserved.
Used parameter files:
c:\oracle\product\18.0.0\dbhomeXE\network\admin\sqlnet.ora
Used EZCONNECT adapter to resolve the alias
Attempting to contact (DESCRIPTION=(CONNECT_DATA=(SERVICE_NAME=))(ADDRESS=(PROTOCOL=TCP)(HOST=127.0.0.1)(PORT=1521)))
OK (20 msec) - That seems okay. Is anyone listening?
C:\oracle\product\18.0.0\dbhomeXE\bin>lsnrctl status
LSNRCTL for 64-bit Windows: Version 18.0.0.0.0 - Production on 31-DEC-2019 12:33:56
Copyright (c) 1991, 2018, Oracle. All rights reserved.
Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=MS-TEST-WIN-ORACLE.local)(PORT=1521)))
STATUS of the LISTENER
------------------------
Alias LISTENER
Version TNSLSNR for 64-bit Windows: Version 18.0.0.0.0 - Production
Start Date 31-DEC-2019 12:01:52
Uptime 0 days 0 hr. 32 min. 3 sec
Trace Level off
Security ON: Local OS Authentication
SNMP OFF
Default Service XE
Listener Parameter File c:\oracle\product\18.0.0\dbhomeXE\network\admin\listener.ora
Listener Log File c:\oracle\product\18.0.0\diag\tnslsnr\MS-TEST-WIN-ORACLE\listener\alert\log.xml
Listening Endpoints Summary...
(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=MS-TEST-WIN-ORACLE)(PORT=1521)))
(DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(PIPENAME=\\.\pipe\EXTPROC1521ipc)))
Services Summary...
Service "CLRExtProc" has 1 instance(s).
Instance "CLRExtProc", status UNKNOWN, has 1 handler(s) for this service...
The command completed successfully - The command completed successfully, and lists at least one service. However, from researching this problem, I'd also expect to see the
XE
andXEPDB1
services listed there, too. - I checked in the Windows services console - the only Oracle services listed (and running) are
OracleOraDB18Home1MTSRRecoveryService
andOracleOraDB18Home1TNSListener
. I've tried stopping and re-starting them, to no avail. - Can I connect to the single service that is listed? Nope.
C:\oracle\product\18.0.0\dbhomeXE\bin>.\sqlplus [email protected]:1521/CLRExtProc
SQL*Plus: Release 18.0.0.0.0 - Production on Tue Dec 31 12:34:46 2019
Version 18.4.0.0.0
Copyright (c) 1982, 2018, Oracle. All rights reserved.
ERROR:
ORA-12514: TNS:listener does not currently know of service requested in connect descriptor
Enter user-name: ^C
Can anyone identify what the problem is? Why weren't the XE|PDB1 services installed? Is the syntax of my sqlplus commands correct?
Answers
-
Just as a matter of interest, why did you not just run setup.exe and manually enter what you are asked for throuh the OUI?
It would apear that you haven't setup the OS env with "set ORACLE_SID=XE" or there is some other ORACLE env var not set correctly.
It would also appear that your database is not up.
What does the install log say?
-
tnsping does not ping the database - it simply checks if a tcp port connect is accepted by a listener. It is useless otherwise.
To determine if a database instance is running, one does a process listing of oracle (ps -fu oracle on Linux) and identify the instance's SID via processes like PMON (process monitor) and SMON (system monitor). On Windows, threads are used - thus you need to determine which threads are owned by oracle.exe processes.
As for running XE in a Windows 10 VM - plain silly. Use an Oracle Linux VM as a free OpenSource solution, with full access to Oracle's Public Yum Repository of Linux s/w - and the ability to also add access to CentOS's EPL Yum Repository. No licensing and copyright issues.
I remain dumbfounded that Windows is even considered as an option in such a case. It is a wholly inferior choice and solution given free and robust Oracle Linux with the UEK kernel.
-
I did run the setup manually - several times. But after repeated attempts didn't work, I got paranoid I was mis-typing something during the install process, so I codified everything as a repeatable script / response file.
I tried your suggestion - setting ORACLE_SID just before install, with no success. I also couldn't find any mention of it, nor any other required variable, in the installation guide (other than an injunction to make sure ORACLE_HOME is not set.) The guide does say that the installer will only use the SID XE, which brings me back to my question - why didn't the installer create the XE service, even though that is the only one supported and allowed? You say the database is not up - assuming that it does exist (lsnrctl can't find it), how would you suggest I bring it up?
As for the install log, you can see an extract from it in my question - setup completed without errors. Would the full install file help?
-
The installer log will detail the attempted XE db creation.
And SIDs other than XE can be created too - but only a single instance is allowed to run at a time.
Assuming a successful XE Oracle installation (but a failed XE db creation), you can use DBCA to interactively create a database.
-
Prompted by @Billy~Verreynne I went through the setup log, more carefully this time, and found the following line:
SEVERE: Oracle XE Database configuration was not successful. Verify the corresponding logs under cfgtoollogs\dbca and try again
Looking at the log files under cfgtools\dbca, I found one with the message
[FATAL] [DBT-50000] Unable to check for available memory
Looking further in the setup log, it seems the installer was running the database creation script at the time of the error, with the following parameters:
c:\oracle\product\18.0.0\dbhomeXE\bin\dbca.bat -silent -createDatabase -gdbName XE -templateName XE_Database.dbc -characterSet AL32UTF8 -createAsContainerDatabase true -numberOfPDBs 1 -pdbName XEPDB1 -sid XE -emConfiguration DBEXPRESS -emExpressPort 5500 -sampleSchema true -initParams sga_target=1536M,pga_aggregate_target=512M -customScripts c:\oracle\product\18.0.0\dbhomeXE\assistants\dbca\postdb_creation.sql -oui_internal -maskPasswords FALSE
After looking further into the DBT-50000 error and suggested fixes, I re-ran the DBCA command manually, with two changes:
- I removed the -silent option
- I added the -J-Doracle.assistants.dbca.validate.ConfigurationParams=false option
Running the DBCA script manually brought up the Oracle Database Configuration assistant. At first I tried to go with the Typical Configuration, as follows:
But after churning awhile, that again brought up the DBT-50000 unable to check memory error. So then I selected the Advanced configuration and went through all the remaining setup dialogs (which were generally pre-populated with the options passed to the DBCA script on the command line.)
Everything initially went well, and the installer started copying the files across. It even created the Windows services that were missing and I expected in my previous comment (such as OracleServiceXE.) But that's where the good news ended - the installation failed again with an error saying it couldn't start the database service ("DIM-00019: create service error" and "O/S-Error: (OS 1053) The service did not respond to the start or control request in a timely fashion"
I tried starting the service manually, as Administrator, and got the same error message:
For what it's worth, I was able to install version 11g XE on the same virtual machine without any hassle whatsoever - but that's no use, as we have clients using versions from 12 to 18.
Any further suggestions, or should I be looking into a different Oracle install? (Not necessarily an XE one...)
-
Amongst other things, No, do NOT set ORACLE_SID before install, I did not say that. I was replying to your original post where you show listener output missing XE and XEPDB1 services being listened for.... And specifically you showed you were not able to connect "/ as sysdba" which the setting of ORACLE_SID was about.
You mention a VM, is the VM guest OS windows 10 pro, or something else?
If you are using a VM then use a VM running OLinux or Redhat linux, Oracle databases run much better on Linux.
-
Last used Oracle 7 on Windows NT - and cannot recall just what the service does technically. But you need to figure out why the service fails to load/respond.
You can configure the service to run as oracle (if not already). Configure the service to allow desktop interaction. Peruse the event log for service errors. Look for oracle trace/log/dump files created or updated by the service. Etc.
Windows is unfortunately a complex o/s when it comes to troubleshooting - no /proc or /sys kernel memory structure file system mounts, no easy strace for tracing system calls, which are among the reasons Linux is #1.
-
This is a failed installation, most likely caused by named pipes issues/Antivirus issues.
Please go through these steps
1) Is ORACLE_HOME or TNS_ADMIN set in the environment? Go to a command prompt, type "set". You will need to temporarily unset any such environment variables. This is often the cause of rollbacks.
2) Are you using Windows 10 Home Edition? It is not supported and the installer is not properly checking for it in the Prerequisite check.
3) Are you using Server 2019? Same issue.
4) On your network adapter that you are using, check (enable) "Client for Microsoft Networks" and "File and Printer Sharing for Microsoft Networks".
5) Check to see if Netbios is enabled on your network connection:
See this link for more info:
http://ecross.mvps.org/howto/enable-netbios-over-tcp-ip-with-windows.htm
6) In some cases, antivirus has interfered with an installation. Try disabling anti-virus.
7) Try creating a local user and adding to local administrator group and then log in and install as that user.
-
HOST=MS-TEST-WIN-ORACLE , I think computer names is exceed 15 characters. (NetBIOS computer names Maximum name length: 15 characters)
Change computer name and reinstall again. I hope this will help you.