怎么在Oracle中使用sqlplus连接数据库?相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。

方式1(本机): / as sysdba

在oracle服务器,可以直接通过操作系统权限认证,使用sysdba方式登陆,前提是你可以登入服务器,并且拥有此权限。

oracle@e871d42341c0:~$iduid=1000(oracle)gid=1000(dba)groups=1000(dba)oracle@e871d42341c0:~$sqlplus/assysdbaSQL*Plus:Release11.2.0.2.0ProductiononSunOct2108:20:512018Copyright(c)1982,2011,Oracle.Allrightsreserved.Connectedto:OracleDatabase11gExpressEditionRelease11.2.0.2.0-64bitProductionSQL>showuserUSERis"SYS"SQL>

方式2(本机): sqlplus 用户名/密码

在本机除了sysdba,还可以通过用户名和密码的方式登陆进来

oracle@e871d42341c0:~$sqlplussystem/liumiao123SQL*Plus:Release11.2.0.2.0ProductiononSunOct2108:21:272018Copyright(c)1982,2011,Oracle.Allrightsreserved.Connectedto:OracleDatabase11gExpressEditionRelease11.2.0.2.0-64bitProductionSQL>showuserUSERis"SYSTEM"SQL>

方式3: 通过tnsname方式

通过tns设定,保证联通性的情况下使用 sqlplus 用户名/密码@Oracle实例名 的方式进行连接。

确认tns连接通畅

oracle@e871d42341c0:~$tnspingXETNSPingUtilityforLinux:Version11.2.0.2.0-Productionon21-OCT-201810:32:55Copyright(c)1997,2011,Oracle.Allrightsreserved.Usedparameterfiles:UsedTNSNAMESadaptertoresolvethealiasAttemptingtocontact(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=e871d42341c0)(PORT=1521))(CONNECT_DATA=(SERVER=DEDICATED)(SERVICE_NAME=XE)))OK(0msec)oracle@e871d42341c0:~$

确认oracle的监听进程正常启动

oracle@e871d42341c0:~$ps-ef|greplsnr|grep-vgreporacle2710Oct16?00:00:28/u01/app/oracle/product/11.2.0/xe/bin/tnslsnrLISTENER-inheritoracle@e871d42341c0:~$

连接

oracle@e871d42341c0:~$sqlplussystem/liumiao123@XESQL*Plus:Release11.2.0.2.0ProductiononSunOct2110:34:042018Copyright(c)1982,2011,Oracle.Allrightsreserved.Connectedto:OracleDatabase11gExpressEditionRelease11.2.0.2.0-64bitProductionSQL>showuserUSERis"SYSTEM"SQL>

方式4: IP和port的方式定位

还可通过IP和port的方式定位Oracle实例进行连接:sqlplus 用户名/密码@//IP地址或者hostname:端口号/Oracle实例名

#netstat-tunlp|grep1521tcp600:::1521:::*LISTEN-#ipad|grep172.17inet172.17.0.2/16scopeglobaleth0#sqlplussystem/abcd1234@//172.17.0.2:1521/XESQL*Plus:Release11.2.0.2.0ProductiononSunOct2110:37:312018Copyright(c)1982,2011,Oracle.Allrightsreserved.Connectedto:OracleDatabase11gExpressEditionRelease11.2.0.2.0-64bitProductionSQL>

方法5: 使用nolog 和 connect实现连接

准确的来说,这种方式和方式2/方式3/方式4没有本质区别,无非就是用户名/密码以及实例名的信息的写法不同而已,详细如下:

#sqlplus/nologSQL*Plus:Release11.2.0.2.0ProductiononSunOct2111:19:502018Copyright(c)1982,2011,Oracle.Allrightsreserved.SQL>connectsystem/liumiao123Connected.SQL>connectsystem/liumiao123@XEConnected.SQL>connectsystem/liumiao123@//172.17.0.2:1521/XEConnected.SQL>showuserUSERis"SYSTEM"SQL>

看完上述内容,你们掌握怎么在Oracle中使用sqlplus连接数据库的方法了吗?如果还想学到更多技能或想了解更多相关内容,欢迎关注亿速云行业资讯频道,感谢各位的阅读!