Windows 中 Oracle 18c 的数据库创建问题
Posted
技术标签:
【中文标题】Windows 中 Oracle 18c 的数据库创建问题【英文标题】:Database Creation Issues for Oracle 18c in Windows 【发布时间】:2020-11-10 23:48:48 【问题描述】:我正在尝试创建一个包含一些示例表的虚拟数据库,作为学校项目的一部分。我没有使用 Oracle 的经验,所以请多多包涵(如果您对该主题有广泛的了解,这篇文章可能会很好笑)。
基本上,我已经成功安装了适用于 Windows x64 的 Oracle 18c XE,并且一切似乎都安装正确。我只想创建一个数据库,然后在所述数据库中创建几个表,但我遇到了一些错误。
关注Oracle's instructions 创建数据库时,出现以下错误:
不知何故,我发现我需要创建一个 Oracle 实例,所以我做到了,它根据 services.msc 运行。这是它的设置窗口以供参考:
不知道为什么会出现这样的错误,我发现另一个指南建议我通过新安装的 SQL Plus 应用程序打开 Oracle。运行/ as sysdba
后,系统会提示我输入用户名和密码。伟大的。在找到this 之后,我设法找到了我的 tnsnames.ora 和 listener.ora 文件,它们分别如下所示:
ORACLR_CONNECTION_DATA =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))
)
(CONNECT_DATA =
(SID = CLRExtProc)
(PRESENTATION = RO)
)
)
DEFAULT_SERVICE_LISTENER = XE
SID_LIST_LISTENER =
(SID_LIST =
(SID_DESC =
(SID_NAME = CLRExtProc)
(ORACLE_HOME = C:\app\Nolan\product\18.0.0\dbhomeXE)
(PROGRAM = extproc)
(ENVS = "EXTPROC_DLLS=ONLY:C:\app\Nolan\product\18.0.0\dbhomeXE\bin\oraclr18.dll")
)
)
LISTENER =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = DESKTOP-495S61D)(PORT = 1521))
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))
)
)
尝试system@"DESKTOP-495S61D:1521/orcl"
或system@"DESKTOP-495S61D:1521/example"
作为用户名并输入任何密码都会抛出ORA-12514: TNS:listener does not currently know of service requested in connect descriptor
。
我在 SQL Plus 中输入的任何内容都不适用于用户名。此外,每次我输入用户名时,它都会停止输入任何密码。我不能粘贴任何东西,也不能打字。我不明白我做错了什么或者甲骨文为什么这么恨我。如果有人能了解我的情况并帮助我重回正轨,我将永远感激不尽。
【问题讨论】:
你的第一张图片有跟踪文件;您是否查看过那里以了解有关该错误的更多详细信息? @MT0 我不太明白我在找什么,但这条线出现了几次:[main] [ 2020-11-10 19:02:47.634 EST ] [nativesystem.WindowsNative.Native] Key 'Software\Oracle\Ocr' does not exist
您说您安装了 XE 18c,但您链接到用于常规 Oracle 数据库创建的文档。如果您实际上已经安装了 XE - eXpress Edition - 那么您已经有一个数据库并且您不需要创建一个。 Read the documentation here。除非你没有安装XE?抱歉,如果您对此感到困惑,但请记住 Oracle 是企业级产品,对初学者并不友好。
谢谢@APC 我一直在关注该文档,但问题仍然存在。我决定卸载 Oracle 并重新安装,然后它就开始工作了。
【参考方案1】:
看来您需要创建一个数据库。您的 tnsnames.ora 和 listener.ora 似乎刚刚配置为调用外部 procs。如果您创建了一个默认数据库,那么您将使用 ORCL 作为 SID。
鲍比
【讨论】:
不幸的是,当我尝试通过数据库配置助手创建数据库时,我仍然收到 NullPointerException 消息。还有其他方法可以创建数据库吗? 您看过 18c XE 安装指南吗?您可能没有安装 Java 等所需的东西。 docs.oracle.com/en/database/oracle/oracle-database/18/xeinw/… 我最终卸载/重新安装,第二次一切顺利。感谢您的帮助!以上是关于Windows 中 Oracle 18c 的数据库创建问题的主要内容,如果未能解决你的问题,请参考以下文章