如何在Mac上通过Oracle Instant Client添加本地数据库?

时间:2017-03-25 04:39:37

标签: sql-server database oracle macos instantclient

我是数据库的新手。

我成功安装了Mac的即时客户端,现在可以在终端中使用sqlplus /nolog,但我无法登录任何数据库,因为除了某些txt文件我没有任何数据库,也无法创建任何用户。

经过大量搜索后,我尝试了这些代码来创建新用户,但是,他们都无法做到。

  

SQL>创建由tiger识别的用户t1;

     

SP2-0640:未连接

     

SQL> conn t1 / tiger

     

错误:   ORA-12545:连接失败,因为目标主机或对象不存在

  

SQL>创建由tiger识别的用户t1 @ localhost;

     

SP2-0640:未连接

     

SQL> conn t1 / tiger @ localhost

     

错误:   ORA-12541:TNS:没有听众

  

SQL> conn scott / tiger @ orcl

     

错误:   ORA-12154:TNS:无法解析指定的连接标识符

以下是我的设置

tsnnames.ora 文件

ORALOCAL = (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = 127.0.0.1)(PORT = 1521))) (CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME = orcl) ) )

listener.ora 文件

LISTENER = (DESCRIPTION_LIST = (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521) ) (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = 127.0.0.1)(PORT = 1521)) ) ) ) )

我的实验课中的软件要求是Windows上的Oracle XE,但我不想在我的Mac上运行VM,我看到他们所做的只是登录安装XE时创建的用户,然后{ {1}},createconnect用于构建数据库的txt文件,并且全部完成。对于Mac用户来说,我感到非常奇怪。

2 个答案:

答案 0 :(得分:0)

要使用oracle客户端连接oracle数据库,必须在clinet tnsname.ora文件中添加正确的数据库名称和描述。

在任何服务器上安装oracle客户端后。请检查是否可以提示sqlplus命令?如果没有,请在客户端计算机上设置环境变量。

答案 1 :(得分:0)

  

"我的tsnnames.ora有什么不对吗?"

是。它指向一个不存在的数据库。

Instant Client是用于连接数据库的软件。它不是数据库,也不能创建数据库。这是浏览器和互联网之间的区别。您需要安装Oracle数据库服务器才能创建数据库。

  

"我的实验课中的软件要求是Windows上的Oracle XE"

XE不是,而且从来没有在Mac上可用。从来没有对此进行官方解释;我的个人理论说它与芯片架构有关,因为XE可用于x86 - Windows,Linux和Mac使用的PowerPC。 (这很重要,因为Oracle为每台机器强制执行一个XE实例)。

现在Apple也使用英特尔芯片为什么不将XE移植到MacOS?因为现在每个人都使用虚拟机。

  

"我不想在我的Mac上运行VM"

为什么不呢? Oracle为Oracle VirtualBox提供了完整的映像,尽管不是Oracle XE 11g。 Find them here

  

"对于Mac用户来说,我感到非常奇怪。"

教育一直青睐Windows操作系统,因为它最有可能是学生在家中认识的操作系统,因为它是 - 而且 - 是主流的桌面操作系统。 Windows机器的成本远低于Mac,这也是许多学生的考虑因素。